我是否缺少一个插件可以让我确定音频文件长度内的音量样本?
例如,每秒进行一次采样以获得 dB 与时间戳的关系?
答案1
该ebur128
滤波器提供有关响度建议的信息欧洲标准 R128公制。
滤波器astats
可以提供以下信息(以 dB 为单位):
ffmpeg -i in.mp3 -af astats=metadata=1:reset=1,ametadata=print:key=lavfi.astats.Overall.RMS_level:file=log.txt -f null -
这将产生如下输出:
frame:221 pts:226304 pts_time:4.71467
lavfi.astats.Overall.RMS_level=-67.437152
frame:222 pts:227328 pts_time:4.736
lavfi.astats.Overall.RMS_level=-67.159036
frame:223 pts:228352 pts_time:4.75733
lavfi.astats.Overall.RMS_level=-63.862748
frame:224 pts:229376 pts_time:4.77867
lavfi.astats.Overall.RMS_level=-63.666815
如果时间分辨率太细,则增加重置值,即滤波器采样频率的帧数。对于 1 秒的切片,audio sampling rate/1000
应使用整数近似值。