QAudioRoom Class

Header: #include <QAudioRoom>
CMake: find_package(Qt6 REQUIRED COMPONENTS SpatialAudio)
target_link_libraries(mytarget PRIVATE Qt6::SpatialAudio)
qmake: QT += spatialaudio
Inherits: QObject

パブリックタイプ

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

プロパティ

パブリック関数

QAudioRoom(QAudioEngine *engine)
virtual ~QAudioRoom()
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

シグナル

詳細説明

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

リスナーが部屋の中にいる場合、部屋の特性に合った1次反射音とリバーブが音場に適用されます。

部屋は常に正方形で、中心位置、向き、寸法によって定義されます。部屋の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)

Notifierシグナル:

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)

通知シグナル(Notifier signal):

void reverbTimeChanged()

rotation : QQuaternion

3D空間での部屋の向きを定義します。

アクセス関数

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

ノーティファイアシグナル:

void rotationChanged()

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

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

engine 用の QAudioRoom を構築します。

[virtual noexcept] QAudioRoom::~QAudioRoom()

ルームを破棄します。

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

wallmaterial に設定します。

壁の材質が異なると、部屋の音に影響する反射や残響の特性が異なります。

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

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

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

setWallMaterial()、MaterialQAudioRoom::Wallも参照して ください。

[signal] void QAudioRoom::wallsChanged()

壁の素材が変更されたときにシグナルを返します。

本書に含まれる文書の著作権は、それぞれの所有者に帰属します 本書で提供されるドキュメントは、Free Software Foundation が発行したGNU Free Documentation License version 1.3に基づいてライセンスされています。 Qtおよびそれぞれのロゴは、フィンランドおよびその他の国におけるThe Qt Company Ltd.の 商標です。その他すべての商標は、それぞれの所有者に帰属します。