QAudioFormat Class
La clase QAudioFormat almacena la información de los parámetros del flujo de audio. Más...
| Cabecera: | #include <QAudioFormat> |
| CMake: | find_package(Qt6 REQUIRED COMPONENTS Multimedia)target_link_libraries(mytarget PRIVATE Qt6::Multimedia) |
| qmake: | QT += multimedia |
Tipos Públicos
| enum | AudioChannelPosition { UnknownPosition, FrontLeft, FrontRight, FrontCenter, LFE, …, BottomFrontRight } |
| enum | ChannelConfig { ChannelConfigUnknown, ChannelConfigMono, ChannelConfigStereo, ChannelConfig2Dot1, ChannelConfig3Dot0, …, ChannelConfigSurround7Dot1 } |
| enum | SampleFormat { Unknown, UInt8, Int16, Int32, Float } |
Funciones públicas
| QAudioFormat() | |
| QAudioFormat(const QAudioFormat &other) | |
| ~QAudioFormat() | |
| qint32 | bytesForDuration(qint64 microseconds) const |
| qint32 | bytesForFrames(qint32 frameCount) const |
| int | bytesPerFrame() const |
| int | bytesPerSample() const |
| QAudioFormat::ChannelConfig | channelConfig() const |
| int | channelCount() const |
| int | channelOffset(QAudioFormat::AudioChannelPosition channel) const |
| qint64 | durationForBytes(qint32 bytes) const |
| qint64 | durationForFrames(qint32 frameCount) const |
| qint32 | framesForBytes(qint32 byteCount) const |
| qint32 | framesForDuration(qint64 microseconds) const |
| bool | isValid() const |
| float | normalizedSampleValue(const void *sample) const |
| QAudioFormat::SampleFormat | sampleFormat() const |
| int | sampleRate() const |
| void | setChannelConfig(QAudioFormat::ChannelConfig config) |
| void | setChannelCount(int channels) |
| void | setSampleFormat(QAudioFormat::SampleFormat format) |
| void | setSampleRate(int samplerate) |
Miembros públicos estáticos
| QAudioFormat::ChannelConfig | channelConfig(Args... channels) |
| QAudioFormat::ChannelConfig | defaultChannelConfigForChannelCount(int channelCount) |
No miembros relacionados
| bool | operator!=(const QAudioFormat &a, const QAudioFormat &b) |
| bool | operator==(const QAudioFormat &a, const QAudioFormat &b) |
Descripción detallada
Un formato de audio especifica cómo se organizan los datos en un flujo de audio sin procesar. Por ejemplo, cómo debe interpretarse el flujo.
QAudioFormat contiene parámetros que especifican cómo se organizan los datos de la muestra de audio. Estos parámetros son la frecuencia, el número de canales y el formato de muestra. En la tabla siguiente se describen con más detalle.
| Parámetro | Descripción |
|---|---|
| Frecuencia de muestreo | Muestras por segundo de datos de audio en hercios. |
| Número de canales | El número de canales de audio (normalmente uno para mono o dos para estéreo). Son la cantidad de muestras consecutivas que juntas forman un fotograma en el flujo. |
| Formato de las muestras | El formato de las muestras de audio en el flujo |
Esta clase se utiliza junto con QAudioSource o QAudioSink para poder especificar los parámetros del flujo de audio que se está leyendo o escribiendo, o con QAudioBuffer cuando se trata de muestras en memoria.
Puedes obtener formatos de audio compatibles con el dispositivo de audio utilizado a través de las funciones de QAudioDevice. Esta clase también te permite consultar los valores de los parámetros disponibles para un dispositivo, de modo que puedas establecer los parámetros tú mismo. Consulte la descripción de la clase QAudioDevice para obtener más detalles. Necesitas conocer el formato de los flujos de audio que deseas reproducir o grabar.
Las muestras para todos los canales se intercalarán. Una muestra para cada canal para el mismo instante de tiempo se denomina frame en Qt Multimedia (y otros lugares).
Documentación del tipo de miembro
enum QAudioFormat::AudioChannelPosition
Describe las posibles posiciones de los canales de audio. Siguen la definición estándar utilizada en la configuración de sonido envolvente 22.2.
| Constante | Valor | Descripción |
|---|---|---|
QAudioFormat::UnknownPosition | 0 | Posición desconocida |
QAudioFormat::FrontLeft | 1 | |
QAudioFormat::FrontRight | 2 | |
QAudioFormat::FrontCenter | 3 | |
QAudioFormat::LFE | 4 | Canal de efecto de baja frecuencia (Subwoofer) |
QAudioFormat::BackLeft | 5 | |
QAudioFormat::BackRight | 6 | |
QAudioFormat::FrontLeftOfCenter | 7 | |
QAudioFormat::FrontRightOfCenter | 8 | |
QAudioFormat::BackCenter | 9 | |
QAudioFormat::LFE2 | 19 | |
QAudioFormat::SideLeft | 10 | |
QAudioFormat::SideRight | 11 | |
QAudioFormat::TopFrontLeft | 13 | |
QAudioFormat::TopFrontRight | 15 | |
QAudioFormat::TopFrontCenter | 14 | |
QAudioFormat::TopCenter | 12 | |
QAudioFormat::TopBackLeft | 16 | |
QAudioFormat::TopBackRight | 18 | |
QAudioFormat::TopSideLeft | 20 | |
QAudioFormat::TopSideRight | 21 | |
QAudioFormat::TopBackCenter | 17 | |
QAudioFormat::BottomFrontCenter | 22 | |
QAudioFormat::BottomFrontLeft | 23 | |
QAudioFormat::BottomFrontRight | 24 |
enum QAudioFormat::ChannelConfig
Este enum describe una disposición de canales de audio estandarizada. Las configuraciones más comunes son Mono, Estéreo, 2.1 (estéreo más baja frecuencia), 5.1 surround y 7.1 surround.
| Constante | Valor | Descripción |
|---|---|---|
QAudioFormat::ChannelConfigUnknown | 0 | No se conoce la configuración de canales. |
QAudioFormat::ChannelConfigMono | QtPrivate::channelConfig(FrontCenter) | El audio tiene un canal Central. |
QAudioFormat::ChannelConfigStereo | QtPrivate::channelConfig(FrontLeft, FrontRight) | El audio tiene dos canales, Izquierdo y Derecho. |
QAudioFormat::ChannelConfig2Dot1 | QtPrivate::channelConfig(FrontLeft, FrontRight, LFE) | El audio tiene tres canales, Izquierdo, Derecho y LFE (efecto de baja frecuencia). |
QAudioFormat::ChannelConfig3Dot0 | QtPrivate::channelConfig(FrontLeft, FrontRight, FrontCenter) | El audio tiene tres canales, Izquierdo, Derecho y Central. |
QAudioFormat::ChannelConfig3Dot1 | QtPrivate::channelConfig(FrontLeft, FrontRight, FrontCenter, LFE) | El audio tiene cuatro canales, Izquierda, Derecha, Centro y LFE (efecto de baja frecuencia). |
QAudioFormat::ChannelConfigSurround5Dot0 | QtPrivate::channelConfig(FrontLeft, FrontRight, FrontCenter, BackLeft, BackRight) | El audio tiene cinco canales: izquierdo, derecho, central, BackLeft y BackRight. |
QAudioFormat::ChannelConfigSurround5Dot1 | QtPrivate::channelConfig(FrontLeft, FrontRight, FrontCenter, LFE, BackLeft, BackRight) | El audio tiene 6 canales, Izquierda, Derecha, Centro, LFE, BackLeft, y BackRight. |
QAudioFormat::ChannelConfigSurround7Dot0 | QtPrivate::channelConfig(FrontLeft, FrontRight, FrontCenter, BackLeft, BackRight, SideLeft, SideRight) | El audio tiene 7 canales: izquierdo, derecho, central, BackLeft, BackRight, SideLeft, y SideRight. |
QAudioFormat::ChannelConfigSurround7Dot1 | QtPrivate::channelConfig(FrontLeft, FrontRight, FrontCenter, LFE, BackLeft, BackRight, SideLeft, SideRight) | El audio tiene 8 canales: izquierdo, derecho, central, LFE, BackLeft, BackRight, SideLeft, y SideRight. |
enum QAudioFormat::SampleFormat
Qt siempre esperará y utilizará muestras en el formato de la plataforma anfitriona. Cuando proceses datos de audio de fuentes externas, asegúrate de convertirlos al formato correcto antes de escribirlos en QAudioSink o QAudioBuffer.
| Constante | Valor | Descripción |
|---|---|---|
QAudioFormat::Unknown | 0 | No establecido |
QAudioFormat::UInt8 | 1 | Las muestras son enteros de 8 bits sin signo |
QAudioFormat::Int16 | 2 | Las muestras son enteros con signo de 16 bits |
QAudioFormat::Int32 | 3 | Las muestras son enteros con signo de 32 bits |
QAudioFormat::Float | 4 | Las muestras son flotantes |
Documentación de las funciones miembro
[default] QAudioFormat::QAudioFormat()
Crea un nuevo formato de audio.
Los valores se inicializan como sigue:
- sampleRate() = 0
- channelCount() = 0
- sampleFormat() = QAudioFormat::Unknown
[default] QAudioFormat::QAudioFormat(const QAudioFormat &other)
Construye un nuevo formato de audio utilizando other.
[noexcept default] QAudioFormat::~QAudioFormat()
Destruye este formato de audio.
qint32 QAudioFormat::bytesForDuration(qint64 microseconds) const
Devuelve el número de bytes necesarios para este formato de audio para microseconds.
Devuelve 0 si este formato no es válido.
Tenga en cuenta que puede producirse algún redondeo si microseconds no es una fracción exacta de sampleRate().
Véase también durationForBytes().
qint32 QAudioFormat::bytesForFrames(qint32 frameCount) const
Devuelve el número de bytes necesarios para frameCount tramas de este formato.
Devuelve 0 si este formato no es válido.
Véase también bytesForDuration().
[constexpr] int QAudioFormat::bytesPerFrame() const
Devuelve el número de bytes necesarios para representar una trama (una muestra en cada canal) en este formato.
Devuelve 0 si este formato no es válido.
[constexpr noexcept] int QAudioFormat::bytesPerSample() const
Devuelve el número de bytes necesarios para representar una muestra en este formato.
Devuelve 0 si este formato no es válido.
[constexpr noexcept] QAudioFormat::ChannelConfig QAudioFormat::channelConfig() const
Devuelve la configuración actual del canal.
Véase también setChannelConfig().
[static constexpr] template <typename... Args> QAudioFormat::ChannelConfig QAudioFormat::channelConfig(Args... channels)
Devuelve la configuración actual del canal para la dirección channels.
[constexpr noexcept] int QAudioFormat::channelCount() const
Devuelve el valor actual del recuento de canales.
Véase también setChannelCount().
[noexcept] int QAudioFormat::channelOffset(QAudioFormat::AudioChannelPosition channel) const
Devuelve la posición de un determinado audio channel dentro de una trama de audio para el formato dado. Devuelve -1 si el canal no existe para este formato o la configuración del canal es desconocida.
[static] QAudioFormat::ChannelConfig QAudioFormat::defaultChannelConfigForChannelCount(int channelCount)
Devuelve una configuración de canales por defecto para channelCount.
Las configuraciones predeterminadas se definen para un máximo de 8 canales y corresponden a las configuraciones estándar Mono, Estéreo y Surround. Para un mayor número de canales, simplemente se utilizan los primeros channelCount canales de audio definidos en QAudioFormat::AudioChannelPosition.
qint64 QAudioFormat::durationForBytes(qint32 bytes) const
Devuelve el número de microsegundos representados por bytes en este formato.
Devuelve 0 si este formato no es válido.
Tenga en cuenta que puede producirse cierto redondeo si bytes no es un múltiplo exacto del número de bytes por trama.
Véase también bytesForDuration().
qint64 QAudioFormat::durationForFrames(qint32 frameCount) const
Devuelve el número de microsegundos representados por las tramas frameCount en este formato.
qint32 QAudioFormat::framesForBytes(qint32 byteCount) const
Devuelve el número de tramas representadas por byteCount en este formato.
Tenga en cuenta que puede producirse cierto redondeo si byteCount no es un múltiplo exacto del número de bytes por trama.
Cada trama tiene una muestra por canal.
Véase también framesForDuration().
qint32 QAudioFormat::framesForDuration(qint64 microseconds) const
Devuelve el número de fotogramas necesarios para representar microseconds en este formato.
Tenga en cuenta que puede producirse cierto redondeo si microseconds no es una fracción exacta de sampleRate().
[constexpr noexcept] bool QAudioFormat::isValid() const
Devuelve true si todos los parámetros son válidos.
float QAudioFormat::normalizedSampleValue(const void *sample) const
Normaliza el valor de sample a un número entre -1 y 1. El método depende de QaudioFormat.
[constexpr noexcept] QAudioFormat::SampleFormat QAudioFormat::sampleFormat() const
Devuelve el formato de muestra actual.
Véase también setSampleFormat().
[constexpr noexcept] int QAudioFormat::sampleRate() const
Devuelve la frecuencia de muestreo actual en hercios.
Véase también setSampleRate().
[noexcept] void QAudioFormat::setChannelConfig(QAudioFormat::ChannelConfig config)
Establece la configuración de canales en config.
Establece la configuración de canales del formato de audio en una de las configuraciones de canales de audio estándar.
Nota: esto también modificará el recuento de canales.
Véase también channelConfig().
[constexpr noexcept] void QAudioFormat::setChannelCount(int channels)
Establece el recuento de canales en channels. Establecer esto también establece la configuración de canales en ChannelConfigUnknown.
Véase también channelCount().
[constexpr noexcept] void QAudioFormat::setSampleFormat(QAudioFormat::SampleFormat format)
Establece el formato de la muestra en format.
Véase también sampleFormat() y QAudioFormat::SampleFormat.
[constexpr noexcept] void QAudioFormat::setSampleRate(int samplerate)
Establece la frecuencia de muestreo en samplerate en hercios.
Véase también sampleRate().
Relacionados No miembros
bool operator!=(const QAudioFormat &a, const QAudioFormat &b)
Devuelve true si el formato de audio a no es igual a b, en caso contrario devuelve false.
bool operator==(const QAudioFormat &a, const QAudioFormat &b)
Devuelve true si el formato de audio a es igual a b, en caso contrario devuelve false.
© 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.