<p>如果要检查您的操作系统和硬件是否支持所需的格式、频道、速率等设置,请执行以下操作:</p>
<pre><code>import pyaudio
soundObj = pyaudio.PyAudio()
# Learn what your OS+Hardware can do
defaultCapability = soundObj.get_default_host_api_info()
print defaultCapability
# See if you can make it do what you want
isSupported = soundObj.is_format_supported(input_format=pyaudio.paInt8, input_channels=1, rate=22050, input_device=0)
print isSupported
</code></pre>
<p><code>isSupported</code>将是<code>True</code>,因为您的系统可以处理您的设置。内存溢出错误可能是由于某些OS+硬件问题造成的。您必须检查默认的主机API实际上可以做什么。您不需要通过“stream类”来“打开”和“关闭”查询<code>soundObj</code>。</p>
<p>看看这个问题:<a href="https://stackoverflow.com/questions/10733903/pyaudio-input-overflowed">PyAudio Input overflowed</a></p>
<p>有关其他pyaudio文档和帮助,请访问:</p>
<p><a href="http://people.csail.mit.edu/hubert/pyaudio/docs/" rel="nofollow noreferrer">http://people.csail.mit.edu/hubert/pyaudio/docs/</a></p>
<h3>编辑:</h3>
<p>原来,“Errno Input overflowed-9981”不是一个小问题:<a href="http://trac.macports.org/ticket/39150" rel="nofollow noreferrer">http://trac.macports.org/ticket/39150</a></p>
<p>我看到你有最新的portaudio版本(19.20111121),但是19.20111121_4声称已经修复了这个错误。看看升级portaudio是否有效。</p>