Sur cette page

QAudioRoom Class

En-tête : #include <QAudioRoom>
CMake : find_package(Qt6 REQUIRED COMPONENTS SpatialAudio)
target_link_libraries(mytarget PRIVATE Qt6::SpatialAudio)
qmake : QT += spatialaudio
Hérite de : QObject

Types publics

enum Material { Transparent, AcousticCeilingTiles, BrickBare, BrickPainted, ConcreteBlockCoarse, …, UniformMaterial }
enum Wall { LeftWall, RightWall, Floor, Ceiling, FrontWall, BackWall }

Propriétés

Fonctions publiques

QAudioRoom(QAudioEngine *engine)
virtual ~QAudioRoom() override
QVector3D dimensions() const
QVector3D position() const
float reflectionGain() const
float reverbBrightness() const
float reverbGain() const
float reverbTime() const
QQuaternion rotation() const
void setDimensions(QVector3D dim)
void setPosition(QVector3D pos)
void setReflectionGain(float factor)
void setReverbBrightness(float factor)
void setReverbGain(float factor)
void setReverbTime(float factor)
void setRotation(const QQuaternion &q)
void setWallMaterial(QAudioRoom::Wall wall, QAudioRoom::Material material)
QAudioRoom::Material wallMaterial(QAudioRoom::Wall wall) const

Signaux

Description détaillée

Définit une pièce pour le moteur audio spatial.

Si l'auditeur se trouve à l'intérieur d'une pièce, des réflexions sonores de premier ordre et une réverbération correspondant aux propriétés de la pièce seront appliquées au champ sonore.

Une pièce est toujours carrée et définie par sa position centrale, son orientation et ses dimensions. Chacun des six murs de la pièce peut être constitué de matériaux différents qui contribueront aux réflexions et à la réverbération calculées que l'auditeur percevra lorsqu'il se trouvera à l'intérieur de la pièce.

Si plusieurs pièces recouvrent la même position, le moteur utilisera la pièce ayant le plus petit volume.

Documentation sur les types de membres

enum QAudioRoom::Material

Définit les différents matériaux pouvant être appliqués aux différentes parois de la pièce.

ConstanteValeurDescription
QAudioRoom::Transparent0Le côté de la pièce est ouvert et ne contribue ni aux réflexions ni à la réverbération.
QAudioRoom::AcousticCeilingTiles1Panneaux acoustiques qui atténuent la plupart des réflexions et de la réverbération.
QAudioRoom::BrickBare2Mur en briques apparentes.
QAudioRoom::BrickPainted3Mur en briques peint.
QAudioRoom::ConcreteBlockCoarse4Mur en béton brut
QAudioRoom::ConcreteBlockPainted5Mur en béton peint
QAudioRoom::CurtainHeavy6Rideau épais. Réfléchit principalement les basses fréquences
QAudioRoom::FiberGlassInsulation7Isolation en fibre de verre. Ne réfléchit que les très basses fréquences
QAudioRoom::GlassThin8Mur en verre fin
QAudioRoom::GlassThick9Mur en verre épais
QAudioRoom::Grass10Herbe
QAudioRoom::LinoleumOnConcrete11Sol en linoléum
QAudioRoom::Marble12Sol en marbre
QAudioRoom::Metal13Métal
QAudioRoom::ParquetOnConcrete14Parquet en bois posé sur du béton
QAudioRoom::PlasterRough15Enduit brut
QAudioRoom::PlasterSmooth16Enduit lisse
QAudioRoom::PlywoodPanel17Panneau de contreplaqué
QAudioRoom::PolishedConcreteOrTile18Béton poli ou carrelage
QAudioRoom::Sheetrock19Rocher
QAudioRoom::WaterOrIceSurface20Eau ou glace
QAudioRoom::WoodCeiling21Plafond en bois
QAudioRoom::WoodPanel22Panneau en bois
QAudioRoom::UniformMaterial23Matériau artificiel produisant des réflexions uniformes sur toutes les fréquences

enum QAudioRoom::Wall

Une énumération définissant les 6 murs de la pièce

ConstanteValeurDescription
QAudioRoom::LeftWall0Mur de gauche (x négatif)
QAudioRoom::RightWall1Mur de droite (x positif)
QAudioRoom::Floor2Paroi inférieure (y négatif)
QAudioRoom::Ceiling3Paroi supérieure (y positif)
QAudioRoom::FrontWall4Paroi avant (z négatif)
QAudioRoom::BackWall5Paroi arrière (z positif)

Documentation relative aux propriétés

dimensions : QVector3D

Définit les dimensions de la pièce dans l'espace 3D. Les unités sont exprimées en centimètres par défaut.

Fonctions d'accès :

QVector3D dimensions() const
void setDimensions(QVector3D dim)

Signal de notification :

void dimensionsChanged()

Voir également position et QAudioEngine::distanceScale.

position : QVector3D

Définit la position du centre de la pièce dans l'espace 3D. Les unités sont exprimées en centimètres par défaut.

Fonctions d'accès :

QVector3D position() const
void setPosition(QVector3D pos)

Signal de notification :

void positionChanged()

Voir également dimensions et QAudioEngine::distanceScale.

reflectionGain : float

Facteur d'amplification des réflexions générées dans cette pièce. Une valeur comprise entre 0 et 1 atténuera les réflexions, tandis qu'une valeur supérieure à 1 les amplifiera, les rendant ainsi plus fortes.

La valeur par défaut est 1 ; un facteur de 0 désactive les réverbérations. Les valeurs négatives sont converties en 0.

Fonctions d'accès :

float reflectionGain() const
void setReflectionGain(float factor)

Signal de notification :

void reflectionGainChanged()

reverbBrightness : float

Facteur de luminosité à appliquer à la réverbération générée. Une valeur positive augmente la réverbération dans les hautes fréquences et l'atténue dans les basses fréquences ; une valeur négative produit l'effet inverse.

La valeur par défaut est 0.

Fonctions d'accès :

float reverbBrightness() const
void setReverbBrightness(float factor)

Signal de notification :

void reverbBrightnessChanged()

reverbGain : float

Facteur de gain pour la réverbération générée dans cette pièce. Une valeur comprise entre 0 et 1 atténuera la réverbération, tandis qu'une valeur supérieure à 1 appliquera un gain à la réverbération, ce qui la rendra plus forte.

La valeur par défaut est 1 ; un facteur de 0 désactive la réverbération. Les valeurs négatives sont converties en 0.

Fonctions d’accès :

float reverbGain() const
void setReverbGain(float factor)

Signal de notification :

void reverbGainChanged()

reverbTime : float

Un facteur de multiplication s'applique à tous les temps de réverbération générés pour cette pièce. Des valeurs plus élevées entraîneront des temps de réverbération plus longs, donnant l'impression que la pièce est plus grande.

La valeur par défaut est 1. Les valeurs négatives sont converties en 0.

Fonctions d'accès :

float reverbTime() const
void setReverbTime(float factor)

Signal de notification :

void reverbTimeChanged()

rotation : QQuaternion

Définit l'orientation de la pièce dans l'espace 3D.

Fonctions d'accès :

QQuaternion rotation() const
void setRotation(const QQuaternion &q)

Signal de notification :

void rotationChanged()

Documentation des fonctions membres

[explicit] QAudioRoom::QAudioRoom(QAudioEngine *engine)

Crée une instance de QAudioRoom pour engine.

Remarque : doit être appelé avec un QAudioEngine

[override virtual noexcept] QAudioRoom::~QAudioRoom()

Ça met la pièce sens dessus dessous.

void QAudioRoom::setWallMaterial(QAudioRoom::Wall wall, QAudioRoom::Material material)

Définit wall sur material.

Les différents matériaux des murs présentent des propriétés de réflexion et de réverbération qui influencent l’acoustique de la pièce.

Voir également wallMaterial(), Material et QAudioRoom::Wall.

QAudioRoom::Material QAudioRoom::wallMaterial(QAudioRoom::Wall wall) const

Renvoie le matériau utilisé pour wall.

Voir également setWallMaterial(), Material et QAudioRoom::Wall.

[signal] void QAudioRoom::wallsChanged()

Signale les changements de matériau des murs.

© 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.