Version: 2021.1
오디오 프로파일러
오디오 클립

앰비소닉 오디오

앰비소닉은 청취자를 완전히 둘러쌀 수 있는 사운드를 표현하는 오디오 타입입니다. 오디오 스카이박스를 사용하여 멀리 있는 주변음 효과도 낼 수 있으며 특히 360도 비디오와 애플리케이션에 유용합니다.

앰비소닉은 다중 채널 포맷으로 저장됩니다. 앰비소닉을 사용하면 각 채널을 특정 스피커에 매핑하지 않고 사운드필드가 더 전체적인 방법으로 표현됩니다. 이렇게 하면 청취자의 방향(즉 VR에서 사용자의 머리 회전 방향)을 기준으로 사운드필드를 회전할 수 있습니다. 스피커 설정과 일치하는 포맷으로 사운드필드를 디코딩할 수도 있습니다.

앰비소닉 오디오 디코더 선택

오디오 설정(메뉴: Edit > Project Settings > Audio)을 열면 프로젝트에서 앰비소닉 오디오 디코더를 선택할 수 있습니다. 프로젝트의 사용 가능한 디코더 리스트에서 Ambisonic Decoder Plugin 을 선택합니다. Unity에는 제공되는 빌트인 디코더가 없으나, 일부 VR 하드웨어 제조사의 경우 오디오 SDK에 Unity용 빌트인 디코더가 있습니다. 타겟 플랫폼 제조사 문서를 확인하여 프로젝트에 적합한지 알 수 있습니다.

오디오 설정의 앰비소닉 옵션
오디오 설정의 앰비소닉 옵션

앰비소닉 오디오 클립 임포트

앰비소닉 오디오 클립을 임포트하려면 ACN 컴포넌트 순서와 SN3D 정규화를 사용하는 다중 채널 B-포맷 WAV 파일을 임포트합니다. 오디오 클립용 인스펙터 창에서 Ambisonic을 활성화합니다.

오디오 클립 인스펙터의 앰비소닉 옵션
오디오 클립 인스펙터의 앰비소닉 옵션

오디오 소스를 통한 앰비소닉 오디오 클립 재생

오디오 소스를 통한 앰비소닉 오디오 클립 재생 방법은 다음과 같습니다.

  • 오디오 소스에 WAV 파일을 Audio Clip으로 할당합니다.
  • Spatialize 옵션을 비활성화합니다. 앰비소닉 오디오 클립을 재생하면 클립이 자동으로 프로젝트에서 선택된 앰비소닉 오디오 디코더를 거쳐 디코딩됩니다. 디코더는 앰비소닉 포맷으로 된 클립을 프로젝트에서 선택된 스피커 포맷으로 변환합니다. 이 디코딩 과정 중에 오디오 소스와 오디오 리스너의 방향에 기반하여 공간화가 미리 처리됩니다.

Unity로 앰비소닉 오디오 클립을 재생하면 앰비소닉 클립은 먼저 필요한 경우 압축을 풀고, 디코딩하여 프로젝트에 선택된 스피커 모드로 변환합니다. 그런 다음 오디오 소스의 효과를 적용하여 재생합니다.

참고: 앰비소닉 오디오 클립에 대해서 리버브 존이 비활성화됩니다.

오디오 플러그인 인터페이스 변경 사항

For information on how to author a plugin, see the Unity User Manual pages on the Native Audio Plugin SDK and Audio Spatializer SDK. You should also download the Audio plugin SDK.

앰비소닉 오디오 디코더에 대해 AudioPluginInterface.h에 두 가지 변경 사항이 있습니다.

  • 새로운 효과 정의 플래그, UnityAudioEffectDefinitionFlags_IsAmbisonicDecoder.
  • 새로운 데이터 구조체, UnityAudioAmbisonicData.

UnityAudioEffectDefinitionFlags_IsAmbisonicDecoder

이 플래그는 플러그인 스캔 단계가 진행되는 동안 이 효과가 앰비소닉 디코더임을 전달합니다. Unity를 통해 디코더를 오디오용 프로젝트 설정에서 앰비소닉 디코더 옵션으로 표시합니다.

definition.flags |= UnityAudioEffectDefinitionFlags_IsAmbisonicDecoder;

UnityAudioAmbisonicData 구조체

The UnityAudioAmbisonicData struct is similar to the UnityAudioSpatializerData struct that Unity passes into spatializers, but with the addition of an ambisonicOutChannels integer. For more information on the UnityAudioSpatializerData struct, see the Audio Spatializer SDK documentation on spatializer effect meta data.

UnityAudioAmbisonicData 구조체에 대해 ambisonicOutChannelsDefaultSpeakerMode의 채널 카운트로 설정해야 합니다. 앰비소닉 디코더는 Unity에 있는 오디오 파이프라인에서 초기에 실행되고, ambisonicOutChannels는 사용해야 하는 출력 채널의 개수를 플러그인에 알립니다.

4채널인 1차 앰비소닉 오디오 클립을 재생할 때 스피커 모드가 스테레오(2채널)라면 앰비소닉 디코더의 프로세스 콜백은 입력과 출력 채널 개수가 4로 전달됩니다. ambisonicOutChannels 필드는 2로 설정됩니다. 플러그인은 첫 2개 채널에는 공간화된 데이터를 출력하고 나머지 2개 채널에는 아무 것도 출력하지 않습니다.

Unity 앰비소닉 소스 프레임워크는 1차 앰비소닉을 지원합니다. 플러그인 인터페이스에는 입체 스테레오, 4채널 출력을 지원하기 위한 정보가 포함되지만, 실제 지원되는 출력은 플러그인에 따라 결정됩니다. 초기에는 앰비소닉 디코더 플러그인이 1차 앰비소닉 소스와 입체 스테레오 출력만 지원할 예정이며 2차 앰비소닉은 지원하지 않습니다.

프레임워크에는 사용할 수 있는 여러 앰비소닉 포맷 중 특정 포맷에만 해당되는 사항이 없습니다. 클립의 포맷이 앰비소닉 디코더 플러그인이 예상한 포맷과 일치하면 앰비소닉 오디오가 문제 없이 작동할 것입니다. Unity의 기본 앰비소닉 포맷은 ACN 컴포넌트 순서와 SN3D 정규화를 사용하는 B-포맷입니다.


  • 2017–08–10 페이지 게시됨
  • Unity 2017.1의 새로운 기능 NewIn20171
오디오 프로파일러
오디오 클립