llo*_*gan 14
您可以使用哈希复用器生成解码媒体的校验和。无需转换文件,不受元数据或其他可能导致独立求和工具报告错误差异的因素的影响。
比较 WAV 的示例?手拉手。因为 FLAC 是无损的,所以哈希值应该是一样的:
$ ffmpeg -loglevel error -i input.wav output.flac
$ ffmpeg -loglevel error -i input.wav -map 0 -f hash -
SHA256=c1acb198952f5c341190ffb62eeafe4f10c8f48c67a188e25087471a74eaa957
$ ffmpeg -loglevel error -i output.flac -map 0 -f hash -
SHA256=c1acb198952f5c341190ffb62eeafe4f10c8f48c67a188e25087471a74eaa957
Run Code Online (Sandbox Code Playgroud)
有许多可用的哈希算法可供选择。有些比其他更快。您可以使用该-hash选项选择算法,例如-hash md5。
-map 0在示例中用于将所有流包含到校验和中。没有它,默认的流选择行为将只为每个流类型选择一个流。如果要排除/包含特定流,请使用-map带有流说明符的选项。例如,要排除所有视频使用负映射-map -0:v,或者只包含音频使用-map 0:a,或者只包含第三个音频流使用-map 0:a:2。
所述streamhash复用器类似于散列,但是它会输出每个数据流的散列,例如一个用于视频,一个用于音频。同样,它也将使用默认的流选择行为,除非您添加-map.
如果要比较每个单独的帧/数据包,请使用framehash muxer。
我会尝试将它们都转换为 WAV 并比较它们的校验和。
ffmpeg -i file1.m4a file1.wav
ffmpeg -i file2.flac file2.wav
md5sum file1.wav
md5sum file2.wav
rm file?.wav
Run Code Online (Sandbox Code Playgroud)
比较生成的 md5。如果它们匹配,恭喜!您的文件包含相同的数据。如果它们不匹配,请在此处发布这些命令的输出,我会查看。可能存在比特率差异或其他差异(不应该存在......但可能存在,我不知道。)
请注意,ffmpegs 将生成相对较大的中间文件。
| 归档时间: |
|
| 查看次数: |
6464 次 |
| 最近记录: |