Python“SpeechRecognition”不适用于 Mac m1

时间:2021-03-19 21:32:31

标签: python python-3.x

好的。所以在麻烦安装 PyAudio 之后,PyAudio Still not working

仍未找到 PyAudio!我做了 pip3 list 只是为了显示它已安装pip3 saying it's installed

可能是什么问题?

我在 Mac m1 上,我尝试安装 portaudio,我尝试重新安装 pyaudio 和 Speech_recognition 这也是我的代码:

import speech_recognition as sr
#obtain audio from the microphone
r = sr.Recognizer()
with sr.Microphone() as source:
    print("Say something!")
    audio = r.listen(source)
    print(r.recognize_google(audio))

请帮忙。

2 个答案:

答案 0 :(得分:0)

首先,在您的 Mac 上安装 Homebrew。

/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

复制此代码并将其粘贴到您的终端中以下载并安装自制软件,然后使用自制软件安装 PyAudio。

brew install portaudio
sudo brew link portaudio
pip install pyaudio

在终端中运行这些命令,我​​想现在 PyAudio 可以工作了。

我不得不花费至少 3 天的时间来尝试安装 PyAudio。这个方法对我有用。

答案 1 :(得分:0)

在 M1 上,您需要使用最新的 portaudio,see this issue's response

brew uninstall portaudio
brew install portaudio --HEAD
cd $(brew --prefix portaudio)

# Links the headers to /usr/local/include
for f in $PWD/include/*.h; do ln -s $f /usr/local/include/${f##*/}; echo ${f##*/}; done

# Links the static libs to /usr/local/lib
for f in $PWD/lib/*.a; do ln -s $f /usr/local/lib/${f##*/}; echo ${f##*/}; done

# Links the dynamic libs to /usr/local/lib
for f in $PWD/lib/*.dylib; do ln -s $f /usr/local/lib/${f##*/}; echo ${f##*/}; done

pip3 install pyaudio

然后就可以正确安装了!

使用 PyAudio 0.2.11、portaudio (eec7bb7) 在 macOs 11.2.3 和 M1 处理器上测试。

这种方法可以重复使用来链接你安装的 Homebrew 的任何库。这是 ffmpeg、openssl 和许多其他库的常见问题。