当我在Python中使用语音识别时,我可以控制开始和结束时间吗? [英] Can I control the start & finish time when I use speech-recognition in python?
本文介绍了当我在Python中使用语音识别时,我可以控制开始和结束时间吗?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我进行了如下编码。不过,我想知道有没有办法控制录制时长。事实上,我想有一个程序,其中有一个开始和完成按钮,这样我就可以控制录制。我知道这是一个基本的问题。但我真的需要解决这个问题。帮帮我~我应该如何补偿这个问题?
import speech_recognition as sr
r = sr.Recognizer()
mic = sr.Microphone()
show = input("enter text: ")
print("Read texta")
with mic as source:
audio = r.listen(source)
print("recordeda")
print('Result: ', r.recognize_google(audio, language='ko-KR'))
推荐答案
根据recognizer_instance.listen
文档,它是一个阻塞调用(即程序在完成之前不会继续),停止录制的唯一方法是不说话recognizer_instance.pause_threshold
(0.8s by default)。
recognizer_instance.listen_in_background
。它仍然使用相同的信号识别逻辑,但会一直循环记录短语,直到您告诉它停止。这意味着信号识别逻辑被认为对于所有实际目的都足够可靠。如果在您的情况下失败,您可能需要调整首字母energy_threshold
。
FWIW,您可以手动录制with raw pyaudio
,然后使用生成的文件或原始数据构建AudioData
。
这篇关于当我在Python中使用语音识别时,我可以控制开始和结束时间吗?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文