Qt 空间音频

Qt 空间音频是一个附加模块,它提供了一组丰富的 QML 类型和 C++ 类,用于在 3D 空间中实现声音场。它包含了一个易于使用的 API,用于在空间中定位监听器,添加周围的声音源,并用混响和反射模拟虚拟房间。

入门教程

如果您是 Qt 空间音频的新用户,可以使用以下语句在您的 .qml 文件中导入 QML 类型。

import QtQuick3D.SpatialAudio

要链接 C++ 库,请将以下内容添加到您的项目的 CMakeLists.txt 文件中。将 my_project 替换为您的项目名称。

find_package(Qt6 REQUIRED COMPONENTS SpatialAudio)
target_link_libraries(my_project PRIVATE Qt6::SpatialAudio)

空间音频概述 提供了有关如何使用以下列出的不同类的更详细描述。

QML 类型

下表概述了一些重要的 QML 类型。

类型描述
AudioEngine处理音频场景的引擎
SpatialSound位于 3D 空间的声音源。
AmbientSound位置无关的立体声声轨。
AudioRoom定义产生音频混响和反射的房间。

C++ 类

下表概述了一些重要的 C++ 类。

描述
QAudioEngine处理音频场景的引擎
QSpatialSound位于 3D 空间的声音源。
QAmbientSound位置无关的立体声声轨。
QAudioRoom定义产生音频混响和反射的房间。

许可证和归属

Qt 空间音频模块可在 Qt 公司的商业许可下获得。此外,它也可在免费软件许可下获得。这些免费软件许可证是 GNU Lesser General Public License, version 3GNU General Public License, version 3。有关更多信息,请参阅 Qt 许可协议

请注意,Qt 空间音频不适用于 GNU General Public License, version 2

此外,Qt 6.7.2 版本的 Qt 空间音频包含以下宽松许可许可下的第三方模块

Eigen, 版本 3.4.0

Mozilla Public License 2.0 和 BSD 3-Clause "New" 或 "Revised" License

Resonance Audio, 版本 e225aedb5ec7

Apache License 2.0

pfft, 版本 fbc4058602803f40dc554b8a5d2bcc694c005f2f

BSD 3-Clause "New" 或 "Revised" License

参考和示例

© 2024 Qt公司 Ltd. 本文档中包含的贡献内容均为各自所有者的版权。提供的文档按照自由软件基金会发布的GNU自由文档许可协议第1.3版的条款进行许可。Qt及其相应的商标是芬兰的Qt公司及其在全球范围内的商标。所有其他商标均为各自所有者的财产。