我已经 pip 安装了 pydub 但仍然没有工作

Posted

技术标签:

【中文标题】我已经 pip 安装了 pydub 但仍然没有工作【英文标题】:I have pip installed pydub but still didn't work 【发布时间】:2020-11-28 12:32:21 【问题描述】:

我pip安装了pydub和SpeechRecognition之后,虽然我从ffmpeg解压了文件,并在对应的目录下指定了文件夹名bin,但还是不能让程序运行成功。我试图找到解决问题的解决方案,但在我从网上清楚地按照步骤操作后,它仍然没有用。请问使用pydub Audiosegment读取.wav文件的好方法是什么?

  Warning (from warnings module):
      File "C:\Python38\lib\site-packages\pydub\utils.py", line 171
        warn("Couldn't find ffmpeg or avconv - defaulting to ffmpeg, but may not work", RuntimeWarning)
    RuntimeWarning: Couldn't find ffmpeg or avconv - defaulting to ffmpeg, but may not work

【问题讨论】:

嗨,欢迎来到 SO。您应该尝试提供更多关于您迄今为止已经完成的工作的详细信息,以便人们有效地提供帮助。你到底把ffmpeg放在哪里了?你检查过它在你的路径上吗? (要检查这一点,您可以尝试从命令行运行 ffmpeg 我通过再次尝试解决了然后没有错误 什么不起作用?请输出? 【参考方案1】:

确保您已安装 ffmpeg http://www.ffmpeg.org/。您可以从这个官方页面获得帮助。

我能想到的其他事情是 ffmpeg 已安装并且在您的路径中,但不在使用 pydub 的进程路径中。

如果是这个原因,可以直接设置ffmpeg的绝对路径,如下图:

import pydub
pydub.AudioSegment.ffmpeg = "/absolute/path/to/ffmpeg"
sound = AudioSegment.from_mp3("test.mp3")

试试这个。

【讨论】:

我试过上面的,但是有FileNotFoundError 我收到NameError: name 'AudioSegment' is not defined 我不知道如何,但是在音频文件目录中复制 ffmpeg 二进制文件对我有用。ffmpeg.org/download.html 你可以从这里下载二进制文件。

以上是关于我已经 pip 安装了 pydub 但仍然没有工作的主要内容,如果未能解决你的问题,请参考以下文章

没有名为 pip.req 的模块

如何在 Ubuntu 18 上为 python 3.7 安装 pip?

Ipython没有可用的readline并且pip install readline错误

Python pydub 截取音频

Python pydub 截取音频

当所有东西都安装好但仍然无法工作时,如何用 LAMP 解决 Wordpress