2024-05-16 13:23:01 发布
网友
我有一大堆AAC(.m4a)音频文件需要规范化,我希望能找到一种方法,使用一些软件包,用一个简单的python脚本来实现这一点
.m4a
我在superuser上找到了this thread,有人在那里用python编写了一个ffmpeg命令行实用程序,它工作得很好,但我想知道是否有一些当前可用的python包带有pip install可以完成这项任务
ffmpeg
pip install
from pydub import AudioSegment, effects rawsound = AudioSegment.from_file("./input.m4a", "m4a") normalizedsound = effects.normalize(rawsound) normalizedsound.export("./output.wav", format="wav")
之前:
之后:
您可以使用pydub模块以最少的代码量实现峰值容量的规范化。 使用安装pydub
pydub
pip install pydub
来自here的启示
您可以在pydub中测量rms,这是平均振幅的度量,pydub将其作为audio_segment.rms提供。它还提供了一种将值转换为dBFS(audio_segment.dBFS)的方便方法
如果希望音频文件具有相同的平均振幅,基本上可以选择一个平均振幅(在下例中为-20 dBFS),并根据需要进行调整:
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")
之前:
之后:
您可以使用pydub模块以最少的代码量实现峰值容量的规范化。 使用安装
pydub
来自here的启示
您可以在
pydub
中测量rms,这是平均振幅的度量,pydub将其作为audio_segment.rms提供。它还提供了一种将值转换为dBFS(audio_segment.dBFS)的方便方法如果希望音频文件具有相同的平均振幅,基本上可以选择一个平均振幅(在下例中为-20 dBFS),并根据需要进行调整:
相关问题 更多 >
编程相关推荐