Python 将 wav 转换为 mp3
Posted
技术标签:
【中文标题】Python 将 wav 转换为 mp3【英文标题】:Python convert wav to mp3 【发布时间】:2012-05-04 11:39:51 【问题描述】:我查看了 pymedia(已停产)、pyglet(很棒但没有转换器)和 audiotools(命令行 cd 翻录),但似乎没有一个合适。
在 Python 2.7 中,你是怎么做的
convert(wavFileLocation, 'mp3')
如果没有python方式,你会如何以python可以调用的方式来做呢? (例如调用跨平台命令行工具...如果存在则返回(名称,pythonCodeForInvocation))
【问题讨论】:
哪个操作系统? Linux 有一些很棒的命令行实用程序,可以让您毫无问题地执行此操作。 Linux =) 但它也需要在 mac 上运行 对于linux,这个解决方案给你答案***.com/a/6578380/496405使用ffmpeg也应该在mac下工作:) 【参考方案1】:我写了一个python library, pydub,它基本上符合Corey's Answer 的建议,尽管它使用ffmpeg 进行转换以支持更多格式。
from pydub import Audiosegment
AudioSegment.from_wav("/input/file.wav").export("/output/file.mp3", format="mp3")
【讨论】:
@Basj 目前没有,没有 - 您需要将 wav 数据保存到磁盘上的文件中,然后再将其转换为 mp3。已经有一些关于支持在蒸汽/迭代器上运行的讨论,但到目前为止还没有取得成果 这对我有用:song.export(mp3_path, format="mp3", codec="libmp3lame")
【参考方案2】:
使用lame(命令行),您可以像这样将wav编码为mp3:
$ lame --preset insane /path/to/file.wav
将创建:
file.wav.mp3
在 Python 中,您可以使用 subprocess 来调用它:
wav = 'myfile.wav'
cmd = 'lame --preset insane %s' % wav
subprocess.call(cmd, shell=True)
【讨论】:
经过数小时尝试在线方法从 WAV-PCM 数据中以mp3
或 ogg
等压缩格式保存音频后,此解决方案是唯一适用于 Windows 的解决方案10.【参考方案3】:
pydub你一定要去,它是一个很好的音频文件相关操作的模块。
注意。记得在使用 pydub 之前安装 ffmpeg。
有关安装 ffmpeg 的帮助,您可以使用此link。
然后要安装 pydub,只需打开命令提示符并键入
pip install pydub
然后将任何文件从 wav 转换为 mp3 只需使用 pydub as
import pydub
sound = pydub.AudioSegment.from_wav("D:/example/apple.wav")
sound.export("D:/example/apple.mp3", format="mp3")
【讨论】:
【参考方案4】:你可以重命名文件扩展名吗? 我认为 os 库会以任何方式帮助你,我会给你例子:
yourfile.wav ==>> yourfile.mp3 或任何用于音频和视频文件的类型
对我来说它有效!
【讨论】:
如果重命名,就只有另一个名字了。但它并没有真正转换。 wav 文件不同于 mp3 文件,即使您将其命名为 mp3 文件也是如此。以上是关于Python 将 wav 转换为 mp3的主要内容,如果未能解决你的问题,请参考以下文章
编写一个简单的 python 脚本,使用 lame 将特定文件夹中的所有 .wav 文件转换为 .mp3