공간 오디오 개요
Qt Spatial Audio API는 3차원 사운드 장면을 생성할 수 있는 여러 클래스를 제공합니다. 3D 공간에 위치한 사운드를 방출하는 오브젝트와 하나 또는 여러 개의 방을 사용하여 모델링할 수 있는 주변 지오메트리로 정의됩니다. 마지막으로 리스너를 이 사운드 씬에 지정된 위치와 방향으로 배치할 수 있습니다.
C++ 및 QML API를 모두 사용할 수 있습니다.
사운드 씬 만들기
사운드 씬을 생성하려면 먼저 QAudioEngine 을 인스턴스화합니다. 이 엔진은 입력 사운드 데이터와 지오메트리를 처리하여 씬 내의 특정 위치에 배치된 사람이 경험할 수 있는 사운드 씬의 사실적인 표현을 생성합니다.
QAudioEngine::OutputMode 속성은 바이노럴(가상 3D) 렌더링을 사용하는 헤드폰이나 스테레오 또는 서라운드 스피커 구성에 맞게 출력을 최적화하는 데 사용할 수 있습니다.
출력 장치는 QAudioEngine::outputDevice 프로퍼티를 사용하여 선택할 수 있습니다.
엔진 설정이 완료되면 QSpatialSound 오브젝트를 생성하고 QSpatialSound::source 속성을 사용하여 사운드 파일의 URL을 지정하여 다양한 사운드 오브젝트를 씬에 배치할 수 있습니다.
QAudioListener 를 사용하여 사운드 씬을 듣는 사람의 위치와 방향을 정의할 수 있습니다. 엔진당 최대 하나의 리스너만 사용할 수 있습니다. 리스너를 지정하지 않으면 엔진은 리스너가 좌표계의 원점에 양수 z 방향을 향하고 양수 y가 위쪽을 가리키는 좌표계의 원점에 있다고 가정합니다.
사운드 소스와 리스너 외에도 QAudioRoom 개체 집합을 통해 리스너가 사운드를 경험하는 방식에 영향을 미치는 지오메트리를 정의할 수 있습니다. 방은 직사각형이며 각 벽에 다양한 재질을 지원하여 다양한 사운드 반사와 리버브를 통해 색다른 경험을 선사합니다. 청취자가 방 중 하나에 있는 경우 방 효과가 적용됩니다. 청취자가 여러 방 안에 있는 경우 기하학적 볼륨이 가장 작은 방이 우선 적용됩니다.
청취자의 위치 및 방향과 무관한 스테레오 오버레이(예: 배경 음악 또는 음성 해설)가 필요한 경우 QAmbientSound 을 사용하여 사운드 오버레이를 만들 수 있습니다.
방 안에서 이동할 수 있는 하나의 오디오 소스를 보여주는 작은 QWidget 기반 예제는 공간 오디오 패닝 예제를 참조하세요.
참조 문서
C++ 클래스
스테레오 오버레이 사운드 | |
3차원 음장 관리 | |
QAudioEngine에 정의된 음장을 듣는 사람의 위치와 방향을 정의합니다. | |
3D 공간의 사운드 객체 |
QML 유형
스테레오 오버레이 사운드 | |
3D 장면 내의 사운드 객체 관리 | |
오디오 엔진에 의해 정의된 음장을 듣는 사람의 위치와 방향을 정의합니다. | |
3D 공간의 사운드 오브젝트 |
© 2025 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.