如何获取音频设备和名称

时间:2014-04-20 06:41:44

标签: python audio pyqt pyqt4 device

我试图在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 个答案:

答案 0 :(得分:2)

从您的示例代码中可以看出,您没有太多使用Python的经验。我会建议你在继续学习之前先完成一些教程。 Python维基上的Beginners Guide是一个很好的起点。

我还建议您在尝试了解Qt API的工作原理时充分利用Python的交互模式。使用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

答案 1 :(得分:0)

这也是另一种实现方式,sounddevice lib很好用且易于使用!

py -m pip install sounddevice

-

import sounddevice

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

query()