作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我是第一次使用这个库,所以我不确定这是一个错误还是我没有正确地做某事。
我想将文件导出为 mp3,加载工作完美:
wav=AudioSegment.from_wav(Path) #If I execute only this line, there are no errors.
但是当我尝试将我的文件导出为 mp3 时:
wav.export(r"WavOut.mp3",format="mp3")
它抛出以下错误:
WindowsError: [错误 2] 系统找不到指定的文件
完整错误报告:http://pastebin.com/3CpZBkEK
我相信我使用的是正确的语法。它创建 mp3 输出文件但绝对是空的,并且输入路径是正确的,因为:
os.startfile(Path) #Will work
此外,我在 windows 路径中将 ffmpeg 注册为:
;c:\ffmpeg\bin #It is currently callable from any cmd prompt in windows.
什么会失败?谢谢!
经过多次测试,我发现是编码问题。如果我将输出设置为“wav”,它就可以工作。但我真的不知道我应该如何安装一个 mp3 编码器才能让它与 pydub 一起工作,所以我改变了问题来问这个问题,因为它是真正的问题。 ffmpeg 已安装,所以我不知道还能做什么:\
最佳答案
我认为它无法找到 ffmpeg 二进制文件。 Python 内置了 wave 支持,因此 pydub 不需要 ffmpeg 来打开/关闭/修改 wave 文件。
在使用之前尝试分配 ffmpeg 二进制文件的位置:
from pydub import AudioSegment
AudioSegment.converter = "c:\ffmpeg\bin\ffmpeg.exe"
wav = AudioSegment.from_wav(Path) #If I execute only this line, there are no errors.
wav.export(r"WavOut.mp3",format="mp3")
编辑:我们将属性名称从 AudioSegment.ffmpeg
更改为 AudioSegment.converter
因为我们现在同时支持 ffmpeg和 avconv。
请在分配给此属性之前检查您的版本使用的是哪个(它是从 0.9.0 版本开始的“转换器”)
关于python - 使用 pydub 导出时出错 - 如何为 pydub 安装 mp3 编解码器?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20443850/
我是一名优秀的程序员,十分优秀!