Version: Unity 6.0 (6000.0)
언어 : 한국어
앰비소닉 오디오
오디오 레퍼런스

앰비소닉 오디오 디코더 개발

앰비소닉 오디오 디코더는 앰비소닉 오디오 포맷을 스테레오 또는 서라운드 사운드와 같은 특정 출력 포맷으로 디코딩하는 오디오 컴포넌트입니다. 그 포맷은 스피커 설정(메뉴: Edit > Project Settings > Audio > Default Speaker Mode)에 따라 달라집니다(플랫폼이 오브라이드하는 경우 제외).

Unity는 앰비소닉 오디오 지원하지만 빌트인 디코더는 기본적으로 제공하지 않습니다. 대신 타사 디코더를 선택하거나 자체 디코더 플러그인을 사용해야 합니다.

앰비소닉 오디오 디코더 설정

오디오 스페이셜라이저를 설정한 것과 동일한 방식으로 앰비소닉 오디오 디코더를 설정할 수 있습니다. 그러나 AudioPluginInterface.h 파일의 다음 파라미터는 앰비소닉 오디오 디코더 플러그인에만 해당합니다.

UnityAudioEffectDefinitionFlags_IsAmbisonicDecoder

플러그인 스캔 단계에서 UnityAudioEffectDefinitionFlags_IsAmbisonicDecoder 플래그는 이 효과가 앰비소닉 디코더 효과임을 Unity에 알립니다. 플러그인이 앰비소닉 디코더로 작동하도록 활성화하려면 효과에 대한 설명 비트 필드에 플래그를 설정해야 합니다.

`````
definition.flags |= UnityAudioEffectDefinitionFlags_IsAmbisonicDecoder;
`````

Unit의 Project Settings 창에서 플러그인이 옵션으로 나열됩니다(메뉴: Edit > Project Settings > Audio > Ambisonic Decoder Plugin).

UnityAudioAmbisonicData 구조체

UnityAudioAmbisonicData 구조체는 Unity가 스페이셜라이저에 전달하는 UnityAudioSpatializerData 구조체와 유사하며, ambisonicOutChannels 정수를 포함합니다.

ambisonicOutChannels 정수

앰비소닉 디코더는 Unity 오디오 파이프라인 초반에 실행되며, ambisonicOutChannels 변수는 Unity가 사용해야 하는 출력 채널의 개수를 플러그인에 알립니다. ambisonicOutChannels는 자동으로 DefaultSpeakerMode의 채널 개수로 설정됩니다.

예를 들어 4채널인 1차 앰비소닉 오디오 클립을 재생할 때 스피커 모드가 스테레오(2채널)인 경우:

  • 앰비소닉 디코더의 프로세스 콜백은 입력과 출력 채널 개수에 대해 4를 전달합니다.

  • ambisonicOutChannels 필드는 자동으로 2로 설정됩니다.

  • 플러그인은 첫 2개 채널에는 공간화된 데이터를 출력하고 나머지 2개 채널에는 아무 것도 출력하지 않습니다.

앰비소닉 오디오 디코더 플러그인 개발 단계

Unity용 자체 앰비소닉 오디오 디코더 플러그인을 개발하려면 다음 단계를 따르십시오.

  1. 네이티브 오디오 플러그인 SDK를 사용하여 커스텀 오디오 플러그인을 생성합니다.

  2. 효과의 설명 비트 필드에 다음과 같이 플래그를 설정합니다.

    definition.flags |= UnityAudioEffectDefinitionFlags_IsAmbisonicDecoder;
    
  3. 플러그인 설정이 완료되면 파일을 컴파일합니다. 원하는 플랫폼에서 컴파일할 수 있는지 확인하십시오.

  4. 필요에 따라 파일을 .dll 파일로 전환합니다.

  5. 플러그인 파일을 Unity 프로젝트의 Asset 폴더로 옮깁니다.

Unity에서 앰비소닉 오디오 플러그인을 사용하는 상세한 방법은 앰비소닉 오디오를 참조하십시오.

Unity 앰비소닉이 지원하는 포맷

Unity 앰비소닉 소스 프레임워크는 1차 앰비소닉을 지원할 수 있습니다. 플러그인 인터페이스에는 입체 스테레오 및 쿼드 출력을 지원하기 위한 정보가 포함되어 있지만, 플러그인 자체는 지원되는 출력을 결정합니다.

처음에는 앰비소닉 디코더 플러그인이 1차 앰비소닉 소스와 입체 스테레오 출력을 지원합니다. 2차 앰비소닉은 지원되지 않습니다.

프레임워크는 모든 앰비소닉 포맷에 대해 사용할 수 있습니다. 클립의 포맷이 앰비소닉 디코더 플러그인의 예상 포맷과 일치하면 앰비소닉 오디오가 문제 없이 작동합니다. Unity가 선호하는 앰비소닉 포맷은 B-포맷으로, ACN 컴포넌트 순서를 사용하며 SN3D 방식으로 정규화합니다.

추가 정보

플러그인을 개발하는 자세한 방법은 네이티브 오디오 플러그인 SDK오디오 스페이셜라이저 SDK를 참조하십시오. 또한 오디오 플러그인 SDK를 다운로드해야 합니다.

앰비소닉 오디오
오디오 레퍼런스