为啥在导入 AudioSegment 时出现错误?

Posted

技术标签:

【中文标题】为啥在导入 AudioSegment 时出现错误?【英文标题】:why am i getting error when importing AudioSegment?为什么在导入 AudioSegment 时出现错误? 【发布时间】:2017-04-02 14:42:07 【问题描述】:

我正在尝试使用 pydub,但是当我使用 Audiosegment 将它导入 python 时,它会给我一个错误,说它无法识别它。 我尝试使用 pip install 和在线搜索。 有什么帮助吗?? 我正在使用 python 2.7

from pydub import AudioSegment

【问题讨论】:

尝试从这里安装它:pypi.python.org/pypi/pydub#downloads 你能发布整个错误转储吗? ,也没有安装成功。 错误我得到:**libpng 警告:sBIT:无效。 ** 我的代码: 从 AudioSegment 导入 pydub sound1 = AudioSegment.from_wave('chill.wav') sound2 = AudioSegment.from_wave('p1.wav') sound1= sound1[:] + 6 sound2=sound2+8 #louder combine = sound1.overlay(sound2) combined.export("pydubtry.wav", format='wav') 非常感谢您的帮助 :) @Anil_M。我试图安装,但它没有工作.. @Liam 安装失败.. 刚刚打开了一个 zip 压缩程序。有什么建议吗?? 【参考方案1】:

我也遇到了同样的问题。这是由于 ffmpeg 配置不正确。我已经从官方网站https://www.ffmpeg.org/download.html 下载了最新的 ffmpeg,并设置了适合我的类路径

【讨论】:

你能详细说明一下类路径的原因吗?你的意思是下载ffmpeg并将路径添加到环境变量或者是否有任何安装ffmpeg的程序 没关系,它奏效了。将 ffmpeg\bin 添加到系统路径有效。 链接失效了! @user3251696 表示将“../bin”路径添加到控制面板中的环境变量路径。 *注意:此解决方案适用于 Windows 用户。【参考方案2】:

如果您使用的是 Linux,试试这个sudo apt install ffmpeg 将解决问题。

希望对你有帮助!!!

【讨论】:

【参考方案3】:

我遇到了同样的错误,因为我的 MAC 上没有安装 ffmpeg。使用brew install ffmpeg 安装它并解决了问题。

【讨论】:

【参考方案4】:

你可以卸载并尝试使用 pip install pydub 安装。还要确保pydub 路径在PYTHONPATH 或系统PATH 中。你用的是什么OS

找出 pydub 的安装位置。 我在C:\Python27\Lib\site-packages\pydub。 打开命令提示符并输入 ,set PATH=c:\Python27\Scripts;c:\Python27\Lib;C:\Python27\Lib\sit‌​e-packages\pydub;%PA‌​TH%

然后尝试在cmd 屏幕上运行pydub 程序。成功后,您需要将pydub 路径添加到系统环境变量部分。

还有错误:

RuntimeWarning: Couldn't find ffmpeg or avconv - defaulting to ffmpeg, but may not work warn("Couldn't find ffmpeg or avconv - defaulting to ffmpeg, but may not work", RuntimeWarning)

看起来pydub 找不到ffmpegavconv。您可能需要安装或添加系统路径。 如果它有效,我会让它成为现实。反正只是警告

【讨论】:

【参考方案5】:

尝试了@paolov 的解决方案 - 直到我重新启动 pycharm / python 编辑器才起作用......

另外 - 请参阅 Python convert mp3 to wav with Pydub 以获取不需要 pydub(但仍需要 ffmpeg)的快速替代方案...涉及导入子流程,感谢 @Roland Smith

PS - 另外,请参阅http://blog.gregzaal.com/how-to-install-ffmpeg-on-windows/ 以了解如何添加到 PATH - 在 ffmpeg 的上下文中)。我添加到我的 PyCharm/Python 项目中的文件夹中,而不是直接添加到 C 驱动器上...两者都应该可以工作,但正如我所说,尝试重新启动编辑器,并在添加到 PATH 后检查 cmd line > ffmpeg -codecs ...

【讨论】:

【参考方案6】:

对我有用的是:

    Google 以获取合适的 ffmpeg 下载。我需要一个 Windows 64 位软件包,我从 https://ffmpeg.zeranoe.com/builds/ 已打开下载的 zip 文件。然后将 bin 文件夹中的文件放入 pydub 文件夹中。

由于我之前已经将 pydub 放在系统 PATH 中,因此无需更新系统 PATH。这些文件可以放在其他地方,只要更新 PATH 就可以正常工作。

【讨论】:

【参考方案7】:

假设您正确安装了 ffmpeg,请确保您重新启动 python 环境,以便您的路径包含 ffmpeg。

我必须打开一个新终端并重新启动我的笔记本才能使其正常工作。

【讨论】:

以上是关于为啥在导入 AudioSegment 时出现错误?的主要内容,如果未能解决你的问题,请参考以下文章

为啥在 sagemaker 笔记本中导入 SparkContext 库时出现错误?

为啥我在运行 maven install 时出现“包不存在”错误?

为啥在尝试安装 FiPy 时出现错误?

为啥在定义全局名称时出现错误?

为啥在运行 jupyter notebook 时出现错误?

为啥在访问二级指针时出现分段错误错误? C语言