Python speech_recognition没有检测到麦克风的音频

时间:2016-10-02 01:24:04

标签: python audio raspberry-pi speech-recognition microphone

我目前正在研究通过语音命令构建自己的家庭自动化系统。我已经了解了SpeechRecognition包,并决定这将是我与系统交互的方式。

在阅读了教程和github的参考页面之后,还查看了示例脚本,我提出了以下代码:

import speech_recognition as sr
import pyaudio

r=sr.Recognizer()

    #Microphone(device_index=i, sample_rate=48000)
with sr.Microphone( sample_rate=48000) as source:
    print("Say Something!")
    audio=r.listen(source)

with open("microphone-results.wav", "wb") as f:
    f.write(audio.get_wav_data())

在测试我的代码时,它会运行并显示“Say Something!”但无论我对我的麦克风说什么,或者代码运行了多长时间都没有发生,并且没有创建“microphone-results.wav”文件。

我知道我的麦克风有效,因为我可以使用命令 arecord -D plughw:1,0 test.wav 进行测试,并使用 aplay test.wav

我正在使用Raspberry Pi 3和Rasbian的最新更新。

1 个答案:

答案 0 :(得分:0)

我也有同样的问题,但我终于找到解决方案,这里是用于检测一个频率声音的代码行 在[print(“Say something”)之后粘贴

r.pause_threshold=1
r.adjust_for_ambient_noise(source,duration=1) 

then you will get the message whatever you speak after 5 to 10 seconds