如何获取linux中的音频设备列表(如aplay -L
)并为输出选择音频设备?有进口的库吗?他们已经进口了吗?
答案 0 :(得分:1)
我在写一个声音均衡器时搜索了你要求的高低,并且从未找到满意的答案 有一个alsaaudio库:
import alsaaudio #alternative method pure python
for device_number, card_name in enumerate(alsaaudio.cards()):
print device_number, card_name
我最终在命令行上敲打pacmd
和cat
个选项,检索并解析结果以发现它是什么。
示例:
sink_list = os.popen('cat /proc/asound/cards | grep "\[" | cut -c2').readlines()
for s in sink_list:
s = s.strip()
self.sinks_available.append("hw:"+s)
对于pulseaudio,您需要pacmd
# Identify the default sound card device
sink = os.popen('pacmd list | grep "device.master_device" | cut --delimiter== -f2').readline()
if sink =="":
sink = os.popen('pacmd list-cards | grep -C1 sinks | grep pci | cut --delimiter=/ -f1').readline()
这是最不令人满意和非蟒蛇般的,但是当魔鬼开车时需要