2016/07/07

Ubuntu ALSA 音效卡與 Python的問題 - Google Speech API

當我測試Google Speech API語音輸入時,不斷地收到錯誤訊息。

ALSA lib pcm_dsnoop.c:618:(snd_pcm_dsnoop_open) unable to open slave
ALSA lib pcm.c:2239:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.rear 
ALSA lib pcm.c:2239:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.center_lfe
ALSA lib pcm.c:2239:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.side

找了許多方式,最後安裝jack, jackd1, jackd2等等,解決第一行的問題。
sudo apt-get install python-pyaudio
sudo apt-get install multimedia-jack jack jackd1 jackd2
sudo apt-get purge bluez-alsa
pulseaudio --kill
jack_control start

然後修改/usr/share/alsa/alsa.conf裡跟rear, center_lfe, side有關的,前面全部加上#(http://blog.yjl.im/2012/11/pyaudio-portaudio-and-alsa-messages.html),就解決了後面三行的錯誤。

sudo gedit /usr/share/alsa/alsa.conf

#pcm.rear cards.pcm.rear
#pcm.center_lfe cards.pcm.center_lfe
#pcm.side cards.pcm.side