Sur cette page

QAudioFormat Class

La classe QAudioFormat stocke les informations relatives aux paramètres du flux audio. Plus d'informations...

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 spécifient la manière dont les données de l'échantillon 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'échantillonnageÉchantillons par seconde de données audio en Hertz.
Nombre de canauxLe nombre de canaux audio (généralement un pour le mono ou deux pour le stéréo). Il s'agit de la quantité d'échantillons consécutifs qui, ensemble, forment une trame dans le flux.
Format des échantillonsLe format des échantillons audio dans le flux

Cette classe est utilisée 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 lorsqu'il s'agit d'échantillons en mémoire.

Vous pouvez obtenir des formats audio compatibles avec le périphérique audio utilisé grâce aux fonctions de QAudioDevice. Cette classe vous permet également d'interroger les valeurs de paramètres disponibles pour un périphérique, afin que vous puissiez définir les paramètres vous-même. Voir 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 pour chaque canal au même instant est appelé "trame" sur le site Qt Multimedia (et ailleurs).

Documentation sur les types de membres

enum QAudioFormat::AudioChannelPosition

Décrit les positions possibles des canaux audio. Ces positions sont conformes à la définition standard utilisée dans la configuration du son surround 22.2.

ConstanteValeurDescription de la position
QAudioFormat::UnknownPosition0Position inconnue
QAudioFormat::FrontLeft1
QAudioFormat::FrontRight2
QAudioFormat::FrontCenter3
QAudioFormat::LFE4Canal d'effet basse fréquence (Subwoofer)
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 disposition normalisée des canaux audio. Les configurations les plus courantes sont Mono, Stereo, 2.1 (stéréo plus basse fréquence), 5.1 surround et 7.1 surround.

ConstanteValeurDescription
QAudioFormat::ChannelConfigUnknown0La configuration des canaux n'est pas connue.
QAudioFormat::ChannelConfigMonoQtPrivate::channelConfig(FrontCenter)L'audio a un canal central.
QAudioFormat::ChannelConfigStereoQtPrivate::channelConfig(FrontLeft, FrontRight)L'audio possède deux canaux, gauche et droit.
QAudioFormat::ChannelConfig2Dot1QtPrivate::channelConfig(FrontLeft, FrontRight, LFE)L'audio possède trois canaux, gauche, droit et LFE (effet de basse fréquence).
QAudioFormat::ChannelConfig3Dot0QtPrivate::channelConfig(FrontLeft, FrontRight, FrontCenter)L'audio possède trois canaux, Gauche, Droit et Centre.
QAudioFormat::ChannelConfig3Dot1QtPrivate::channelConfig(FrontLeft, FrontRight, FrontCenter, LFE)L'audio a quatre canaux, Gauche, Droite, Centre et LFE (effet de basse fréquence).
QAudioFormat::ChannelConfigSurround5Dot0QtPrivate::channelConfig(FrontLeft, FrontRight, FrontCenter, BackLeft, BackRight)L'audio possède cinq canaux, Gauche, Droite, Centre, BackLeft, et BackRight.
QAudioFormat::ChannelConfigSurround5Dot1QtPrivate::channelConfig(FrontLeft, FrontRight, FrontCenter, LFE, BackLeft, BackRight)L'audio a 6 canaux, Gauche, Droite, Centre, LFE, BackLeft, et BackRight.
QAudioFormat::ChannelConfigSurround7Dot0QtPrivate::channelConfig(FrontLeft, FrontRight, FrontCenter, BackLeft, BackRight, SideLeft, SideRight)L'audio a 7 canaux, Gauche, Droite, Centre, BackLeft, BackRight, SideLeft, et SideRight.
QAudioFormat::ChannelConfigSurround7Dot1QtPrivate::channelConfig(FrontLeft, FrontRight, FrontCenter, LFE, BackLeft, BackRight, SideLeft, SideRight)L'audio a 8 canaux, Gauche, Droite, Centre, LFE, BackLeft, BackRight, SideLeft, et SideRight.

enum QAudioFormat::SampleFormat

Qt s'attendra toujours à utiliser des échantillons dans l'endianness de la plate-forme hôte. Lorsque vous traitez vous-même des données audio provenant de sources externes, assurez-vous de les convertir dans l'endianness correct avant de les écrire sur QAudioSink ou QAudioBuffer.

ConstanteValeurDescription de la constante
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 flottants

Documentation des fonctions membres

[default] QAudioFormat::QAudioFormat()

Construit un nouveau format audio.

Les valeurs sont initialisées comme suit :

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

Construire un nouveau format audio à l'aide de other.

[noexcept default] QAudioFormat::~QAudioFormat()

Détruire ce format audio.

qint32 QAudioFormat::bytesForDuration(qint64 microseconds) const

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

Retourne 0 si ce format n'est pas valide.

Notez que certains arrondis peuvent se produire si microseconds n'est pas une fraction exacte de sampleRate().

Voir aussi durationForBytes().

qint32 QAudioFormat::bytesForFrames(qint32 frameCount) const

Renvoie le nombre d'octets requis pour les trames frameCount 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 dans chaque 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'adresse channels.

[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 certain canal audio channel à l'intérieur d'une trame audio pour le format donné. Retourne -1 si le canal n'existe pas pour ce format ou si la configuration du canal 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, Stereo et Surround. Pour un nombre de canaux plus élevé, cette configuration utilise simplement les premiers canaux audio channelCount définis dans QAudioFormat::AudioChannelPosition.

qint64 QAudioFormat::durationForBytes(qint32 bytes) const

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

Retourne 0 si ce format n'est pas valide.

Notez que certains arrondis peuvent se produire si bytes n'est pas un multiple exact du nombre d'octets par trame.

Voir aussi bytesForDuration().

qint64 QAudioFormat::durationForFrames(qint32 frameCount) const

Renvoie le nombre de microsecondes représentées par les 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 que certains arrondis peuvent se produire si byteCount n'est pas un multiple exact du nombre d'octets par trame.

Chaque trame contient un échantillon par canal.

Voir aussi framesForDuration().

qint32 QAudioFormat::framesForDuration(qint64 microseconds) const

Renvoie le nombre d'images nécessaires pour représenter microseconds dans ce format.

Notez que certains arrondis peuvent se produire si microseconds n'est pas une fraction exacte de 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 sample en un nombre compris entre -1 et 1. La méthode dépend du QaudioFormat.

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

Renvoie le format actuel de l'échantillon.

Voir aussi 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 du canal du format audio à l'une des configurations de canal audio standard.

Remarque : cette opération modifie également le nombre de canaux.

Voir également channelConfig().

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

Fixe le nombre de canaux à channels et la configuration des canaux à ChannelConfigUnknown.

Voir aussi channelCount().

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

Définit le format de l'échantillon à format.

Voir aussi sampleFormat() et QAudioFormat::SampleFormat.

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

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

Voir également sampleRate().

Non-membres apparentés

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.