odboy
|
cf8d991974
|
fix: EXIF解析越界与转正丢文件、.psb归类、日志接管panic恢复
|
2025-05-25 21:01:16 +08:00 |
|
odboy
|
a2cded251a
|
feat: 图片明暗分类改为子目录命名(图片_横屏_1080P/bright_20)
|
2025-05-22 21:06:06 +08:00 |
|
odboy
|
66faed75a2
|
feat: 增加 EXIF 旋转图片自动转正
- 解析 JPEG EXIF Orientation,方向 5/6/7/8 的竖拍横存图不再误入横屏目录
- 配置 ffmpeg 时用 ffmpeg 物理转正像素并保留原 EXIF;无 ffmpeg 时按显示方向归类
- 新增 ffmpeg.path / organize.rotateImages 配置项
- 补充 EXIF 解析与旋转幂等测试
|
2025-05-19 21:15:58 +08:00 |
|
odboy
|
8979c744a8
|
refactor: 全面重构代码并加白话注释,移动全局并行,去掉去向/重复记录
- 重构后端与前端,全程大白话注释(不懂程序也能看懂)
- 移动阶段改为全局并行(MoveAll,工人数=CPU核心数)
- 去掉记录每个文件搬去哪了(删除去向回填,解决写库卡顿)
- 去掉重复文件标记与统计:重复判定改为 MD5+路径都相同才算,重复则原地忽略不移动;MD5 相同但路径不同仍照常搬
- 媒体库去掉归类目录列,看板去掉重复/归类分布统计
|
2025-05-11 21:05:35 +08:00 |
|
odboy
|
f915a9b1ac
|
feat: 扫描整理并行化、WebSocket 实时进度与统计看板
- 移动阶段并行处理文件,按原子计数上报累计进度
- 扫描遍历阶段实时上报已发现文件数,界面不再卡在 0/0
- 新增 /api/scan/ws WebSocket 实时推送扫描状态;前端断线指数退避自动重连,并以低频轮询兜底
- 新增统计看板与媒体库筛选/排序,目录选择器路径不存在时回退到最近可用父目录
- 存放目录支持自定义并持久化,默认输出到 KMP已整理
|
2025-05-08 21:16:20 +08:00 |
|
odboy
|
36d7ecced8
|
upd
|
2025-05-05 21:13:46 +08:00 |
|
odboy
|
14056ba7b9
|
feat(scan): 添加自定义扫描目录选择功能
- 在扫描页面添加目录输入框和选择按钮
- 实现文件系统浏览器,支持Windows盘符和目录浏览
- 添加扫描目录参数传递到后端服务
- 显示当前扫描目录路径信息
- 修复前端空数组访问错误
- 更新文档说明扫描功能变化
|
2025-04-24 21:05:00 +08:00 |
|
odboy
|
e053b378fb
|
feat: 增加 Web 管理界面,扫描整理改为页面点击触发
- main.go 改为 Web 服务入口(Gin + 内嵌前端 dist + 自动打开浏览器)
- internal/service: 新增扫描整理后台任务,支持状态机与实时日志捕获
- internal/api: 新增统一响应、媒体列表/统计、扫描开始/状态接口
- internal/store: 追加 ListMedia/CountMedia/Stats 查询,MediaInfo 补 JSON tag
- internal/config: application.properties 配置加载(端口/数据库/自动开浏览器)
- frontend: Vue2 + ElementUI + Vite 工程,含扫描整理/统计看板/媒体库三页
- build.sh 整合前端构建,输出单一 kenaito-media-picker.exe
|
2025-04-21 21:08:02 +08:00 |
|
odboy
|
7e49accf2b
|
fix: BMP头解析、移动语义与空文件处理
- probe/bmp: 兼容 BITMAPCOREHEADER(12B) 等 info 头变体,按 Size 字段分支解析
- mover: moveOne 返回三态结果,复制成功但删源失败时明确告警,不再静默视为完全成功
- scanner: 跳过 0 字节文件,避免空文件进入 MIME/ffprobe 探测
|
2025-04-15 21:05:26 +08:00 |
|
odboy
|
a667f7fa35
|
fix: 重复文件归类、图片探测与明暗分析健壮性
- organize/store: 按 MD5 去重,重复图片/视频/音频统一移入「重复文件」目录,不再覆盖已有记录
- probe/image: webp/bmp/psd/psb 专用解码失败后走 ffprobe 兜底,与通用路径一致
- probe/brightness: 大图内存缩放为缩略图再分析明暗,超4000万像素跳过分析防OOM
- README: 补充重复文件目录说明,修正 Go 版本为 1.25.0
|
2025-04-12 21:02:16 +08:00 |
|
odboy
|
39fe02b424
|
fix: 未知 MIME 文件不再被移入忽略目录
- scanner: 新增 IsExplicitMediaMime 判断明确媒体 MIME
- organize: 仅 video/audio MIME 文件移入异常/忽略目录
- octet-stream/空 MIME 且 ffprobe 无法确认的文件原地忽略,不移动
|
2025-04-10 21:05:14 +08:00 |
|
odboy
|
c266da2858
|
fix: 修复扫描/探测/移动三个健壮性问题
- scanner: filepath.Ext 替代 path.Ext,修复 Windows 点号目录名扩展名解析错误
- scanner: Walk 遇不可访问路径仅告警跳过,不再整体中止扫描
- probe: ffprobe 探测增加 30s 超时,避免损坏文件卡死程序
- mover: copyFile 失败时清理半截目标文件,消除双重 Close
- 新增代码审查报告 bug20260814.md
|
2025-04-07 21:00:37 +08:00 |
|
odboy
|
b812abd345
|
refactor(probe): 统一内嵌 ffprobe 为 Windows 版本
- 删除 macOS 和非 Windows 平台的内嵌 ffprobe 实现
- 移除 build.sh 中针对不同操作系统的构建逻辑
- 更新 README.md 中关于多平台 ffprobe 内嵌的说明
- 修改 SkipNames 列表,移除对 ffprobe_mac 的跳过配置
- 将内嵌的 ffprobe 统一为 Windows 版本 (ffprobe.exe)
|
2025-04-04 21:08:45 +08:00 |
|
odboy
|
13bb195e1d
|
refactor(classify): 重构图片明暗分类逻辑
- 移除固定的明暗阈值等级数组,改用动态分档机制
- 引入 neutralMargin 常量,当两分差幅小于 0.15 时视为中性图
- 修改 BrightnessName 函数,实现三分法分类:bright_N、dark_N、mid
- 新增 brightnessTier 辅助函数,将占比分档到最接近的 10%
- 完全透明的像素(alpha=0)不再参与明暗统计计算
- 更新错误提示信息,明暗分析失败时按中性 mid 归类
- 调整 README 文档描述,同步更新明暗分类规则说明
|
2025-04-01 21:07:48 +08:00 |
|
odboy
|
99b9460bcd
|
feat(classify): 添加图片明暗分类功能
- 修改 ImageDir 函数增加 darkScore 和 lightScore 参数
- 实现 BrightnessName 函数计算明暗等级
- 定义暗色和亮色阈值等级数组
- 在 organize.go 中集成图片明暗分析逻辑
- 使用 ITU-R BT.601 公式计算像素亮度
- 为大图实现自动采样加速分析
- 更新 README.md 文档说明明暗分类算法
- 在目录结构中体现明暗等级命名规则
|
2025-03-29 21:11:14 +08:00 |
|
odboy
|
4da4b738e6
|
refactor: 按模块重构项目结构
- 删除 vars 全局状态,按职责拆分 internal/ 包:scanner/probe/classify/organize/mover/store/digest
- 数据驱动归类规则替代图片/视频重复分支,store 改为结构体实例
- build.sh 按系统类型编译:Windows 用 upx 压缩,macOS/Linux 不压缩
- 忽略目录拆分:图片_已忽略 / 视频_已忽略
- 输出构建产物加入 .gitignore
|
2025-03-26 21:08:12 +08:00 |
|