pyal- python openal - 如何使用alc.alcOpenDevice选择非默认设备?

2024-09-27 18:05:35 发布

您现在位置:Python中文网/ 问答频道 /正文

检索播放设备列表的最佳方法是什么?如何选择播放设备

背景:我正在使用pyal创建3D音频。我必须在选定的设备上播放声音

我发现一些关于这方面的文件如下: 打开设备alcOpenDevice的函数调用以字符串作为输入。字符串应包含有效OpenAL呈现设备的名称,或为NULL以请求默认设备。“

我找不到有效的OpenAL设备名

我使用下面的代码来读取设备列表

from openal import al, alc
...
dev = alc.alcGetString(None,alc.ALC_ALL_DEVICES_SPECIFIER)
charVal = ""
for i in range(0,151):  #arbitrarily choosing 151 to read all characters.
    text = str(dev[i])
    text = text[2:-1]
    charVal = charVal + text
print (charVal.split('\\x00'))

当我手动复制设备名称并在

device = alc.alcOpenDevice('Generic Software on Speakers (3- USB Audio Device)')

我得到一个错误: ctypes.ArgumentError:参数1::错误类型

device = alc.alcOpenDevice(None)

适用于默认设备


Tags: 方法字符串textdev名称none列表device

热门问题