QMediaDevices 类

QMediaDevices 类提供有关可用的多媒体输入和输出设备的信息。 更多...

头文件 #include <QMediaDevices>
CMakefind_package(Qt6 REQUIRED COMPONENTS Multimedia)
target_link_libraries(mytarget PRIVATE Qt6::Multimedia)
qmakeQT += multimedia
由以下类实例化 MediaDevices
继承自 QObject

属性

信号

静态公有成员

QList<QAudioDevice>audioInputs()
QList<QAudioDevice>audioOutputs()
QAudioDevicedefaultAudioInput()
QAudioDevicedefaultAudioOutput()
QCameraDevicedefaultVideoInput()
QList<QCameraDevice>videoInputs()

详细描述

QMediaDevices 类提供有关可用的多媒体设备和系统默认值的信息。它监视以下三个组

  • 音频输入设备(麦克风)
  • 音频输出设备(扬声器、耳机)
  • 视频输入设备(摄像头)

QMediaDevices 为每个设备组提供单独的列表。如果它检测到系统已连接新设备或已从系统中断开已连接的设备,它将更新相应的设备列表并发出通知该更改的信号。

可以使用 QMediaDevices::audioInputsQMediaDevices::audioOutputs 函数枚举系统上所有麦克风和扬声器/耳机。此示例首先获取所有已连接麦克风列表,然后打印它们的标识符、描述以及是否为默认设备。

const QList<QAudioDevice> audioDevices = QMediaDevices::audioInputs();
for (const QAudioDevice &device : audioDevices)
{
    out << "ID: " << device.id() << Qt::endl;
    out << "Description: " << device.description() << Qt::endl;
    out << "Is default: " << (device.isDefault() ? "Yes" : "No") << Qt::endl;
}

同样,QMediaDevices::videoInputs 将返回所有已连接摄像头的列表。在此示例中,我们列出所有已连接的摄像头及其标识符、描述以及是否为默认摄像头。

const QList<QCameraDevice> videoDevices = QMediaDevices::videoInputs();
for (const QCameraDevice &device : videoDevices)
{
    out << "ID: " << device.id() << Qt::endl;
    out << "Description: " << device.description() << Qt::endl;
    out << "Is default: " << (device.isDefault() ? "Yes" : "No") << Qt::endl;
}

QMediaDevices 监视每个设备组的系统默认值。它将通知通过系统设置所做的任何更改。例如,如果用户在系统设置中选择新的默认音频输出,QMediaDevices 将更新相应的默认音频输出并发出信号。如果系统为摄像头或音频输入不提供默认值,QMediaDevices 将选择列表中的第一个设备作为默认设备。

虽然使用默认的输入和输出设备通常足以播放或录制多媒体,但通常需要显式选择要使用的设备。

QMediaDevices 是一个单例对象,所有获取器都是线程安全的。

属性文档

[只读] audioInputs : const QList<QAudioDevice>

返回系统上可用的音频输入设备列表。

这些设备通常是麦克风。设备可以是内置的,或通过 USB 或蓝牙等连接。

访问函数

QList<QAudioDevice>audioInputs()

通知信号

[只读] audioOutputs : const QList<QAudioDevice>

返回系统上可用的音频输出设备列表。

这些设备通常是扬声器或耳机。设备可以是内置的,或通过 USB 或蓝牙等连接。

访问函数

QList<QAudioDevice>audioOutputs()

通知信号

[只读] defaultAudioInput : const QAudioDevice

返回默认音频输入设备。

默认设备在其应用运行期间可能会更改。在这种情况下,会发出 audioInputsChanged() 信号。

访问函数

QAudioDevicedefaultAudioInput()

通知信号

[只读] defaultAudioOutput : const QAudioDevice

返回默认音频输出设备。

默认设备在其应用运行期间可能会更改。在这种情况下,会发出 audioOutputsChanged() 信号。

访问函数

QAudioDevicedefaultAudioOutput()

通知信号

[只读] defaultVideoInput : const QCameraDevice

返回系统上的默认摄像头。

注意:在使用之前,应使用 isNull() 检查返回的对象,以防没有默认摄像头或根本没有任何摄像头。

默认设备在其应用运行期间可能会更改。在这种情况下,会发出 videoInputsChanged() 信号。

访问函数

QCameraDevicedefaultVideoInput()

通知信号

另请参阅videoInputs

[只读] videoInputs : const QList<QCameraDevice>

返回系统上可用的摄像头列表。

访问函数

QList<QCameraDevice>videoInputs()

通知信号

© 2024 Qt 公司有限公司。本文件内包含的文档贡献作品均为各自所有者的版权。本提供的文档按照自由软件开发基金会(Free Software Foundation)发布并由其拥有的 GNU 自由文档许可证版本 1.3 的条款进行许可。Qt 及相关标志是芬兰的 Qt 公司有限公司及其在世界范围内其他国家的注册商标。所有其他商标均为各自所有者的财产。