gpt4 book ai didi

python - 使用 ossaudiodev 进行播放

转载 作者:行者123 更新时间:2023-12-03 00:01:32 31 4
gpt4 key购买 nike

我正在尝试编写一个流式音频客户端,我想使用 ossaudiodev 函数来帮助我在本地机器上播放音频。不幸的是,每次我尝试运行我的代码时都会遇到异常:

Unhandled exception in thread started by <function audioplayer at 0x88e96f4>
Traceback (most recent call last):
File "client.py", line 56, in audioplayer
audio = ossaudiodev.open("/dev/audio", 'w')
IOError: [Errno 16] Device or resource busy: '/dev/audio'

这是我的代码。我觉得很简单,但不确定如何释放/dev/audio 资源。
def audioplayer():

audio = ossaudiodev.open("/dev/audio", 'w')
audio.setfmt(ossaudiodev.AFMT_MU_LAW)
audio.channels(2)
audio.speed(8000)

packet = 0

sleep(.20) # give it a little bit of time to fill ze buffers

while (packets[packet] != "\0"):
audio.write(packets[packet])
packet += 1

这有什么技巧吗?

编辑:答案是显而易见的和愚蠢的。我在运行代码时正在玩潘多拉,因此扬声器正在“忙”这样做。谁能澄清为什么会这样?其他应用程序如何同时运行多个音频流,而我似乎不能?

最佳答案

即使在可用的系统上,OSS 接口(interface)通常也只是 ALSA 的一个外观。考虑使用支持多个接口(interface)的库,例如 pyao。

关于python - 使用 ossaudiodev 进行播放,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6118279/

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