You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Python调用sr.Microphone时出现OSError: [Errno -9999]未预期主机错误如何解决

Python语音识别OSError: [Errno -9999] Unanticipated host error 解决方案

该错误由pyaudio调用麦克风设备时的主机侧异常触发,可按以下顺序排查解决:

  • 检查麦克风系统权限
    Windows系统进入「设置>隐私和安全性>麦克风」,开启「允许应用访问麦克风」总开关,同时确认当前运行Python脚本的终端/IDE有麦克风访问权限。
  • 释放麦克风占用
    关闭所有正在占用麦克风的软件,包括通话类、录音类、直播类应用,再重新运行脚本。
  • 显式指定麦克风设备ID
    当设备连接了多个麦克风时,默认调用的设备不可用会触发该错误,先运行以下代码打印所有可用麦克风设备:
    import speech_recognition as sr
    for index, name in enumerate(sr.Microphone.list_microphone_names()):
        print(f"麦克风ID {index}: {name}")
    
    找到目标麦克风对应的ID后,修改原代码的调用逻辑:
    # 将下方device_index参数值替换为你查询到的对应ID
    with sr.Microphone(device_index=1) as source:
    
  • 修复依赖适配问题
    若上述方案无效,大概率是pyaudio版本和当前Python、系统版本不兼容,先卸载原有pyaudio:
    pip uninstall pyaudio
    
    Windows平台推荐使用pipwin安装适配版本:
    pip install pipwin
    pipwin install pyaudio
    
  • 排查虚拟环境问题
    如果在虚拟环境中运行脚本,确认虚拟环境内已正确安装SpeechRecognition和pyaudio依赖,无和全局环境的包冲突问题。

内容的提问来源于stack exchange,提问作者kartik56

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.03 19:06:03