首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使用pydub库从mp3文件中使用G.711 a生成wav?

如何使用pydub库从mp3文件中使用G.711 a生成wav?
EN

Stack Overflow用户
提问于 2013-11-30 13:19:33
回答 1查看 1.5K关注 0票数 1

我正在尝试使用G. 711阿拉维库从一个mp3文件中生成一个带有派杜布压缩的wav文件。wav文件正在生成,但不会重放到频率为8 kHz。我试过以下代码:

代码语言:javascript
复制
from_path = '/home/nikhil/Music/m1.mp3' #this is a mp3 file
to_path = '/home/nikhil/Music/m1.wav' #resulted file
from_format = 'mp3'
to_format = 'wav'
params = ["-acodec", "pcm_alaw", "-ar", "8000"]
AudioSegment.from_file(from_path, from_format).export(to_path, format=to_format, parameters=params)

有人能帮我吗?

EN

回答 1

Stack Overflow用户

发布于 2013-12-02 19:56:04

我查看了导出方法中的代码,并意识到当输出格式为"wav"时,不使用ffmpeg。

由于wav是在内部使用的,它只是将音频的内存中版本直接写入磁盘(这样做是为了使ffmpeg成为一个可选的依赖项,如果您只需要wav支持,则不需要安装它)。

我有两个想法可以让你避开这个问题:

  1. 使用不同格式的kwarg,比如"pcm“。我不确定这是否有效,而且在我目前的机器上也没有测试,但绝对值得一试。 from_path =‘home/nikhil/Music/m1.mp3’#这是一个mp3文件to_path =‘home/nikhil/Music/m1.wav’#导致的文件from_format = 'mp3‘to_format = 'pcm’params = "-acodec","pcm_alaw","-ar","8000“AudioSegment.from_file(from_path,from_format).export(to_path,format=to_format,parameters=params)
  2. 使用pydub的内部机制重采样到8千赫:同样,我现在不能测试这个. from_path =‘home/nikhil/Music/m1.mp3’#这是一个mp3文件to_path = '/home/nikhil/Music/m1.wav‘#结果文件seg = AudioSegment.from_mp3(from_path) seg = seg.set_frame_rate(8000) seg.export(to_path,format="wav")
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/20300725

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档