🔗 GitHub 开源仓库:ZGQ-inc/drivevideosplice 🔗 Release v1.0 下载页
造轮子时刻。自己写了个专治行车记录仪智障设定的批量视频拼接工具。
开发痛点与初衷: 家里车子用的是小米生态链旗下的那个“70迈行车记录仪”。这玩意有个极其反人类的设定:强制每隔 3 分钟就自动切断并新建一个视频文件保存。 如果你想回顾一段半小时的沿途风景,或者找关键证据,你面对的将是十几段碎得像渣一样的文件,查看体验极其抽象折磨。 而且我在整个安卓平台上竟然找不到一款现成好用、不带水印的无损拼接 App(这类软件不是文件顺序排列错乱,就是需要重新花几个小时去重编码转码,逻辑极其繁琐)。
所以,我直接用底层大杀器 FFmpeg 配合 Python 封装写了个极其简单粗暴的批量拼接应用。 (理论上也同样适用于市面上其他品牌行车记录仪或运动相机的切片文件,但暂未进行跨品牌测试,测试用样例素材在仓库的 gen_for_test 目录下。)

⚠️ 已知技术缺陷预警: 由于我在底层只调用了
-c copy(Stream Copy 流复制) 的命令,而不是重新对视频流进行重转码渲染,这样能把合并速度提升到极致秒级。 但是,如果你的原始视频文件因为某些物理原因导致底层容器丢包(比如行车记录仪写入那张廉价杂牌 TF 卡时发生了 IO 瞬断坏道——是的,我自己就碰到了这个问题),那么软件在合并到这个坏包节点时会直接底层报错中止。 像 Premiere 或者主流播放器因为带有强大的软解容错机制所以能强行播过去,但要求一个轻量的秒级脚本去纠错这太不现实了,效率也会跌落谷底。所以,如果报错,那绝对是那台垃圾行车记录仪自身写入的问题,而不是软件的锅。