Python将wav转换为mp3

xxj*_*jnn 17 python audio mp3 wav

我看过pymedia(已停产),pyglet(很棒,但没有转换器)和audiotools(命令行cd翻录),似乎没有一个合适.

在Python 2.7中,您如何做

convert(wavFileLocation, 'mp3')
Run Code Online (Sandbox Code Playgroud)

如果没有python方式,你会怎么做python可以调用的方式?(例如,调用跨平台命令行工具...如果存在返回(name,pythonCodeForInvocation))

Jia*_*aro 21

我写了一个python库,pydub,它基本上做了Corey的答案建议,虽然它使用ffmpeg进行转换以支持更多格式.

from pydub import AudioSegment

AudioSegment.from_wav("/input/file.wav").export("/output/file.mp3", format="mp3")
Run Code Online (Sandbox Code Playgroud)


Cor*_*erg 14

使用lame(命令行),你可以将wav编码为mp3,如下所示:

$ lame --preset insane /path/to/file.wav
Run Code Online (Sandbox Code Playgroud)

这将创建:

file.wav.mp3
Run Code Online (Sandbox Code Playgroud)

在Python中,您可以使用子进程来调用它:

wav = 'myfile.wav'
cmd = 'lame --preset insane %s' % wav
subprocess.call(cmd, shell=True)
Run Code Online (Sandbox Code Playgroud)


Abh*_*ore 7

你必须去pydub,它是一个很好的与音频文件相关的操作模块。

笔记。在使用 pydub 之前,请记住安装 ffmpeg。

有关安装ffmpeg 的帮助,您可以使用此链接

然后安装pydub只需打开你的命令提示符并输入

pip install pydub
Run Code Online (Sandbox Code Playgroud)

然后将任何文件从 wav 转换为 mp3 只需使用pydub作为

import pydub
sound = pydub.AudioSegment.from_wav("D:/example/apple.wav")
sound.export("D:/example/apple.mp3", format="mp3")
Run Code Online (Sandbox Code Playgroud)