Luk*_*vis 6 python audio ffmpeg aac replaygain
我有一堆AAC(.m4a
)音频文件需要规范化,并希望找到一种方法来使用一些简单的python脚本来完成它.我发现这个线程上如果有人写了一个超级用户ffmpeg
在python命令行实用工具,它工作得很好,但不知道是否有一些现有的包带pip install
,将是完成这一任务.
小智 12
from pydub import AudioSegment, effects
rawsound = AudioSegment.from_file("./input.m4a", "m4a")
normalizedsound = effects.normalize(rawsound)
normalizedsound.export("./output.wav", format="wav")
Run Code Online (Sandbox Code Playgroud)
前:
后:
您可以使用pydub模块以最少的代码量实现峰值量的标准化.安装pydub
使用
pip install pydub
Run Code Online (Sandbox Code Playgroud)
来自这里的灵感
您可以测量rms pydub
,其中pms是平均幅度的度量,pydub提供为audio_segment.rms.它还提供了一种将值转换为dBFS的便捷方法(audio_segment.dBFS)
如果您希望音频文件具有相同的平均幅度,基本上您可以选择平均幅度(在下面的示例中以dBFS,-20为单位),并根据需要进行调整:
from pydub import AudioSegment
def match_target_amplitude(sound, target_dBFS):
change_in_dBFS = target_dBFS - sound.dBFS
return sound.apply_gain(change_in_dBFS)
sound = AudioSegment.from_file("yourAudio.m4a", "m4a")
normalized_sound = match_target_amplitude(sound, -20.0)
normalized_sound.export("nomrmalizedAudio.m4a", format="mp4")
Run Code Online (Sandbox Code Playgroud)