Sur cette page

QAudioFormat Class

La classe QAudioFormat stocke les informations relatives aux paramètres des flux audio. En savoir plus...

En-tête : #include <QAudioFormat>
CMake : find_package(Qt6 REQUIRED COMPONENTS Multimedia)
target_link_libraries(mytarget PRIVATE Qt6::Multimedia)
qmake : QT += multimedia

Types publics

enum AudioChannelPosition { UnknownPosition, FrontLeft, FrontRight, FrontCenter, LFE, …, BottomFrontRight }
enum ChannelConfig { ChannelConfigUnknown, ChannelConfigMono, ChannelConfigStereo, ChannelConfig2Dot1, ChannelConfig3Dot0, …, ChannelConfigSurround7Dot1 }
enum SampleFormat { Unknown, UInt8, Int16, Int32, Float }

Fonctions publiques

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)

Membres publics statiques

QAudioFormat::ChannelConfig channelConfig(Args... channels)
QAudioFormat::ChannelConfig defaultChannelConfigForChannelCount(int channelCount)
bool operator!=(const QAudioFormat &a, const QAudioFormat &b)
bool operator==(const QAudioFormat &a, const QAudioFormat &b)

Description détaillée

Un format audio spécifie la manière dont les données d'un flux audio brut sont organisées. Par exemple, comment le flux doit être interprété.

QAudioFormat contient des paramètres qui précisent comment les données d'échantillonnage audio sont organisées. Il s'agit de la fréquence, du nombre de canaux et du format d'échantillonnage. Le tableau suivant les décrit plus en détail.

ParamètreDescription
Fréquence d’échantillonnageNombre d’échantillons par seconde de données audio, exprimé en hertz.
Nombre de canauxNombre de canaux audio (généralement un pour le mono ou deux pour la stéréo). Il s'agit du nombre d'échantillons consécutifs qui, ensemble, forment une trame dans le flux
Format d'échantillonnageFormat des échantillons audio dans le flux

Cette classe s'utilise conjointement avec QAudioSource ou QAudioSink pour vous permettre de spécifier les paramètres du flux audio en cours de lecture ou d'écriture, ou avec QAudioBuffer lorsque vous manipulez des échantillons en mémoire.

Vous pouvez obtenir les formats audio compatibles avec le périphérique audio utilisé via les fonctions de QAudioDevice. Cette classe vous permet également de consulter les valeurs de paramètres disponibles pour un périphérique, afin que vous puissiez définir vous-même ces paramètres. Reportez-vous à la description de la classe QAudioDevice pour plus de détails. Vous devez connaître le format des flux audio que vous souhaitez lire ou enregistrer.

Les échantillons de tous les canaux seront entrelacés. Un échantillon par canal pour un même instant est appelé « trame » dans Qt Multimedia (et ailleurs).

Documentation sur les types de membres

enum QAudioFormat::AudioChannelPosition

Décrit les positions possibles des canaux audio. Celles-ci respectent la définition standard utilisée dans la configuration sonore surround 22.2.

ConstanteValeurDescription
QAudioFormat::UnknownPosition0Position inconnue
QAudioFormat::FrontLeft1 
QAudioFormat::FrontRight2 
QAudioFormat::FrontCenter3 
QAudioFormat::LFE4Canal d'effets basse fréquence (caisson de basses)
QAudioFormat::BackLeft5 
QAudioFormat::BackRight6 
QAudioFormat::FrontLeftOfCenter7 
QAudioFormat::FrontRightOfCenter8 
QAudioFormat::BackCenter9 
QAudioFormat::LFE219 
QAudioFormat::SideLeft10 
QAudioFormat::SideRight11 
QAudioFormat::TopFrontLeft13 
QAudioFormat::TopFrontRight15 
QAudioFormat::TopFrontCenter14 
QAudioFormat::TopCenter12 
QAudioFormat::TopBackLeft16 
QAudioFormat::TopBackRight18 
QAudioFormat::TopSideLeft20 
QAudioFormat::TopSideRight21 
QAudioFormat::TopBackCenter17 
QAudioFormat::BottomFrontCenter22 
QAudioFormat::BottomFrontLeft23 
QAudioFormat::BottomFrontRight24 

enum QAudioFormat::ChannelConfig

Cette énumération décrit une structure normalisée des canaux audio. Les configurations les plus courantes sont les configurations mono, stéréo, 2.1 (stéréo plus basses fréquences), surround 5.1 et surround 7.1.

ConstanteValeurDescription
QAudioFormat::ChannelConfigUnknown0La configuration des canaux n'est pas connue.
QAudioFormat::ChannelConfigMonoQtPrivate::channelConfig(FrontCenter)Le son comporte un canal central.
QAudioFormat::ChannelConfigStereoQtPrivate::channelConfig(FrontLeft, FrontRight)Le signal audio comporte deux canaux : gauche et droit.
QAudioFormat::ChannelConfig2Dot1QtPrivate::channelConfig(FrontLeft, FrontRight, LFE)Le son comporte trois canaux : gauche, droite et LFE (effet basse fréquence).
QAudioFormat::ChannelConfig3Dot0QtPrivate::channelConfig(FrontLeft, FrontRight, FrontCenter)Le son comporte trois canaux : gauche, droit et central.
QAudioFormat::ChannelConfig3Dot1QtPrivate::channelConfig(FrontLeft, FrontRight, FrontCenter, LFE)Le son comporte quatre canaux : gauche, droite, central et LFE (effet basse fréquence).
QAudioFormat::ChannelConfigSurround5Dot0QtPrivate::channelConfig(FrontLeft, FrontRight, FrontCenter, BackLeft, BackRight)Le son comporte cinq canaux : gauche, droite, central, « BackLeft » et « BackRight ».
QAudioFormat::ChannelConfigSurround5Dot1QtPrivate::channelConfig(FrontLeft, FrontRight, FrontCenter, LFE, BackLeft, BackRight)Le son comporte 6 canaux : gauche, droite, centre, LFE, BackLeft et BackRight.
QAudioFormat::ChannelConfigSurround7Dot0QtPrivate::channelConfig(FrontLeft, FrontRight, FrontCenter, BackLeft, BackRight, SideLeft, SideRight)Le son comporte 7 canaux : gauche, droite, centre, BackLeft, BackRight, SideLeft et SideRight.
QAudioFormat::ChannelConfigSurround7Dot1QtPrivate::channelConfig(FrontLeft, FrontRight, FrontCenter, LFE, BackLeft, BackRight, SideLeft, SideRight)Le son comporte 8 canaux : gauche, droite, centre, LFE, BackLeft, BackRight, SideLeft et SideRight.

enum QAudioFormat::SampleFormat

Qt s'attend toujours à ce que les échantillons respectent l'endianness de la plateforme hôte et les utilise en conséquence. Lorsque vous traitez vous-même des données audio provenant de sources externes, veillez à les convertir à l'endianness appropriée avant de les écrire dans un ` QAudioSink ` ou un ` QAudioBuffer`.

ConstanteValeurDescription
QAudioFormat::Unknown0Non défini
QAudioFormat::UInt81Les échantillons sont des entiers non signés de 8 bits
QAudioFormat::Int162Les échantillons sont des entiers signés de 16 bits
QAudioFormat::Int323Les échantillons sont des entiers signés de 32 bits
QAudioFormat::Float4Les échantillons sont des nombres à virgule flottante

Documentation des fonctions membres

[implicit] QAudioFormat::QAudioFormat()

Crée un nouveau format audio.

Les valeurs sont initialisées comme suit :

[implicit] QAudioFormat::QAudioFormat(const QAudioFormat &other)

Créez un nouveau format audio à l'aide de other.

[noexcept implicit] QAudioFormat::~QAudioFormat()

Supprimez ce format audio.

qint32 QAudioFormat::bytesForDuration(qint64 microseconds) const

Renvoie le nombre d'octets requis pour ce format audio dans le cadre d’ microseconds.

Renvoie 0 si ce format n'est pas valide.

Notez qu'un arrondi peut se produire si microseconds n'est pas une fraction exacte de sampleRate().

Voir également durationForBytes().

qint32 QAudioFormat::bytesForFrames(qint32 frameCount) const

Renvoie le nombre d'octets nécessaires pour les trames d'frameCount s de ce format.

Renvoie 0 si ce format n'est pas valide.

Voir aussi bytesForDuration().

[constexpr] int QAudioFormat::bytesPerFrame() const

Renvoie le nombre d'octets nécessaires pour représenter une trame (un échantillon par canal) dans ce format.

Renvoie 0 si ce format n'est pas valide.

[constexpr noexcept] int QAudioFormat::bytesPerSample() const

Renvoie le nombre d'octets nécessaires pour représenter un échantillon dans ce format.

Renvoie 0 si ce format n'est pas valide.

[constexpr noexcept] QAudioFormat::ChannelConfig QAudioFormat::channelConfig() const

Renvoie la configuration actuelle du canal.

Voir aussi setChannelConfig().

[static constexpr] template <typename... Args> QAudioFormat::ChannelConfig QAudioFormat::channelConfig(Args... channels)

Renvoie la configuration actuelle du canal pour l'channels donné.

[constexpr noexcept] int QAudioFormat::channelCount() const

Renvoie la valeur actuelle du nombre de canaux.

Voir aussi setChannelCount().

[noexcept] int QAudioFormat::channelOffset(QAudioFormat::AudioChannelPosition channel) const

Renvoie la position d'un canal audio donné au sein d'une trame audio pour le format spécifié. Renvoie -1 si l'channel 'existe pas pour ce format ou si sa configuration est inconnue.

[static] QAudioFormat::ChannelConfig QAudioFormat::defaultChannelConfigForChannelCount(int channelCount)

Renvoie une configuration de canaux par défaut pour channelCount.

Les configurations par défaut sont définies pour un maximum de 8 canaux et correspondent aux configurations standard mono, stéréo et surround. Pour un nombre de canaux supérieur, cette méthode utilise simplement les premiers canaux audio d'channelCount définis dans QAudioFormat::AudioChannelPosition.

qint64 QAudioFormat::durationForBytes(qint32 bytes) const

Renvoie le nombre de microsecondes représenté par bytes dans ce format.

Renvoie 0 si ce format n'est pas valide.

Notez qu’un arrondi peut se produire si bytes n’est pas un multiple exact du nombre d’octets par trame.

Voir également bytesForDuration().

qint64 QAudioFormat::durationForFrames(qint32 frameCount) const

Renvoie le nombre de microsecondes correspondant à des trames « frameCount » dans ce format.

qint32 QAudioFormat::framesForBytes(qint32 byteCount) const

Renvoie le nombre de trames représentées par byteCount dans ce format.

Notez qu’un arrondi peut se produire si byteCount n’est pas un multiple exact du nombre d’octets par trame.

Chaque trame comporte un échantillon par canal.

Voir également framesForDuration().

qint32 QAudioFormat::framesForDuration(qint64 microseconds) const

Renvoie le nombre de trames nécessaires pour représenter microseconds dans ce format.

Notez qu'un arrondi peut se produire si microseconds n'est pas une fraction exacte de la valeur renvoyée par la fonction sampleRate().

[constexpr noexcept] bool QAudioFormat::isValid() const

Renvoie « true » si tous les paramètres sont valides.

float QAudioFormat::normalizedSampleValue(const void *sample) const

Normalise la valeur de l’ sample e en un nombre compris entre -1 et 1. La méthode utilisée dépend du format QaudioFormat.

[constexpr noexcept] QAudioFormat::SampleFormat QAudioFormat::sampleFormat() const

Renvoie le format d'échantillon actuel.

Voir aussi la fonction ` setSampleFormat()`.

[constexpr noexcept] int QAudioFormat::sampleRate() const

Renvoie la fréquence d'échantillonnage actuelle en hertz.

Voir aussi setSampleRate().

[noexcept] void QAudioFormat::setChannelConfig(QAudioFormat::ChannelConfig config)

Définit la configuration des canaux sur « config ».

Définit la configuration des canaux du format audio sur l’une des configurations de canaux audio standard.

Remarque : cela modifie également le nombre de canaux.

Voir également channelConfig().

[constexpr noexcept] void QAudioFormat::setChannelCount(int channels)

Définit le nombre de canaux sur channels. Ce paramètre définit également la configuration des canaux sur ChannelConfigUnknown.

Voir également channelCount().

[constexpr noexcept] void QAudioFormat::setSampleFormat(QAudioFormat::SampleFormat format)

Définit le format d'échantillonnage sur « format ».

Voir également sampleFormat() et QAudioFormat::SampleFormat.

[constexpr noexcept] void QAudioFormat::setSampleRate(int samplerate)

Définit la fréquence d'échantillonnage à samplerate en hertz.

Voir aussi sampleRate().

Fonctions associées pour les non-membres

bool operator!=(const QAudioFormat &a, const QAudioFormat &b)

Renvoie « true » si le format audio « a » n'est pas égal à « b », sinon renvoie « false ».

bool operator==(const QAudioFormat &a, const QAudioFormat &b)

Renvoie « true » si le format audio « a » est égal à « b », sinon renvoie « 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.