如何获取音频设备及其名称

1 投票
2 回答
1854 浏览
提问于 2025-04-18 03:28

我正在尝试使用Python中的PyQt4框架获取音频设备的名称。

代码如下:

from PyQt4 import QtCore, QtGui, QtMultimedia

temp_list=()
x=()

for i in range(5):
    temp_list=QtMultimedia.QAudioDeviceInfo.availableDevices(QtMultimedia.QAudio.AudioInput)
    x=QtMultimedia.QAudioDeviceInfo.deviceName
    print temp_list
    print x

但是我就是无法获取到设备名称。接下来该怎么做我也不太确定。

2 个回答

1

这也是另一种做法,sounddevice库很好用,简单易上手!

py -m pip install sounddevice
import sounddevice as sd

def query():
    a = sd.query_devices()
    print(a)

query()
4

从你的示例代码来看,你似乎对使用Python还不太熟悉。我建议你在继续之前先看看一些教程。Python维基上的新手指南是个不错的起点。

我还建议你充分利用Python的交互模式,这样可以帮助你理解Qt的API是怎么工作的。通过使用print,你可以很快轻松地回答一些基本问题。下面是一个示例会话:

Python 3.3.3 (v3.3.3:c3896275c0f6, Nov 18 2013, 21:18:40) [MSC v.1600 32 bit (Intel)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> from PyQt4 import QtMultimedia
>>> devices = QtMultimedia.QAudioDeviceInfo.availableDevices(QtMultimedia.QAudio.AudioInput)
>>> print(devices)
[<PyQt4.QtMultimedia.QAudioDeviceInfo object at 0x00CC5C30>, <PyQt4.QtMultimedia.QAudioDeviceInfo object at 0x00CC5C70>]
>>> for device in devices:
...     print(device.deviceName())
...
Intel(r) Integrated Audio
default

撰写回答