Класс QAudioDevice
Класс QAudioDevice предоставляет информацию об аудиоустройствах и их функциональности. Подробнее...
| Заголовок: | #include <QAudioDevice> |
| CMake: | find_package(Qt6 COMPONENTS Multimedia REQUIRED) target_link_libraries(mytarget PRIVATE Qt6::Multimedia) |
| qmake: | QT += multimedia |
Типы публичного доступа
| Перечисление | Mode { Null, Ввод, Вывод } |
Функции публичного доступа
| QAudioDevice(QAudioDevice &&other) | |
| QAudioDevice(const QAudioDevice &other) | |
| QAudioDevice() | |
| QAudioDevice & | operator=(const QAudioDevice &other) |
| QAudioDevice & | operator=(QAudioDevice &&other) |
| ~QAudioDevice() | |
| QString | description() const |
| QByteArray | id() const |
| bool | isDefault() const |
| bool | isFormatSupported(const QAudioFormat &settings) const |
| bool | isNull() const |
| int | maximumChannelCount() const |
| int | maximumSampleRate() const |
| int | minimumChannelCount() const |
| int | minimumSampleRate() const |
| QAudioDevice::Mode | mode() const |
| QAudioFormat | preferredFormat() const |
| QList<QAudioFormat::SampleFormat> | supportedSampleFormats() const |
| bool | operator!=(const QAudioDevice &other) const |
| bool | operator==(const QAudioDevice &other) const |
Подробное описание
QAudioDevice описывает аудиоустройство, доступное в системе, как для ввода, так и для воспроизведения.
QAudioDevice используется Qt для создания классов, взаимодействующих с устройством, таких как QAudioSource и QAudioSink. Он также используется для определения устройства ввода или вывода для использования в сессии захвата или во время воспроизведения медиа.
Вы также можете запросить каждое устройство, чтобы узнать форматы, которые оно поддерживает. Формат в этом контексте — это набор, состоящий из количества каналов, частоты дискретизации и типа выборки. Формат представлен классом QAudioFormat.
Значения, поддерживаемые устройством для каждого из этих параметров, можно получить с помощью minimumChannelCount(), maximumChannelCount(), minimumSampleRate(), maximumSampleRate() и supportedSampleFormats(). Поддерживаемые комбинации зависят от возможностей аудиоустройства. Если вам нужен определенный формат, вы можете проверить, поддерживает ли его устройство с помощью isFormatSupported(), или получить поддерживаемый формат, который как можно ближе к формату с помощью nearestFormat(). Например:
QAudioFormat format; format.setSampleRate(44100); // ... other format parameters format.setSampleFormat(QAudioFormat::Int16);
Набор доступных устройств можно получить из класса QMediaDevices.
Например:
const auto deviceInfos = QMediaDevices::availableDevices(QAudioDevice::Output);
for (const QAudioDevice &deviceInfo : deviceInfos)
qDebug() << "Device: " << deviceInfo.description(); В этом примере кода мы перебираем все устройства, способные выводить звук, то есть воспроизводить аудиопоток в поддерживаемом формате. Для каждого найденного устройства мы просто печатаем deviceName().
См. также QAudioSink и QAudioSource.
Документация по типам членов
Перечисление QAudioDevice::Mode
Описывает режим QAudioDevice.
| Постоянная | Значение | Описание |
|---|---|---|
QAudioDevice::Null |
0 |
Устройство отсутствует. |
QAudioDevice::Input |
1 |
Устройство ввода. |
QAudioDevice::Output |
2 |
Устройство вывода. |
Документация по функциям членов
QAudioDevice::QAudioDevice(QAudioDevice &&other)
Перемещающее построение из other.
QAudioDevice::QAudioDevice(const QAudioDevice &other)
Создаёт копию other.
QAudioDevice::QAudioDevice()
Создаёт объект QAudioDevice, не связанный с физическим устройством.
QAudioDevice &QAudioDevice::operator=(const QAudioDevice &other)
Устанавливает объект QAudioDevice равным other.
QAudioDevice &QAudioDevice::operator=(QAudioDevice &&other)
Перемещает other в этот объект QAudioDevice.
QAudioDevice::~QAudioDevice()
Удаляет информацию об аудиоустройстве.
QString QAudioDevice::description() const
Возвращает имя аудиоустройства в удобочитаемой форме.
Используйте эту строку для отображения устройства пользователю.
Примечание: Функция-получатель для свойства description.
QByteArray QAudioDevice::id() const
Возвращает идентификатор аудиоустройства.
Имена устройств различаются в зависимости от платформы/плагина аудио.
Это уникальный идентификатор аудиоустройства.
Примечание: Функция-получатель для свойства id.
bool QAudioDevice::isDefault() const
Возвращает true, если это устройство является устройством по умолчанию.
Примечание: Функция-получатель для свойства isDefault.
bool QAudioDevice::isFormatSupported(const QAudioFormat &settings) const
Возвращает true, если заданные settings поддерживаются аудиоустройством, описанным этим QAudioDevice.
bool QAudioDevice::isNull() const
Возвращает true, если этот объект QAudioDevice не содержит определения устройства.
int QAudioDevice::maximumChannelCount() const
Возвращает максимальное количество поддерживаемых каналов.
Обычно это 1 для моно звука или 2 для стерео звука.
int QAudioDevice::maximumSampleRate() const
Возвращает максимальную поддерживаемую частоту дискретизации (в Герцах).
int QAudioDevice::minimumChannelCount() const
Возвращает минимальное количество поддерживаемых каналов.
Обычно это 1 для моно звука или 2 для стерео звука.
int QAudioDevice::minimumSampleRate() const
Возвращает минимальную поддерживаемую частоту дискретизации (в Герцах).
QAudioDevice::Mode QAudioDevice::mode() const
возвращает, является ли это устройство устройством ввода или вывода.
Примечание: Функция-геттер для свойства mode.
QAudioFormat QAudioDevice::preferredFormat() const
Возвращает настройки формата аудио по умолчанию для этого устройства.
Эти настройки предоставляются используемой платформой/плагином аудио.
Они также зависят от QAudio::Mode, используемого.
Типичная система аудио предоставит что-то вроде:
- Настройки ввода: 48000 Гц моно 16 бит.
- Настройки вывода: 48000 Гц стерео 16 бит.
QList<QAudioFormat::SampleFormat> QAudioDevice::supportedSampleFormats() const
Возвращает список поддерживаемых типов образцов.
bool QAudioDevice::operator!=(const QAudioDevice &other) const
Возвращает true, если этот класс QAudioDevice представляет другое устройство аудио, чем other.
bool QAudioDevice::operator==(const QAudioDevice &other) const
Возвращает true, если этот класс QAudioDevice представляет то же устройство аудио, что и other.
© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-6.2/qaudiodevice.html