QAudioDevice Class
La clase QAudioDevice proporciona información sobre los dispositivos de audio y su funcionalidad. Más...
| Cabecera: | #include <QAudioDevice> |
| CMake: | find_package(Qt6 REQUIRED COMPONENTS Multimedia)target_link_libraries(mytarget PRIVATE Qt6::Multimedia) |
| qmake: | QT += multimedia |
Tipos públicos
| enum | Mode { Null, Input, Output } |
Propiedades
- description : const QString
- id : const QByteArray
- isDefault : const bool
- mode : const Mode
Funciones públicas
| QAudioDevice() | |
| QAudioDevice(const QAudioDevice &other) | |
| QAudioDevice(QAudioDevice &&other) | |
| ~QAudioDevice() | |
| QAudioFormat::ChannelConfig | channelConfiguration() const |
| 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 |
| void | swap(QAudioDevice &other) |
| bool | operator!=(const QAudioDevice &other) const |
| QAudioDevice & | operator=(QAudioDevice &&other) |
| QAudioDevice & | operator=(const QAudioDevice &other) |
| bool | operator==(const QAudioDevice &other) const |
Descripción detallada
QAudioDevice describe un dispositivo de audio disponible en el sistema, ya sea para entrada o para reproducción.
Un QAudioDevice es utilizado por Qt para construir clases que se comunican con el dispositivo - como QAudioSource, y QAudioSink. También se utiliza para determinar el dispositivo de entrada o salida a utilizar en una sesión de captura o durante la reproducción multimedia.
La instancia QAudioDevice conserva sus propiedades durante toda su vida útil, incluso si el dispositivo físico correspondiente se desconecta o se modifica su configuración. Para mantener un registro de las propiedades actualizadas, el usuario debe cargar nuevas instancias de QAudioDevice desde QMediaDevices cuando se disparen las señales relevantes.
También se pueden consultar los formatos que admite cada dispositivo. En este contexto, un formato es un conjunto formado por un recuento de canales, una frecuencia de muestreo y un tipo de muestra. Un formato está representado por la clase QAudioFormat.
Los valores que admite el dispositivo para cada uno de estos parámetros pueden obtenerse con minimumChannelCount(), maximumChannelCount(), minimumSampleRate(), maximumSampleRate() y supportedSampleFormats(). Las combinaciones admitidas dependen de las capacidades del dispositivo de audio. Si necesitas un formato específico, puedes comprobar si el dispositivo lo admite con isFormatSupported(). Por ejemplo:
{ sourceFile.setFileName("/tmp/test.raw"); sourceFile.open(QIODevice::ReadOnly); QAudioFormat format; // Configura el formato, por ejemploformat.setSampleRate(44100); format.setChannelCount(1); format.setSampleFormat(QAudioFormat::Int16); QAudioDevice info(QMediaDevices::defaultAudioOutput()); if (!info.isFormatSupported(format)) { qWarning() << "Raw audio format not supported by backend, cannot play audio.";
return; } audio = new QAudioSink(format, this); connect(audio, QAudioSink::stateChanged, this, &AudioInputExample::handleStateChanged); audio->start(&sourceFile); }El conjunto de dispositivos disponibles se puede recuperar de la clase QMediaDevices.
Por ejemplo:
const auto devices = QMediaDevices::audioOutputs();for(const QAudioDevice &dispositivo: dispositivos) qDebug() << "Device: " << device.description();
En este ejemplo de código, recorremos en bucle todos los dispositivos que pueden emitir sonido, es decir, reproducir un flujo de audio en un formato compatible. Para cada dispositivo que encontramos, simplemente imprimimos el nombre del dispositivo (deviceName()).
Véase también QAudioSink, QAudioSource, y QAudioFormat.
Documentación de los tipos de miembros
enum QAudioDevice::Mode
Describe el modo de este dispositivo.
| Constante | Valor | Descripción |
|---|---|---|
QAudioDevice::Null | 0 | Un dispositivo nulo. |
QAudioDevice::Input | 1 | Un dispositivo de entrada. |
QAudioDevice::Output | 2 | Un dispositivo de salida. |
Documentación de propiedades
[read-only] description : const QString
Devuelve un nombre legible del dispositivo de audio.
Utilice esta cadena para presentar el dispositivo al usuario.
Funciones de acceso:
| QString | description() const |
[read-only] id : const QByteArray
Devuelve un identificador para el dispositivo de audio.
Los nombres de los dispositivos varían en función de la plataforma/plugin de audio que se utilice.
Son un identificador único para el dispositivo de audio.
Funciones de acceso:
| QByteArray | id() const |
[read-only] isDefault : const bool
Devuelve true si este es el dispositivo de audio por defecto.
Funciones de acceso:
| bool | isDefault() const |
[read-only] mode : const Mode
Devuelve si este dispositivo es de entrada o de salida.
Funciones de acceso:
| QAudioDevice::Mode | mode() const |
Documentación de funciones miembro
QAudioDevice::QAudioDevice()
Construye un objeto QAudioDevice nulo.
QAudioDevice::QAudioDevice(const QAudioDevice &other)
Construye una copia de other.
[constexpr noexcept] QAudioDevice::QAudioDevice(QAudioDevice &&other)
Mover construcciones de other.
[noexcept] QAudioDevice::~QAudioDevice()
Destruye la información de este dispositivo de audio.
QAudioFormat::ChannelConfig QAudioDevice::channelConfiguration() const
Devuelve la configuración de canales del dispositivo.
bool QAudioDevice::isFormatSupported(const QAudioFormat &settings) const
Devuelve true si el dispositivo de audio descrito en QAudioDevice admite la dirección settings.
bool QAudioDevice::isNull() const
Devuelve si este objeto QAudioDevice contiene una definición de dispositivo válida.
int QAudioDevice::maximumChannelCount() const
Devuelve el número máximo de canales soportados.
Suele ser 1 para sonido mono o 2 para sonido estéreo.
int QAudioDevice::maximumSampleRate() const
Devuelve la frecuencia de muestreo máxima admitida (en hercios).
int QAudioDevice::minimumChannelCount() const
Devuelve el número mínimo de canales soportados.
Suele ser 1 para sonido mono o 2 para sonido estéreo.
int QAudioDevice::minimumSampleRate() const
Devuelve la frecuencia de muestreo mínima admitida (en hercios).
QAudioFormat QAudioDevice::preferredFormat() const
Devuelve los ajustes de formato de audio predeterminados para este dispositivo.
Estos ajustes son proporcionados por la plataforma/complemento de audio utilizado.
También dependen del QtAudio::Mode que se esté utilizando.
Un sistema de audio típico proporcionaría algo como
- Ajustes de entrada: 48000Hz mono 16 bit.
- Ajustes de salida: 48000Hz estéreo 16 bit.
QList<QAudioFormat::SampleFormat> QAudioDevice::supportedSampleFormats() const
Devuelve una lista de los tipos de muestra admitidos.
[noexcept] void QAudioDevice::swap(QAudioDevice &other)
Cambia el dispositivo de audio por other.
bool QAudioDevice::operator!=(const QAudioDevice &other) const
Devuelve true si esta clase QAudioDevice representa un dispositivo de audio diferente de other
[noexcept] QAudioDevice &QAudioDevice::operator=(QAudioDevice &&other)
Mueve other a este objeto QAudioDevice.
QAudioDevice &QAudioDevice::operator=(const QAudioDevice &other)
Establece el objeto QAudioDevice para que sea igual a other.
bool QAudioDevice::operator==(const QAudioDevice &other) const
Devuelve true si esta clase QAudioDevice representa el mismo dispositivo de audio que other.
© 2026 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.