このページでは

QAudioRoom Class

ヘッダー: #include <QAudioRoom>
CMake: find_package(Qt6 REQUIRED COMPONENTS SpatialAudio)
target_link_libraries(mytarget PRIVATE Qt6::SpatialAudio)
qmake: QT += spatialaudio
継承元: QObject

パブリック型

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

プロパティ

パブリック関数

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

シグナル

詳細な説明

空間オーディオエンジン用の部屋を定義します。

リスナーがルーム内にある場合、そのルームの特性に合わせた一次反射音と残響が音場に適用されます。

ルームは常に正方形で、中心位置、向き、および寸法によって定義されます。ルームの 6 つの壁はそれぞれ異なる素材で構成することができ、それらは、リスナーがルーム内にいる間に体験する、計算された反射音や残響に影響を与えます。

同じ位置を複数の部屋がカバーしている場合、エンジンは体積が最も小さい部屋を使用します。

メンバータイプのドキュメント

enum QAudioRoom::Material

部屋の各壁面に適用できるさまざまな素材を定義します。

定数値説明
QAudioRoom::Transparent0部屋の側面は開放されており、反射や残響には寄与しません。
QAudioRoom::AcousticCeilingTiles1ほとんどの反射や残響を抑制する吸音タイル。
QAudioRoom::BrickBare2むき出しのレンガの壁。
QAudioRoom::BrickPainted3塗装されたレンガの壁。
QAudioRoom::ConcreteBlockCoarse4コンクリートのむき出しの壁
QAudioRoom::ConcreteBlockPainted5塗装されたコンクリート壁
QAudioRoom::CurtainHeavy6厚手のカーテン。主に低周波を反射する。
QAudioRoom::FiberGlassInsulation7グラスウール断熱材。極めて低周波のみを反射する
QAudioRoom::GlassThin8薄いガラスの壁
QAudioRoom::GlassThick9厚いガラスの壁
QAudioRoom::Grass10芝生
QAudioRoom::LinoleumOnConcrete11リノリウムの床
QAudioRoom::Marble12大理石の床
QAudioRoom::Metal13金属
QAudioRoom::ParquetOnConcrete14コンクリート上の寄木張りの床
QAudioRoom::PlasterRough15粗仕上げの漆喰
QAudioRoom::PlasterSmooth16滑らかな漆喰仕上げ
QAudioRoom::PlywoodPanel17合板パネル
QAudioRoom::PolishedConcreteOrTile18研磨コンクリートまたはタイル
QAudioRoom::Sheetrock19岩石
QAudioRoom::WaterOrIceSurface20水または氷
QAudioRoom::WoodCeiling21木製天井
QAudioRoom::WoodPanel22木製パネル
QAudioRoom::UniformMaterial23すべての周波数で均一な反射をもたらす人工素材

enum QAudioRoom::Wall

部屋の6つの壁を定義する列挙型

定数値説明
QAudioRoom::LeftWall0左の壁 (負の x)
QAudioRoom::RightWall1右側の壁(xが正)
QAudioRoom::Floor2底面(負の y)
QAudioRoom::Ceiling3上面(正の y)
QAudioRoom::FrontWall4前面(負のz軸)
QAudioRoom::BackWall5背面壁(z軸正方向)

プロパティのドキュメント

dimensions : QVector3D

3D空間における部屋の寸法を定義します。単位はデフォルトでセンチメートルです。

アクセス関数:

QVector3D dimensions() const
void setDimensions(QVector3D dim)

通知信号:

void dimensionsChanged()

関連項目: position およびQAudioEngine::distanceScale 。

position : QVector3D

3D空間における部屋の中心の位置を定義します。単位はデフォルトでセンチメートルです。

アクセス関数:

QVector3D position() const
void setPosition(QVector3D pos)

通知シグナル:

void positionChanged()

関連項目: dimensions およびQAudioEngine::distanceScale 。

reflectionGain : float

この部屋で発生する反射音に対するゲイン係数です。0 から 1 までの値を設定すると反射音が減衰し、1 より大きい値を設定すると反射音にゲインが加わり、音量が大きくなります。

デフォルトは 1 です。係数が 0 の場合は反射が無効になります。負の値は 0 として扱われます。

アクセス機能:

float reflectionGain() const
void setReflectionGain(float factor)

通知信号:

void reflectionGainChanged()

reverbBrightness : float

生成されるリバーブに適用される輝度係数。正の値を設定すると、高周波数帯のリバーブが増強され、低周波数帯が抑制されます。負の値を設定すると、その逆の効果が得られます。

デフォルト値は 0 です。

アクセス関数:

float reverbBrightness() const
void setReverbBrightness(float factor)

通知信号:

void reverbBrightnessChanged()

reverbGain : float

この部屋で生成されるリバーブのゲイン係数です。0~1の値を設定するとリバーブが減衰し、1より大きい値を設定するとリバーブにゲインが加わり、音量が大きくなります。

デフォルトは1です。係数が0の場合、リバーブは無効になります。負の値は0として扱われます。

アクセス関数:

float reverbGain() const
void setReverbGain(float factor)

通知信号:

void reverbGainChanged()

reverbTime : float

この部屋に生成されるすべての残響時間に適用される倍率です。値を大きくすると残響時間が長くなり、部屋がより広く聞こえるようになります。

デフォルト値は 1 です。負の値は 0 として扱われます。

アクセス関数:

float reverbTime() const
void setReverbTime(float factor)

通知信号:

void reverbTimeChanged()

rotation : QQuaternion

3D空間における部屋の向きを定義します。

アクセス機能:

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

通知シグナル:

void rotationChanged()

メンバ関数のドキュメント

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

engine 用のQAudioRoomを構築します。

注: 有効なQAudioEngine

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

その場の雰囲気を台無しにする。

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

wall をmaterial に設定します。

壁の材質によって反射や残響の特性が異なり、それらが部屋の音響に影響を与えます。

wallMaterial()、Material 、およびQAudioRoom::Wallも参照してください 。

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

wall で使用されている素材を返します。

setWallMaterial()、Material 、およびQAudioRoom::Wallも参照してください 。

[signal] void QAudioRoom::wallsChanged()

壁の材質が変わる際に合図を出す。

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