I just want to run a simple python audio code:
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)
but I got the following error:
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
I tried another pyaudio record too, the same error came up. I also tried uninstall pyaudio and install it again using pip install pyaudio, but it did not help. I even uninstalled anaconda3 and reinstall it.nothing changed.
what is the problem?
I had the same problem, and I fix it just by enable/disable the access to the microphone in Setting>Confidentiality>Microphone (on Windows 10)
You need to collect additional information to understand the problem. From 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.
If you have this error on Linux, most likely it is caused by incompatible sample rate you are trying to request from the driver. This value
rate=wf.getframerate()
can be changed to 16000, 44100 and 48000 to test which rate is actually supported.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With