1

我正在尝试编写一个 Python 脚本,该脚本将通过连接到 PC 的麦克风转录对话。我的特定应用程序将播放广播比赛的互联网流,让麦克风收听扬声器,并将结果转录/附加到文本文件中。

我在这里使用谷歌为他们的 Python 语音转文本示例提供的示例: https ://cloud.google.com/speech-to-text/docs/streaming-recognize#speech-streaming-recognize-php

以及这里的 GitHub 示例: https ://github.com/googleapis/python-speech/blob/master/samples/microphone/transcribe_streaming_mic.py

该示例使用 pyaudio。

我已经让这个例子按预期工作。它会听麦克风,将请求发送给 Google,然后我会取回转录内容。我说话并收回我所说的话。我还可以根据需要将此文本写入文件。

作为另一项测试,我启动了一个谈话电台供它收听。我注意到的是,流等待通话中的休息或暂停以将完整的“请求”发送给 Google。在流生成器中,它正在等待块为无。取决于谁在说话,停顿很少而且相差甚远。对于我的特殊需要,时间至关重要。我不能等待 30 秒、一分钟或更长时间才能收到回复。

我知道进行更多 API 调用可能会花费更多,但我正在寻找一种方法来切断麦克风或每 10、20 或可配置的秒数添加暂停。我不想等待它暂停,而是想切断它并让它开始缓冲下一个请求。

有没有人从谷歌修改过这个示例代码,或者做过任何允许 MicrophoneStream 类在预设秒数后自行停止的自定义代码?

感谢您的任何帮助,您可以提供。

4

0 回答 0