Spec-Zone.ru › Qt 5.13

Класс QAudioDeviceInfo

Класс QAudioDeviceInfo предоставляет интерфейс для запроса аудиоустройств и их функциональности. Подробнее...

Заголовок: #include <QAudioDeviceInfo>
qmake: QT += multimedia
  • Список всех членов, включая унаследованные

Открытые функции

QAudioDeviceInfo(const QAudioDeviceInfo &other)
QAudioDeviceInfo()
QAudioDeviceInfo & operator=(const QAudioDeviceInfo &other)
~QAudioDeviceInfo()
QString deviceName() const
bool isFormatSupported(const QAudioFormat &settings) const
bool isNull() const
QAudioFormat nearestFormat(const QAudioFormat &settings) const
QAudioFormat preferredFormat() const
QList<QAudioFormat::Endian> supportedByteOrders() const
QList<int> supportedChannelCounts() const
QStringList supportedCodecs() const
QList<int> supportedSampleRates() const
QList<int> supportedSampleSizes() const
QList<QAudioFormat::SampleType> supportedSampleTypes() const
bool operator!=(const QAudioDeviceInfo &other) const
bool operator==(const QAudioDeviceInfo &other) const

Статические открытые члены

QList<QAudioDeviceInfo> availableDevices(QAudio::Mode mode)
QAudioDeviceInfo defaultInputDevice()
QAudioDeviceInfo defaultOutputDevice()

Подробное описание

QAudioDeviceInfo позволяет запросить аудиоустройства, такие как звуковые карты и USB-гарнитуры, которые в настоящее время доступны в системе. Доступные аудиоустройства зависят от платформы или установленных аудиоплагинов.

Класс QAudioDeviceInfo используется Qt для создания классов, которые взаимодействуют с устройством, таких как QAudioInput и QAudioOutput.

Вы также можете запросить каждое устройство на поддерживаемые форматы. Формат в данном контексте — это набор, состоящий из определенного порядка байтов, канала, кодека, частоты, частоты дискретизации и типа выборки. Формат представлен классом QAudioFormat.

Поддерживаемые значения для каждого из этих параметров можно получить с помощью supportedByteOrders(), supportedChannelCounts(), supportedCodecs(), supportedSampleRates(), supportedSampleSizes() и supportedSampleTypes(). Поддерживаемые комбинации зависят от платформы, установленных аудиоплагинов и возможностей аудиоустройства. Если вам нужен определённый формат, вы можете проверить, поддерживает ли его устройство с помощью isFormatSupported(), или получить поддерживаемый формат, который наиболее близок к требуемому, с помощью nearestFormat(). Например:

QAudioFormat format;
format.setSampleRate(44100);
// ... other format parameters
format.setSampleType(QAudioFormat::SignedInt);

QAudioDeviceInfo info(QAudioDeviceInfo::defaultOutputDevice());

if (!info.isFormatSupported(format))
    format = info.nearestFormat(format);

Статические функции defaultInputDevice(), defaultOutputDevice() и availableDevices() позволяют получить список всех доступных устройств. Устройства извлекаются в соответствии со значением параметра mode, которое задаётся перечислением QAudio::Mode. Возвращаемые значения QAudioDeviceInfo действительны только для указанного QAudio::Mode.

Например:

foreach (const QAudioDeviceInfo &deviceInfo, QAudioDeviceInfo::availableDevices(QAudio::AudioOutput))
    qDebug() << "Device name: " << deviceInfo.deviceName();

В этом примере мы перебираем все устройства, способные выводить звук, т.е. воспроизводить аудиопоток в поддерживаемом формате. Для каждого найденного устройства мы просто выводим его deviceName().

См. также QAudioOutput и QAudioInput.

Документация по членам-функциям

QAudioDeviceInfo::QAudioDeviceInfo(const QAudioDeviceInfo &other)

Создаёт копию other.

QAudioDeviceInfo::QAudioDeviceInfo()

Создаёт пустой объект QAudioDeviceInfo.

QAudioDeviceInfo &QAudioDeviceInfo::operator=(const QAudioDeviceInfo &other)

Устанавливает объект QAudioDeviceInfo равным other.

QAudioDeviceInfo::~QAudioDeviceInfo()

Уничтожает информацию об аудиоустройстве.

[static] QList<QAudioDeviceInfo> QAudioDeviceInfo::availableDevices(QAudio::Mode mode)

Возвращает список аудиоустройств, которые поддерживают mode.

[static] QAudioDeviceInfo QAudioDeviceInfo::defaultInputDevice()

Возвращает информацию о стандартном устройстве ввода аудио. Все реализации платформы и аудиоплагинов предоставляют стандартное аудиоустройство для использования.

[static] QAudioDeviceInfo QAudioDeviceInfo::defaultOutputDevice()

Возвращает информацию о стандартном устройстве вывода аудио. Все реализации платформы и аудиоплагинов предоставляют стандартное аудиоустройство для использования.

QString QAudioDeviceInfo::deviceName() const

Возвращает удобочитаемое имя аудиоустройства.

Имена устройств зависят от платформы/используемого аудиоплагина.

Они представляют собой уникальный строковый идентификатор аудиоустройства.

Например: стандартное, Intel, U0x46d0x9a4

bool QAudioDeviceInfo::isFormatSupported(const QAudioFormat &settings) const

Возвращает true, если заданные settings поддерживаются аудиоустройством, описанным этим объектом QAudioDeviceInfo.

bool QAudioDeviceInfo::isNull() const

Возвращает значение true, если этот объект QAudioDeviceInfo содержит действительное определение устройства.

QAudioFormat QAudioDeviceInfo::nearestFormat(const QAudioFormat &settings) const

Возвращает ближайший к заданным settings формат QAudioFormat, поддерживаемый системой.

Эти настройки предоставляются используемой платформой/аудиоплагином.

Они также зависят от используемого режима QAudio::Mode.

QAudioFormat QAudioDeviceInfo::preferredFormat() const

Возвращает значения параметров формата по умолчанию для этого устройства.

Эти настройки предоставляются используемой платформой/аудиоплагином.

Они также зависят от используемого режима QAudio::Mode.

Типичная аудиосистема предоставит что-то вроде:

  • Настройки ввода: 8000 Гц моно, 8 бит.
  • Настройки вывода: 44100 Гц стерео, 16 бит, little endian.

QList<QAudioFormat::Endian> QAudioDeviceInfo::supportedByteOrders() const

Возвращает список поддерживаемых порядков байтов.

QList<int> QAudioDeviceInfo::supportedChannelCounts() const

Возвращает список поддерживаемого количества каналов.

Обычно это 1 для монозвука или 2 для стереозвука.

QStringList QAudioDeviceInfo::supportedCodecs() const

Возвращает список поддерживаемых кодеков.

Все платформенные и плагин-реализации должны поддерживать:

"audio/pcm" - Линейный PCM

Для написания плагинов, поддерживающих дополнительные кодеки, обратитесь к:

http://www.iana.org/assignments/media-types/audio/

QList<int> QAudioDeviceInfo::supportedSampleRates() const

Возвращает список поддерживаемых частот дискретизации (в Герцах).

QList<int> QAudioDeviceInfo::supportedSampleSizes() const

Возвращает список поддерживаемых размеров выборок (в битах).

Обычно это включает размеры выборок 8 и 16 бит.

QList<QAudioFormat::SampleType> QAudioDeviceInfo::supportedSampleTypes() const

Возвращает список поддерживаемых типов выборок.

bool QAudioDeviceInfo::operator!=(const QAudioDeviceInfo &other) const

Возвращает true, если этот класс QAudioDeviceInfo представляет собой другое аудиоустройство, чем other

bool QAudioDeviceInfo::operator==(const QAudioDeviceInfo &other) const

Возвращает true, если этот класс QAudioDeviceInfo представляет то же самое аудиоустройство, что и other.

© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-5.13/qaudiodeviceinfo.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API