我目前正在编写一个脚本来帮助我批量转换和
规范化音频文件(wma 到 mp3)
在寻找有用的工具时,我很幸运地偶然发现了 FFMPEG-Normalize!
我的脚本是从 Python 运行的,我正在通过子进程调用 FFMPEG。
我无法让 FFMPEG-Normalize 输出 Mp3 文件 - 因此我是
进行另一个 FFMPEG 调用以转换生成的 wav 文件。
你知道如何使 FFMPEG 标准化也转换为 mp3 吗?
第二个问题是我的文件夹中只有部分文件正在
处理,我不明白为什么。在路径中的 8 个文件中,
有时它们都被处理了,有时只有 3 个或 5 个……非常
诡异的!
这是我的代码:
for file in sorted(os.listdir(pathdes)):
os.chdir(pathdes)
subprocess.call(['ffmpeg-normalize','-m','-l','-0.1',file])
file = 'normalized-' + file
file = file[:-3] + "wav"
file2 = file[:-3] + "mp3"
os.chdir(pathdes)
subprocess.call(['ffmpeg', '-i', file,'-b:a','320k', file2])
我了解 FFMPEG 规范化是用 Python 编写的,也许有
除了 subprocess 之外的另一种调用方式?
我错过了什么吗? (我知道我是 !)
太感谢了 !
最佳答案
ffmpeg-normalize
工具还允许您设置音频编码器,使用 -a
, --acodec <acodec>
选项。
例如,要 EBU R128 规范化一堆 WAV 文件并将它们编码为 MP3 与 libmp3lame
:
ffmpeg-normalize --ebu --acodec libmp3lame --extra-options "-b:a 192k" *.wav
请注意,对于 MP3,您可以使用 MP3Gain无需重新编码文件即可更改音量。
关于audio - 批量 FFMPEG-Normalize 并通过 Python 转换?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47187643/