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éritages : 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 dont l'auditeur fera l'expérience lorsqu'il sera à l'intérieur de la pièce.

Si plusieurs pièces couvrent 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 qui peuvent être appliqués aux différents murs de la pièce.

ConstanteValeurDescription
QAudioRoom::Transparent0Le côté de la pièce est ouvert et ne contribue pas aux réflexions ou à la réverbération.
QAudioRoom::AcousticCeilingTiles1Dalles acoustiques qui suppriment la plupart des réflexions et de la réverbération.
QAudioRoom::BrickBare2Mur de briques nues.
QAudioRoom::BrickPainted3Mur en briques peintes.
QAudioRoom::ConcreteBlockCoarse4Mur en béton brut
QAudioRoom::ConcreteBlockPainted5Mur en béton peint
QAudioRoom::CurtainHeavy6Rideau lourd. Réfléchit surtout 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::Grass10L'herbe
QAudioRoom::LinoleumOnConcrete11Sol en linoléum
QAudioRoom::Marble12Sol en marbre
QAudioRoom::Metal13Métal
QAudioRoom::ParquetOnConcrete14Parquet sur béton
QAudioRoom::PlasterRough15Plâtre brut
QAudioRoom::PlasterSmooth16Plâtre lisse
QAudioRoom::PlywoodPanel17Panneau de plâtre
QAudioRoom::PolishedConcreteOrTile18Béton poli ou carrelage
QAudioRoom::Sheetrock19Rocher
QAudioRoom::WaterOrIceSurface20Eau ou glace
QAudioRoom::WoodCeiling21Plafond en bois
QAudioRoom::WoodPanel22Panneau en bois
QAudioRoom::UniformMaterial23Matériau artificiel donnant 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 de la constante
QAudioRoom::LeftWall0Mur 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::BackWall5Mur arrière (z positif)

Documentation sur la propriété

dimensions : QVector3D

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

Fonctions d'accès :

QVector3D dimensions() const
void setDimensions(QVector3D dim)

Signal de notification :

void dimensionsChanged()

Voir aussi position et QAudioEngine::distanceScale.

position : QVector3D

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

Fonctions d'accès :

QVector3D position() const
void setPosition(QVector3D pos)

Signal de notification :

void positionChanged()

Voir aussi dimensions et QAudioEngine::distanceScale.

reflectionGain : float

Facteur de gain pour les réflexions générées dans cette pièce. Une valeur comprise entre 0 et 1 atténue les réflexions, tandis qu'une valeur supérieure à 1 applique un gain aux réflexions, ce qui les rend plus fortes.

La valeur par défaut est 1, un facteur de 0 désactive les réflexions. Les valeurs négatives correspondent à 0.

Fonctions d'accès :

float reflectionGain() const
void setReflectionGain(float factor)

Signal du notificateur :

void reflectionGainChanged()

reverbBrightness : float

Facteur de luminosité à appliquer à la réverbération générée. Une valeur positive augmentera la réverbération pour les hautes fréquences et atténuera les basses fréquences, une valeur négative fera l'inverse.

La valeur par défaut est 0.

Fonctions d'accès :

float reverbBrightness() const
void setReverbBrightness(float factor)

Signal du notificateur :

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énue la réverbération, tandis qu'une valeur supérieure à 1 applique un gain à la réverbération, ce qui la rend plus forte.

La valeur par défaut est 1, un facteur de 0 désactive la réverbération. Les valeurs négatives correspondent à 0.

Fonctions d'accès :

float reverbGain() const
void setReverbGain(float factor)

Signal de notification :

void reverbGainChanged()

reverbTime : float

Facteur à appliquer à toutes les durées de réverbération générées pour cette pièce. Des valeurs plus élevées conduisent à des temps de réverbération plus longs, ce qui donne à la pièce un son plus large.

La valeur par défaut est 1. Les valeurs négatives correspondent à 0.

Fonctions d'accès :

float reverbTime() const
void setReverbTime(float factor)

Signal du notificateur :

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 du notificateur :

void rotationChanged()

Member Function Documentation

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

Construit une QAudioRoom pour engine.

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

Détruit la pièce.

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

Définit wall à material.

Des matériaux muraux différents ont des propriétés de réflexion et de réverbération différentes qui influencent le son de la pièce.

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

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

renvoie le matériel utilisé pour wall.

Voir aussi setWallMaterial(), Material, et QAudioRoom::Wall.

[signal] void QAudioRoom::wallsChanged()

Signale le changement de matériau du mur.

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