本页面

Qt Spatial Audio

Qt Spatial Audio 提供了一个扩展模块,其中包含丰富的 QML 类型和 C++ 类,用于在三维空间中实现声场。该模块提供了一个易于使用的 API,可用于在空间中定位听者、在听者周围添加定位声源,以及通过混响和反射模拟虚拟房间。

入门指南

如果您是初次接触Qt Spatial Audio ,可以在.qml 文件中使用以下语句将QML类型导入应用程序。

import QtQuick3D.SpatialAudio

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

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

《空间音频概述》对如何使用下面列出的各种类进行了更详细的说明。

QML 类型

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

类型描述
AudioEngine负责处理音频场景的引擎
SpatialSound位于三维空间中的声源。
AmbientSound一个与位置无关的立体声音轨。
AudioRoom定义了一个可生成音频混响和反射声的房间。

C++ 类

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

类描述
QAudioEngine负责处理音频场景的引擎
QSpatialSound位于三维空间中的声源。
QAmbientSound一种与位置无关的立体声音轨。
QAudioRoom定义了一个可生成音频混响和反射的房间。

许可与归属

Qt Spatial Audio 模块可通过The Qt Company提供的商业许可获取。此外,它也可在自由软件许可下使用。这些自由软件许可包括GNU较宽松通用公共许可证第3版(LGPLv3) 或GNU通用公共许可证第3版(GPLv3)。更多详情请参阅Qt许可条款。

请注意,Qt Spatial Audio 不提供基于GNU 通用公共许可证第 2 版(GNU General Public License, version 2)的许可。

此外,Qt 6.12.0 中的Qt Spatial Audio 包含以下宽松许可协议下的第三方模块:

Eigen, version 5.0.1

Mozilla 公共许可证 2.0 以及 BSD 三条款“新”或“修订”许可证

Resonance Audio, version e225aedb5ec76ca6a0fe7079c0b84dbcbb490553

Apache 2.0 许可

pffft, version 02fe7715a5bf8bfd914681c53429600f94e0f536

BSD 3 条款“新”或“修订”许可

参考与示例

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