我已经 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 但仍然没有工作的主要内容,如果未能解决你的问题,请参考以下文章