【发布时间】:2018-02-08 13:18:40
【问题描述】:
我正在使用 ffmpeg 来计算我的音频文件的音量,但我发现 ffmpeg 为不同的容器返回不同的值(例如 mp3 与 ogg)
这是一个例子。我正在使用来自 Wikimedia Commons 的 ogg 文件,并将其转换为 mp3,然后分析这两个文件的音量。对于 ogg 文件,平均音量为 -3.0 dB,但对于 mp3 文件,我得到 -3.4 dB。当我使用其他文件时,我也会得到不同的最大音量和直方图。
[user@localhost tmp]$ wget https://upload.wikimedia.org/wikipedia/commons/b/b9/Audio_Frequency_tone%2C_Middle_C%2C_C4%2C_261.63hz.ogg -O a.ogg 2> /dev/null
[user@localhost tmp]$ ffmpeg -i a.ogg a.mp3 2> /dev/null
[user@localhost tmp]$ ffmpeg -i a.ogg -af volumedetect tmp.ogg 2>&1 | grep volumedetect
[Parsed_volumedetect_0 @ 0x555f69f3f4a0] n_samples: 88768
[Parsed_volumedetect_0 @ 0x555f69f3f4a0] mean_volume: -3.0 dB
[Parsed_volumedetect_0 @ 0x555f69f3f4a0] max_volume: 0.0 dB
[Parsed_volumedetect_0 @ 0x555f69f3f4a0] histogram_0db: 27541
[user@localhost tmp]$ ffmpeg -i a.mp3 -af volumedetect tmp.mp3 2>&1 | grep volumedetect
[Parsed_volumedetect_0 @ 0x55fd62be4740] n_samples: 88768
[Parsed_volumedetect_0 @ 0x55fd62be4740] mean_volume: -3.4 dB
[Parsed_volumedetect_0 @ 0x55fd62be4740] max_volume: -0.0 dB
[Parsed_volumedetect_0 @ 0x55fd62be4740] histogram_0db: 21340
[user@localhost tmp]$
为什么会出现这个错误?我应该相信哪一个?
【问题讨论】: