gpt4 book ai didi

python - 使用一个 pyaudio 流进行数据读取和写入

转载 作者:行者123 更新时间:2023-11-30 22:00:58 28 4
gpt4 key购买 nike

我有一个网络套接字客户端,它在请求中发送音频二进制数据,并从网络套接字服务器接收它们作为响应。我正在使用 pyaudio 从(文件/麦克风)读取二进制音频数据,然后将其发送到服务器。然后作为响应,我从服务器收到另一个二进制音频数据。问题是我可以使用最近打开的 pyaudio 读取流来实时播放接收音频,还是我最好需要创建另一个 pyaudio 流(有两个流,一个负责二进制数据读取,另一个负责二进制数据写入)?

最佳答案

没有理由创建两个流。在同一个流回调函数中读取和写入是完全可以的。只需以“非阻塞”模式创建流(即通过指定回调函数)。

您只需确保使用足够大的缓冲区,以防网络连接在某些时候花费的时间比平均时间长一些。您应该使用某种队列在线程之间移动数据,例如queue.Queue来自Python的标准库。

也没有必要创建单独的线程。如果您使用带有回调函数的 PyAudio 流,该函数会在单独的线程(由底层 PortAudio 库自动创建)中自动调用。

话虽如此,如果您出于其他原因需要多个流,您当然可以创建多个流。此外,如果需要,您可以创建线程。

关于python - 使用一个 pyaudio 流进行数据读取和写入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54183268/

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