【发布时间】:2013-06-13 15:01:43
【问题描述】:
我有一个系统,其中视频文件被摄取,然后启动多个 CPU 密集型任务。由于这些任务的计算量很大,如果文件已经被处理,我想跳过处理它。
视频来自各种来源,因此文件名等不是可行的选择。
如果我使用图片,我会比较 MD5 哈希,但对于 5GB - 40GB 的视频,这可能需要很长时间来计算。
为了比较我正在测试此方法的 2 个视频:
- 检查相关元数据匹配项
- 使用 ffmpeg / ffprobe 检查文件长度
- 使用 ffmpeg 以 100 个预定义时间戳 [1-100] 提取帧
- 为每个帧创建 MD5 哈希
- 比较 MD5 哈希以检查是否匹配
有没有人知道更有效的方法?还是解决问题的更好方法?
【问题讨论】:
-
散列您的文件,并跟踪散列。这是一个示例:stackoverflow.com/questions/304268/…