2017-01-07 21 views
2

私は単純なPythonのオーディオコードを実行します:pyaudio-OSErrorの:[errnoを-9999]予期せぬホストエラー

import pyaudio 
import wave 
import sys 

CHUNK = 1024 
wf = wave.open("4.wav", 'rb') 
# instantiate PyAudio (1) 
p = pyaudio.PyAudio() 
# open stream (2) 
stream = p.open(format=p.get_format_from_width(wf.getsampwidth()), 
       channels=wf.getnchannels(), 
       rate=wf.getframerate(), 
       output=True) 

を私は次のエラーました:私は別のを試してみました

Traceback (most recent call last): 
    File "rec2.py", line 17, in <module> 
    output=True) 
    File "C:\Users\Surena\Anaconda3\lib\site-packages\pyaudio.py", line 750, in open 
    stream = Stream(self, *args, **kwargs) 
    File "C:\Users\Surena\Anaconda3\lib\site-packages\pyaudio.py", line 441, in __init__ 
    self._stream = pa.open(**arguments) 
OSError: [Errno -9999] Unanticipated host error 

をpyaudioのレコードも同じエラーが出ました。私もpyaudioをアンインストールしてpy installを使って再度インストールしようとしましたが、それは役に立たなかった。私はanaconda3をアンインストールして再インストールしました。何も変更されていません。

何が問題ですか?

答えて

0

問題を理解するために追加情報を収集する必要があります。 Portaudio docsから:

PortAudio usually tries to translate error conditions into portable PaError error codes. However if an unexpected error is encountered the paUnanticipatedHostError code may be returned. In this case a further mechanism is provided to query for Host API-specific error information. If PortAudio returns paUnanticipatedHostError you can call Pa_GetLastHostErrorInfo() to retrieve a pointer to a PaHostErrorInfo structure that provides more information, including the Host API that encountered the error, a native API error code and error text.

あなたがLinux上でこのエラーを持っている場合は、最も可能性が高いそれはあなたがドライバから要求しようとしている互換性のないサンプルレートによって引き起こされます。この値は実際にどのレートがサポートされているかをテストするために16000,44100、および48000に変更できます。