提问人:Pedro Borghi 提问时间:10/26/2023 更新时间:10/26/2023 访问量:24
在流式识别 python 代码中使用生成器
Working with generators in a streaming recognition python code
问:
我很难理解与块生成器和转录过程相关的 python 脚本摘录的动态。
以下是完整代码:https://cloud.google.com/speech-to-text/docs/samples/speech-transcribe-streaming-mic#code-sample
而且我没有得到脚本的这一部分:
with MicrophoneStream(RATE, CHUNK) as stream:
audio_generator = stream.generator()
requests = (
speech.StreamingRecognizeRequest(audio_content=content)
for content in audio_generator
)
responses = client.streaming_recognize(streaming_config, requests)
# Now, put the transcription responses to use.
listen_print_loop(responses)
我可以管理“audio_generator”变量接收一种函数返回(来自麦克风的音频流块)。但随后,“request”变量会得到多个“语音”。StreamingRecognizeRequest“对象,这些对象被馈送到”client.streaming_recognize“请求中。然后,在“listen_print_loop”中处理“responses”对象以显示文本结果。但是,我不明白为什么脚本能够无限循环,以及它如何以说“退出”结束。
我尝试搜索线程解释(由于队列使用)和函数返回的“yield”,但我不明白这部分是如何工作的。
答: 暂无答案
评论