如何创建媒体文件的稳定校验和?

yaw*_*iek 6 media checksum sha1 ffmpeg mplayer

如何在没有元数据的情况下创建仅媒体数据的校验和,以获得媒体文件的稳定标识.优选地是具有支持多种格式的库的跨平台方法.例如vlc,ffmpeg或mplayer.

(媒体文件应该是普通格式的音频和视频,图像也很好)

miv*_*ivk 5

好吧,可能已经晚了 11 年才得到答案,但万一像我这样的其他人偶然发现了这个……

ffmpeg可以输出各个流的校验和。因此,相同的音频或视频将输出相同的校验和,与其容器格式或元数据无关。

文件 的视频轨道示例$filename,将输出写入$filename.md5

ffmpeg -i "$filename" -map 0:v -codec copy -f md5 "$filename.md5"
Run Code Online (Sandbox Code Playgroud)

对于音频,请使用-map 0:a.

要输出到 STDOUT,请使用-. 例如:

ffmpeg -i "$filename" -map 0:a -codec copy -hide_banner -loglevel warning -f md5 -
Run Code Online (Sandbox Code Playgroud)