gpt4 book ai didi

python - 开始在 python 上录制之前的语音识别流延迟

转载 作者:太空宇宙 更新时间:2023-11-04 10:32:12 27 4
gpt4 key购买 nike

我在尝试将音频流式传输到语音识别服务时遇到延迟。

我有两个函数来处理这个任务,第一个使用 alsaaudio 和“yield”将数据返回给调用函数。第二个函数使用我传递给它的请求 url header 和记录函数。

问题是我从调用请求函数到它开始录制大约半秒的音频有延迟

这是一个伪代码:

def listen():
stream = audiostream()
while user_speak:
yield stream.read(chunksize)

def stream_speech():
response = requests.post(url, data=listen(), headers, stream=true)

if response.status_code == 200:
print(response)

我认为问题在于请求打开与服务器的连接然后才调用监听函数时的延迟。

所以我想也许可以打开一个线程,将 block 记录到队列中,主线程将使用队列调用请求函数。但我不知道如何实现这个,也许这里有人可以帮助我。

最佳答案

好吧,有很多较低级别的 API,包括像 asyncore 这样的异步 API。这使您可以在根本不使用线程的情况下进行交互。

我会简单地用 setperiodsize 增加 alsaaudio 中的缓冲区大小大约 0.5 秒并使用更大的缓冲区。然后你可以先开始记录,然后等待连接,同时alsa会准备第一个缓冲区。

关于python - 开始在 python 上录制之前的语音识别流延迟,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39334172/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com