콘텐츠로 이동

Windows Audio 형식: 샘플 레이트, 비트 심도 및 부하

목차

짧은 답변: 연구된 Realtek USB Audio endpoint에서 48 kHz / 24-bit 포맷이 실용적인 선택으로 남았습니다. 96 또는 192 kHz로 전환해도 사용 가능한 오디오 엔진 주기나 XAudio2 큐 추정치가 줄어들지 않았습니다. 16-bit의 CPU 이점과 시스템 효과 비활성화의 이점은 확인되지 않았습니다.

상태: 한 시스템에서 측정되었으며 다른 장치에서 재현되지 않았습니다. 결과를 다른 오디오 드라이버, DAC 또는 Windows build에 자동으로 적용할 수 없습니다. 상태 값에 대한 설명은 연구 방법론에 있습니다.

연구는 네 가지 질문에 답했습니다:

  1. 주파수를 높이면 shared-mode 오디오 엔진 주기가 줄어드는가?
  2. 48 kHz에서 16-bit가 24-bit 및 32-bit에 비해 부하를 줄이는가?
  3. 시스템 사운드 효과를 비활성화하면 재현 가능한 부하 감소가 나타나는가?
  4. endpoint rate 변경이 48 kHz 소스에 대한 XAudio2의 내부 작업과 어떻게 관련되는가?

측정은 음질, FPS, 게임 지연 또는 디지털 신호와 스피커 사이의 물리적 지연을 확인하지 않았습니다.

매개변수 값
측정 날짜 2026-08-20
Windows Windows 11 Pro 25H2, x64
OS build 26200.8655
프로세서 AMD Ryzen 7 7800X3D, 8 코어 / 16 스레드
운영 체제 메모리 32 GB
장치 스피커, Realtek USB Audio
드라이버 Realtek USB Audio 6.4.0.2422 (2025-08-07)
원본 device format 48 kHz, 24-bit PCM, stereo
Shared mix format 48 kHz, 32-bit float, stereo
원본 효과 활성화
테스트 사례 17개 트레이스, 사례당 트레이스 하나
트레이스 분석 10초짜리 연속 창 다섯 개

원본 트레이스는 Windows build 26200 분기와 오디오 장치 데이터를 기록했습니다. 전체 revision, Windows edition, 프로세서 모델 및 메모리 용량은 같은 컴퓨터에서 2026-08-24에 추가로 읽었습니다. 측정과 구성 재기록 사이에는 나흘이 지났습니다.

endpoint의 고유 식별자와 원시 시스템 트레이스는 공개되지 않습니다.

사례는 무작위 순서로 수행되었습니다. 각 사례마다 3초 워밍업, 그다음 52초 시스템 트레이스와 다섯 개의 10초 분석 창을 사용했습니다.

두 가지 유형의 부하를 확인했습니다:

  • 주파수, 비트 심도 및 효과를 비교하기 위한 안정적인 shared-mode WASAPI 스트림;
  • 8, 32 또는 64개의 활성 voices와 44,1 또는 48 kHz 소스를 사용한 합성 XAudio2 부하.

Windows Audio의 주요 지표는 audiodg.exe 프로세스의 scheduler running time이며, 초당 실행 밀리초로 표현됩니다. 별도로 XAudio2 performance data, glitches 수 및 트레이스 손실 통계를 읽었습니다.

한 트레이스의 다섯 창은 상관되어 있으며 설명적 분산으로만 사용됩니다. 이들은 다섯 번의 독립 실행이 아닙니다. 전체 시스템의 배경 부하가 변했기 때문에 whole-machine CPU, 절대 DPC 및 ISR은 최종 결론에 사용되지 않았습니다.

Endpoint rate Frames 주기
44,1 kHz 441 10,0 ms
48 kHz 480 10,0 ms
96 kHz 960 10,0 ms
192 kHz 1920 10,0 ms

Endpoint는 10 ms 주기만 반환했습니다. 5 ms 및 2,5 ms 주기는 해당 드라이버에서 지원되지 않았습니다. 주파수를 높이면 주기당 frames 수가 증가했지만 주기 길이는 줄어들지 않았습니다.

이는 특정 장치와 드라이버 조합의 속성입니다. Microsoft는 사용 가능한 buffer 크기를 오디오 드라이버가 결정하며, 애플리케이션은 IAudioClient3를 통해 지원되는 변형을 요청할 수 있다고 명시합니다. 자세한 내용: Low Latency Audio.

표에는 한 트레이스 내 다섯 창의 중앙값과 범위가 나와 있습니다. мс/с 단위는 audiodg.exe 프로세스가 1초 관찰 동안 몇 밀리초 실행되었는지를 나타냅니다.

Endpoint rate audiodg, median 창 범위
44,1 kHz 4,34 ms/s 4,24–4,86 ms/s
48 kHz 4,23 ms/s 4,20–5,63 ms/s
96 kHz 4,77 ms/s 4,72–5,70 ms/s
192 kHz 5,19 ms/s 5,07–5,94 ms/s

이 시리즈에서 96 및 192 kHz는 audiodg.exe 시간 감소를 보이지 않았습니다. 그러나 각 주파수마다 트레이스가 하나였고 배경 부하가 변했습니다. 표는 주파수 간 보편적인 CPU 차이 크기를 증명하지 않습니다.

Device format audiodg, median 창 범위
16-bit 4,07 ms/s 4,03–4,35 ms/s
24-bit 4,23 ms/s 4,20–5,63 ms/s
32-bit 4,20 ms/s 4,16–4,64 ms/s

범위가 겹치고 독립 반복이 충분하지 않습니다. 이 시리즈만으로는 16-bit로 전환하면 재현 가능한 부하 감소가 나타난다고 주장할 수 없습니다.

48 kHz / 24-bit에서 audiodg.exe 중앙값은 효과가 활성화된 경우 4,23 ms/s, 비활성화된 경우 4,39 ms/s였습니다. 평균값은 원본 트레이스의 더 높은 창 하나 때문에 반대 방향으로 변했습니다.

효과 비활성화의 신뢰할 수 있는 이점은 확인되지 않았습니다. 이 결과는 Audio Processing Object 또는 드라이버에 구체적인 문제가 없는데도 효과를 비활성화할 근거가 되지 않습니다.

고정된 48 kHz 소스와 32 voices에 대해 다음 XAudio2 performance data를 얻었습니다:

Endpoint rate Audio cycles/s 48 kHz 대비 큐 추정치
44,1 kHz 25 116 2,31× 37,28 ms
48 kHz 10 870 1,00× 37,27 ms
96 kHz 55 574 5,11× 37,18 ms
192 kHz 87 016 8,00× 37,18 ms

Microsoft는 AudioCyclesSinceLastQuery를 이전 요청 이후 XAudio2가 오디오 처리에 소비한 CPU cycles로 정의합니다. CurrentLatencyInSamples는 드라이버에 마지막으로 전달된 데이터와 재생 중인 데이터 사이의 대략적인 거리입니다. 참조: XAUDIO2_PERFORMANCE_DATA 및 IXAudio2::GetPerformanceData.

이 합성 사례에서 endpoint rate를 높이면 XAudio2의 내부 작업이 증가했지만 큐 추정치는 거의 변하지 않았습니다. 각 변형마다 performance summary가 하나씩 얻어졌으므로, 계수는 이 실행에 대한 설명이며 게임에 대한 보편적인 예측이 아닙니다.

17개 트레이스 모두에서 등록된 내용:

  • 0 audio glitches;
  • 0 손실된 ETW events;
  • 0 손실된 ETW buffers.
  • 연구된 endpoint에서 사용 가능한 shared-mode 주기는 44,1, 48, 96 및 192 kHz에서 10 ms로 유지되었습니다.
  • 주파수를 높여도 합성 사례에서 측정된 XAudio2 큐가 줄어들지 않았습니다.
  • audiodg.exe 시간에서 16-bit의 이점은 확인되지 않았습니다.
  • 시스템 효과 비활성화의 이점은 확인되지 않았습니다.
  • 48 kHz / 24-bit는 장치의 원본 포맷과 일치하며 인접 변형에 비해 실질적인 손실을 보이지 않았습니다.
  • 결과는 다른 오디오 장치나 Windows build에서 재현되지 않았습니다.
  • 전체 Windows revision과 컴퓨터의 일반 구성은 측정 후 나흘 뒤에 기록되었으며 원본 트레이스 내부가 아닙니다.
  • 물리적 DAC, ADC, acoustic 또는 input-to-sound latency는 측정되지 않았습니다.
  • 음질과 차이의 가청성은 평가되지 않았습니다.
  • 특정 게임, FPS 및 frametime에 대한 영향은 확인되지 않았습니다.
  • 개별 vendor APO의 기여는 분리되지 않았습니다.
  • 정확한 전체 CPU 효과는 다른 성능의 프로세서에 적용할 수 없습니다.

원시 ETL은 공개되지 않습니다: 여기에는 프로세스 및 시스템 상태에 관한 무관한 정보가 포함되어 있습니다. 위 표는 수동으로 선별되었으며 고유 endpoint ID, usernames, 로컬 경로 또는 command lines를 포함하지 않습니다.

연구와 사용된 도구는 BoosterX 개발자에게 속하므로, 개발자는 결과에 직접적인 이해관계가 있습니다. 방법론과 적용 범위는 위에 설명되어 있으며, 결론은 공개 데이터와 나열된 공개 출처를 통해 검증할 수 있습니다.

연구된 장치에서는 48 kHz / 24-bit를 유지하고 구체적으로 진단된 문제가 없으면 시스템 효과를 비활성화하지 않는 것이 합리적입니다. 더 낮은 지연을 위해 96 또는 192 kHz를 선택하는 것은 이 연구로 뒷받침되지 않습니다.

이것은 모든 DAC와 드라이버를 위한 보편적인 설정이 아닙니다. 더 작은 shared-mode period를 보고하거나 다른 오디오 경로를 사용하는 장치는 별도의 측정이 필요합니다.

완료 후 48 kHz / 24-bit PCM과 시스템 효과의 원래 상태가 복원되었습니다. 활성 트레이스 세션은 남지 않았습니다.

연구 수행: 2026-08-20. 공개 출처 및 문구 확인: 2026-08-24.

  • 2026-09-20: 구조를 필수 형식에 맞춤 — “제한 사항”과 “상태 복원”을 별도 섹션으로 분리; 소수 구분 기호와 시간 단위를 시리즈 스타일에 맞춤(쉼표, “ms”); 이해 충돌에 관한 디스클레이머 추가.
  • 2026-08-24: 최초 게시; 한 시스템에서의 측정, 결과 이전 범위 및 상태 복원 게시.