好吧,这是一个解决方案,不漂亮,但对我有效。
根据我对ulidtko答案的评论,pyaudio不是问题,而是pyaudio应该绑定到的底层PortAudio。
在ubuntu上,portaudio驱动程序与这个包一起安装:sudo apt-get install python-gnuradio-audio-portaudio
你必须已经有了这个,因为你说你的股票ubuntu运行你的代码很好(尽管有些调试消息可以忽略)
如果您查询portaudio模块的位置,在运行enthough的python时会发现以下内容:>>> import pyaudio
>>> pyaudio.pa.__file__
'/opt/epd-7.2-2-rh5-x86_64/lib/python2.7/site-packages/_portaudio.so'
以下是ubuntu的股票:In [1]: import pyaudio
In [2]: pyaudio.pa.__file__
Out[2]: '/usr/lib/pymodules/python2.7/_portaudio.so'
我把热情洋溢的portaudio.so移到一边,换成了一个到portaudio.so系统的链接,现在一切都正常了,包括chaco demo/advanced目录中可爱的频谱分析仪:cd /opt/epd-7.2-2-rh5-x86_64/lib/python2.7/site-packages/
mv _portaudio.so _portaudio.so.originalEPD
ln -s /usr/lib/pymodules/python2.7/_portaudio.so