用 AutoHotkey v2 GUI 打造独立媒体转换器 .EXE
有经验的开发者可以快速构建一个无需外部依赖的自包含 Windows .EXE(支持 Windows 7–11)。借助 AutoHotkey v2 和 AI 工具,该方案可递归处理照片和视频,利用 ffmpeg 和 ImageMagick 实现高效压缩。整个代码库不足 1,500 行,生成的二进制文件仅约 500 KB。其逻辑与命令行脚本一致:通过 winget 下载所需工具包,使用 GPU 加速将媒体重新编码为现代格式(HEVC、AVC、JPEG)。
配置:调研与技术栈选择
调研中发现,部分旧工具不支持 HEIC/HEIF 和 WEBM 格式。推荐使用 Perplexity 进行研究——它能清晰整合信息,无广告干扰,也无冗余链接。
任务:批量处理 AI 生成内容的压缩包(源文件大小 7–10 MB,压缩后仅 2 MB 且无质量损失)。需支持递归遍历文件夹,并兼容来自相机和智能手机的混合格式。
AI 建议采用 AutoHotkey v2 作为最优技术栈:依赖极少,原生支持 .EXE 编译,内置图形界面功能。备选方案包括 AutoIt 和 PureBasic。
需求规格说明
通过语音或文字向 AI 描述任务:‘适用于 Windows 7–11 的极简 GUI。递归扫描文件夹,使用 ffmpeg/ImageMagick 压缩媒体。无需 C++ 或 .NET 框架。’ 接收澄清问题并最终确认完整需求。
系统提示以确保输出稳定:
当我编写代码时,始终以代码块形式展示。每次修改标注为:'迭代 N. 描述'。在代码中递增版本号(如 v2.2)。若修改超过一行,请提供完整代码;小改动则单独列出。
不要使用加粗、斜体或表情符号,除非特别说明。
此规则可防止在 10–15 次迭代后(最多 1,000 行代码)出现幻觉。
MVP 开发阶段
开启新对话,基于需求和技术栈分配 3–5 项任务:文件夹遍历逻辑、ffmpeg 调用、进度条实现。
- 安装依赖项(
winget install ffmpeg imagemagick)。 - 支持子文件夹的递归扫描。
- 压缩设置:JPEG/AVC/HEVC 格式,支持 GPU 加速选项。
- 进度日志记录。
- 错误处理(不支持的格式)。
MVP 可在当天傍晚完成。随后集中优化图形界面。
GUI:从原型到发布
使用 Gemini 或 Nano Banana 生成原型图:‘类似 2000 年代 Nero Burning ROM 的界面——复古风格,带按钮和滑块’。
AutoHotkey v2 小技巧:
- 用颜色区域替代系统按钮(自定义点击逻辑)。
- 在模态窗口上构建自定义滑块。
- 使用原生控件实现菜单和进度条。
在提示词中加入 Dribbble 或 Freepik 的参考图。微调时,Photoshop 优于聊天界面(对齐、间距更精准)。
迭代流程:
- 第 1–5 次:基础布局。
- 第 6–10 次:样式美化(VB6 怀旧风)。
- 第 11 次起:添加细节功能(菜单对称性等)。
调试与优化
手动测试各种组合:压缩选项、路径设置、格式选择。通过聊天进行自动化测试效率低下(慢 3–5 倍)。
常见问题:
- 符号链接遍历异常。
- 后台运行时 GPU 访问失败。
- 大型压缩包(>100 GB)内存泄漏。
优化措施:
- 异步更新进度条。
- 支持暂停与恢复。
- 日志输出自动保存至文件。
第三晚专门用于处理边缘情况。
关键收获
- AutoHotkey v2 可直接编译为 .EXE,无需运行时环境(仅 500 KB)。
- 递归处理:照片(HEIC → JPEG)、视频(WEBM → HEVC)。
- GPU 压缩使压缩包体积缩小 3–5 倍。
- AI 协作最多可持续 10–15 次迭代而不退化。
- 仅使用原生 GUI 控件,无需第三方库,兼容 Windows 7 及以上系统。
— Editorial Team
暂无评论。