pyaudio簡(jiǎn)介
pyaudio庫等曼,使用這個(gè)可以進(jìn)行錄音片排,播放加袋,生成wav文件等等盯蝴。PyAudio 提供了 PortAudio 的 Python 語言版本毅哗,這是一個(gè)跨平臺(tái)的音頻 I/O 庫,使用 PyAudio 你可以在 Python 程序中播放和錄制音頻捧挺。為PoTaTudio提供Python綁定虑绵,跨平臺(tái)音頻I/O庫。使用PyAudio闽烙,您可以輕松地使用Python在各種平臺(tái)上播放和錄制音頻翅睛,例如GNU/Linux、微軟Windows和蘋果Mac OS X/MACOS黑竞。
ALSA
ALSA是Advanced Linux Sound Architecture的縮寫捕发,高級(jí)Linux聲音架構(gòu)的簡(jiǎn)稱,它在Linux操作系統(tǒng)上提供了音頻和MIDI(Musical Instrument Digital Interface,音樂設(shè)備數(shù)字化接口)的支持很魂。
二者的關(guān)系是:pyaudio調(diào)用ALSA實(shí)現(xiàn)錄音功能扎酷。
問題描述
使用 pyaudio 錄制聲音的時(shí)候報(bào)錯(cuò)。直接使用ALSA命令錄音無問題遏匆。
python: src/hostapi/alsa/pa_linux_alsa.c:3636: PaAlsaStreamComponent_BeginPolling: Assertion `ret == self->nfds' failed.
Aborted (core dumped)
原因及處理
pyaudio是依賴于linux的ALSA版本法挨,所以在安裝的時(shí)候是要考慮linux發(fā)行版本的(ubuntu, centos谁榜,debian)。所以只需要在bash執(zhí)行:
apt-get install python-pyaudio -y
即可凡纳。