Skip to main content
업데이트: 2019년 4월 29일 XBOX One의 오디오 아키텍처는 이전 세대 플랫폼의 성공 사례와 트레이드오프 사이에서 균형을 추구하는 동시에 차세대 구현의 증가하는 기술적 요구를 예측합니다. 이 아키텍처는 압축, 믹싱, 필터링과 같은 오디오 렌더링의 가장 일반적인 측면에 대해 여러 동시 보이스에서 하드웨어 가속 경로를 제공합니다. 또한 이 아키텍처는 소프트웨어 처리 소비를 위한 공유 리소스 모델을 제공하여, 개별 타이틀이 CPU 사용에서 적용할 사용자 지정 신호 조작의 종류와 양을 선택할 수 있게 합니다. 이 항목에서는 XBOX One 오디오 아키텍처의 소프트웨어 및 하드웨어 특성을 설명합니다. 또한 이러한 특성이 구현 중 선택에 어떻게 영향을 미칠 수 있는지에 대한 자세한 내용을 제공합니다.

오디오 아키텍처 개요

디코딩, 신디시스, 렌더링, 기타 작업에 사용될 수 있는 일반 CPU 성능 외에도, XBOX One은 오디오 처리에 전용이며 통합 메모리 공간 전체에 액세스할 수 있는 여러 하드웨어 구성요소(그림 1)를 제공합니다. 그림 1. 하드웨어 가속 오디오 구성요소 그림
  • Scalable Hardware Audio Processing Engine(SHAPE)은 XBOX One에서 오디오 기능의 대부분을 차지하지만 다른 프로세서도 상당한 기능을 기여합니다.
  • Audio Control Processor(ACP)는 상태 관리와 스케줄링을 제공합니다.
  • Audio Scalar Processor(ASP)는 스칼라 float 및 벡터 정수 연산을 지원합니다.
  • Audio Vector Processor(AVP)는 벡터 float 연산을 지원하며 주로 Multichannel Echo Cancellation(MEC)용으로 설계되었습니다.

SHAPE

SHAPE는 오디오 처리에 전용인 코어 하드웨어입니다. SHAPE는 보이스 단위로 일반적으로 요구되는 많은 기본 동작을 수행합니다. SHAPE를 사용하면 - 높은 폴리포니와 복잡한 신호 라우팅에도 - CPU 영향을 줄일 수 있으며, 여전히 타이틀이 디지털 신호를 사용자 지정 처리하거나 분석 또는 소프트웨어 신디시스를 수행하려는 경우 SHAPE-CPU 데이터 교환의 유연성을 제공합니다. SHAPE는 128 샘플 블록에서 동작하며, 각 샘플은 CPU가 사용할 때 24비트 정수 해상도 또는 32비트 float를 지원합니다. 48KHz에서 이는 2.67ms의 오디오 프레임을 나타내며, XBOX 360의 256 샘플 블록보다 더 높은 타이밍 해상도와 더 낮은 지연을 제공합니다. SHAPE는 일반적인 오디오 작업에 초점을 맞춘 다음 여섯 개의 고정 기능 블록을 제공합니다.
  • XMA 디코더 XMA는 512개의 XMA 형식 보이스의 동시 디코드를 제공합니다. 이는 XBOX 360용으로 개발된 지각 코덱이며, 일반적으로 6:1에서 14:1 사이의 사용자 조정 가능한 품질과 압축을 제공합니다.
  • SRC 고품질, 전용, 폴리페이즈 Sample Rate Convertor(SRC) 블록은 512개의 모노 채널 오디오 데이터의 고성능, 고품질 주파수 리샘플링을 허용합니다. SRC는 형식 변환, 도플러 효과 또는 피치 변형에 사용될 수 있습니다.
  • 믹스 버퍼 믹스 버퍼는 128개의 in-place 믹스 채널을 위한 전용 어큐뮬레이터입니다. 메모리에 액세스할 필요가 없으며, 가상으로 사용 가능한 총 8192개 채널이 있습니다. 믹스 버퍼는 또한 디버깅 및 모니터링 목적의 대략적인 미터링 및 클리핑 감지를 제공합니다.
  • FLTVOL FLTVOL 모듈은 2560개의 보이스 또는 믹스에 대한 볼륨 스케일링과 state-variable 필터 구현을 제공합니다. 이는 Windows와 XBOX 360에서 사용 가능한 소프트웨어 노출 XAudio2 보이스별 필터와 유사합니다. 필터는 low pass, high pass, band pass, notch 필터링을 제공할 수 있습니다. 필터는 Q 및 컷오프/중심 주파수 매개변수를 노출합니다. 가장 일반적으로는 거리 및 폐색 모델링에 사용됩니다.
  • EQ/CMP EQ/CMP 모듈은 최대 512개 채널의 3밴드 이퀄라이제이션 및 다이내믹 레인지 컴프레션을 제공합니다. EQ는 직렬로 연결된 세 개의 바이쿼드 필터로 구성됩니다. 컴프레서는 하드 니 응답을 가지며 사이드체인 및 익스팬더 기능을 지원합니다.
  • DMA SHAPE는 통합 메모리 공간과 오디오 데이터를 주고받기 위한 전용 Direct Memory Access(DMA) 하드웨어를 가지고 있습니다. DMA는 sample-rate converter 없이 전송하기, 최종 믹스 채널 전송하기, SHAPE 기반 오디오 그래프 중간에 CPU 기반 처리 등과 같은 시나리오를 가능하게 합니다.
일반적인 오디오 그래프의 재생은 이러한 프로세서 각각을 광범위하게 사용할 것으로 예상됩니다.

ACP

ACP는 north bridge에 있는 다른 모든 오디오 하드웨어 구성요소의 상태 관리와 스케줄링을 제공합니다. 프레임 내 처리에 CPU를 관여시키거나, CPU가 도입할 수 있는 동기화 또는 지연을 관여시킬 필요가 없습니다.

ASP

ASP는 스칼라 float와 벡터 정수 연산을 지원합니다. 하드웨어에는 음성 채팅 코덱이 제공됩니다: 음성 채팅 헤드셋과 콘솔 간의 무선 통신을 관리하는 코덱과, 네트워크 음성 통신을 위한 SILK 코덱 음성 데이터를 압축 및 압축 해제하는 데 사용되는 코덱입니다.

AVP

AVP는 벡터 float 연산을 지원하며 주로 MEC와 차세대 Kinect 오디오 입력을 위한 기타 노이즈 감소용으로 설계되었습니다. AVP는 음성 인식과 채팅/임의 오디오 입력 사용을 지원합니다. MEC 및 기타 노이즈 감소 프로세스는 출력 스피커에 더 가까이 위치한 talk 마이크에서도 사용자의 발화 오디오 데이터를 더 명확한 스트림으로 제공합니다.

오디오 및 XBOX One 하드웨어

XBOX One의 오디오 출력 파이프라인은 이전 세대 콘솔에 있던 digital-to-analog converter(DAC)를 제거합니다. 모든 오디오는 엄격히 디지털 영역에서 HDMI 1.4a를 통해 또는 S/PDIF 광학 출력으로 출력됩니다. HDMI 1.4a는 콘솔에서 고품질, 선형, 7.1 채널 Pulse Code Modulation(PCM)이 전송될 수 있게 합니다. 타이틀은 기본적으로 48KHz의 출력 샘플링 레이트와 24비트의 비트 뎁스로 설정됩니다. XBOX One은 또한 스테레오 헤드셋으로의 최대 4개의 동시 출력을 지원할 수 있습니다. 각 출력은 헤드셋이나 S/PDIF 출력과 같이 출력 형식에 따라 필요에 따라 다운믹스되는 고유한 다채널 믹스를 나타낼 수 있습니다. XBOX One은 Kinect 마이크 어레이, 음성 채팅 헤드셋, 클라우드 기반 리소스와 같은 다양한 소스로부터 오디오 입력을 수용합니다. 또한 오디오는 CPU 기반 계산을 통해 알고리즘적으로 생성될 수 있고, CPU에서, SHAPE 하드웨어 구성요소를 통해, 또는 이 두 가지 방법을 모두 사용하여 실시간으로 조작될 수 있습니다.

압축 형식

XBOX One은 XMA2에 대한 하드웨어 압축 해제를 지원하며, 이는 압축되지 않은 PCM에 비해 상당한 저장 공간, 대역폭, 메모리 절감을 제공합니다. XAudio2는 또한 xWMA와 Adaptive Differential Pulse Code Modulation(ADPCM) 모두에 대한 소프트웨어 디코딩 지원을 제공합니다. ADPCM 형식의 계산은 오버헤드가 낮지만, 지각적 코덱이 아니기 때문에 낮은 샘플링 레이트에서 눈에 띄는 아티팩트를 표현할 수 있습니다.
xWMA와 XMA2는 모두 Windows Media Audio(WMA)용으로 개발된 코덱에서 유래했으며, 둘 다 XBOX 게임용으로 특별히 개발되었습니다. XMA2에서 사용하는 사용 가능한 코덱과 매개변수의 부분집합은 xWMA에서 사용하는 부분집합보다 작습니다. xWMA와 XMA2 모두 XBOX용으로 개발되었지만, 서로 교환 가능하지 않습니다: 각 파일 형식의 헤더가 다르며, 형식은 PC 버전의 Windows와 호환되지 않습니다. XMA2와 xWMA에서 사용하는 코덱도 약간 다르므로, 각각은 사용된 압축 시스템에서 자체 아티팩트를 갖게 됩니다.
다음 표는 형식, 대략적인 압축, 루프 기능을 보여줍니다. MP3, OGG 및 기타 게임 asset용 오디오 형식은 CPU에서 실행되는 타이틀 또는 미들웨어 소프트웨어 코덱을 통해 제공될 수 있습니다.

오디오 및 XBOX One 앱 모델

포그라운드에 있는 동안 앱은 SHAPE 하드웨어에 대한 완전한 액세스 권한을 가집니다. 그러나 백그라운드 고정, picture-in-picture 또는 다른 시나리오로 밀려나면 앱은 하드웨어 제어를 포기합니다. 기본적으로 하드웨어는 일시 중단되며 타이틀이 포그라운드로 돌아올 때 재개됩니다. 이는 소프트웨어 그래프가 일시 중단되는 Exclusive Resource Apps(ERA)에도 해당됩니다. 타이틀은 오디오 그래프를 해체하고 resume 시 재구성할 수 있는 옵션이 있습니다. 특히 스트리밍 라디오와 같은 백그라운드 음악을 재생하는 Shared Resource Apps(SRA) 등 일부 타이틀은 일시 중지되어 있는 동안에도 오디오의 일부 측면이 계속 재생되도록 선택할 수 있습니다. 이러한 시나리오에서 타이틀은 하드웨어에서 소프트웨어 렌더링으로 원활한 전환을 시도할지, 아니면 백그라운드 재생을 위한 오디오를 항상 소프트웨어 전용 파이프라인을 통해 재생할지 신중히 평가해야 합니다. 이는 압축 형식과 CPU 비용에 영향을 미칩니다. 예를 들어 XMA 압축 asset은 SHAPE 하드웨어 사용이 필요하므로 백그라운드 앱에서는 디코드할 수 없습니다. CPU 리소스를 할당하기로 선택한 타이틀의 경우, XAudio2 오디오 엔진은 많은 기능에 대해 소프트웨어 경로를 제공합니다. 실용적인 경우 이러한 함수는 하드웨어 기능을 흉내내지만, 일부 계산 집약적 처리는 소프트웨어에서 사용할 수 없거나 다르게 구현됩니다. 앱 상태에 따라 하드웨어 처리에서 소프트웨어 처리로 전환하는 타이틀은 오디오 파이프라인을 계획할 때 다음 표에 나타난 이러한 차이점을 고려하고 싶을 수 있습니다. | 기능| XBOX One 하드웨어 기능 | XBOX One 소프트웨어 기능 | 동등한가? | | --- | --- | --- | --- | --- | --- | --- | --- | --- | | 샘플 레이트 변환| SRC, 폴리페이즈| XAudio2 선형 보간| 아니오 | | 파라메트릭 EQ| EQ/CMP, 3밴드 EQ| 단순 1밴드 EQ 또는 커스텀 디지털 신호 처리(DSP)| 아니오 | | 컴프레서/리미터| EQ/CMP, 하드 니, 사이드체인 및 익스팬더 기능| 커스텀 DSP| 아니오 | | 필터링| FLTVOL, state-variable 필터| XAudio2 state-variable 필터, 단일 폴 LPF 또는 커스텀 DSP| 예 | | 믹싱| 믹스 버퍼; 클립 감지 및 미터링 포함| 소프트웨어 믹싱; 클립 감지 및 미터링을 위한 커스텀 DSP| 믹싱에 대해 예 |

XBOX One 오디오 라이브러리

XBOX One은 일반적인 게임 사용에 대해 두 개의 오디오 렌더링 API를 지원하며, 사용자 음악 재생을 위한 Windows 8 Media Foundation API의 변형도 지원합니다.
  • XAudio2는 이미 XBOX 360과 Windows(Windows XP에서 Windows 8까지)에서 사용 가능한 게임 중심 오디오 라이브러리입니다. 대부분의 타이틀 개발에는 XAudio2를 권장합니다.
  • Windows Audio Session API(WASAPI)는 소프트웨어로만 구현된 사용자 지정 파이프라인에 사용될 수 있습니다. WASAPI는 오디오 엔드포인트 기능만 제공합니다. 클라이언트는 압축 해제, 샘플 레이트 변환, 믹싱, 디지털 신호 처리, XBOX One의 오디오 하드웨어 구성요소와의 상호작용을 구현해야 합니다. WASAPI는 가장 일반적으로 오디오 미들웨어 솔루션에 의해 사용됩니다.
Microsoft Cross-Platform Audio Creation Tool(XACT)과 DirectSound는 XBOX One 환경에서 지원되지 않습니다. 이전에 이러한 기술을 사용한 타이틀은 이 항목에서 식별된 솔루션을 고려하거나 승인된 XBOX One 오디오 미들웨어 옵션을 사용해야 합니다.

마무리: 오늘 시작하기

XBOX One용 개발을 시작하는 타이틀 콘텐츠 제작자와 구현자는 계획을 시작할 때 다음을 고려할 수 있습니다.
  • 7.1 오디오를 계획하십시오. 이는 사전 렌더링된 콘텐츠와 실시간 콘텐츠의 패닝과 포지셔닝을 포괄합니다. 여러분 타이틀이 각 오디오 채널을 어떻게 사용할지 고려하십시오.
  • 오디오 압축 옵션을 탐색하고 이해하십시오. XMA, xWMA, ADPCM 압축의 음향과 크기 차이를 이해하십시오. XBOX One의 예상 예산 목표를 이해하려면 콘텐츠의 품질 및 비트 레이트 설정을 평가하십시오.
  • 특히 타이틀이 폐색 또는 장애 시뮬레이션 구현을 의도한다면, 하드웨어 가속 DSP의 사용 패턴을 고려하십시오.

함께 보기

XAudio2 개요 ADPCM 개요 SHAPE 개요 XMA2 개요 xWMA 개요
마지막 수정일 2026년 8월 24일