Audio 规范化avi文件中的音频

Audio 规范化avi文件中的音频,audio,ffmpeg,normalization,Audio,Ffmpeg,Normalization,我有一个avi文件,有不同级别的音频。有没有办法在需要时使用ffmpeg适当地减少和增加我的文件的音频?在ffmpeg中,您可以使用音量过滤器来更改曲目的音量。请确保下载该程序的最新版本 找出要应用的增益 首先,您需要分析音频流的最大音量,以查看规范化是否有效果: ffmpeg -i video.avi -af "volumedetect" -f null /dev/null 在Windows上用NUL替换/dev/null。这将输出如下内容: [Parsed_volumedetect_0 @

我有一个avi文件,有不同级别的音频。有没有办法在需要时使用ffmpeg适当地减少和增加我的文件的音频?

在ffmpeg中,您可以使用音量过滤器来更改曲目的音量。请确保下载该程序的最新版本

找出要应用的增益

首先,您需要分析音频流的最大音量,以查看规范化是否有效果:

ffmpeg -i video.avi -af "volumedetect" -f null /dev/null
在Windows上用NUL替换/dev/null。这将输出如下内容:

[Parsed_volumedetect_0 @ 0x7f8ba1c121a0] mean_volume: -16.0 dB
[Parsed_volumedetect_0 @ 0x7f8ba1c121a0] max_volume: -5.0 dB
[Parsed_volumedetect_0 @ 0x7f8ba1c121a0] histogram_0db: 87861
如您所见,我们的最大音量为-5.0 dB,因此我们可以应用5 dB增益。如果得到的值为0 dB,则不需要对音频进行标准化

应用卷过滤器:

现在我们将音量过滤器应用于音频文件。请注意,应用过滤器意味着我们必须重新编码音频流。当然,您想要的音频编解码器取决于原始格式。以下是一些例子:

普通音频文件:只需使用您需要的编码器对文件进行编码:

ffmpeg -i input.wav -af "volume=5dB" output.mp3
当然,你的选择非常广泛

AVI格式:通常在AVI容器中提供MP3音频和视频:

ffmpeg -i video.avi -af "volume=5dB" -c:v copy -c:a libmp3lame -q:a 2 output.avi
这里我们选择了质量等级2。值的范围为0–9,越小越好。有关设置质量的更多信息,请参阅MP3 VBR指南。例如,您还可以使用-b:a 192k设置固定比特率

MP4格式:使用MP4容器,通常可以找到AAC音频。我们可以使用ffmpeg的内置AAC编码器

ffmpeg -i video.mp4 -af "volume=5dB" -c:v copy -c:a aac -strict experimental -b:a 192k output.mp4
在这里,您还可以使用其他AAC编码器。其中一些也支持VBR。有关一些提示,请参阅此答案和AAC编码指南

在上述示例中,将使用-c:v copy复制视频流。如果输入文件中有字幕或多个视频流,请在输出文件名之前使用-map 0选项

作者的信息是:在

中,您可以使用我的脚本

首先,安装最新版本的ffmpeg。然后,通过pip install ffmpeg_normalize安装,然后在AVI文件上运行:

ffmpeg-normalize input.avi -o output.mkv -c:a aac -b:a 192k

在这里,我们选择以192 kBit/s的速度用AAC重新编码音频,并将视频流复制到输出。这将执行,但也可以进行简单的峰值/均方根标准化。

听起来您不想标准化。。。听起来你想要一个同伴。在@Brad OK,Brad上问这个问题谢谢!我不知道这件事!使用
-vn
运行
ffmpeg-i video.avi-af“volumedetec”-f null/dev/null
要快得多,如:
ffmpeg-i video.avi-vn-af“volumedetec”-f null/dev/null
因为
-vn
将完全跳过视频流,只处理音频。