ESC Route
← 블로그

듀얼 PC 스트리밍에서 A/V 동기화 마스터하기: ms-레벨 오프셋 및 심층 분석 시스템 아키텍처

작성: ESC Route방송·스트리밍
  • 듀얼 PC 스트리밍
  • 오디오 비디오 동기화
  • obs 스튜디오
  • 스트림 대기 시간
  • 오디오 드리프트
  • 캡처 카드
  • nvenc
  • 립싱크
  • 접지 루프
  • 스트리밍 설정

4시간 동안의 라이브 스트리밍을 마치고 나서야 자신의 목소리가 입과 완전히 일치하지 않는다는 사실을 깨달은 적이 있다면 A/V 비동기화로 인한 좌절감을 아실 것입니다. Twitch 및 YouTube와 같은 플랫폼의 최신 고품질 라이브 스트리밍에서는 듀얼 PC 설정이 최고의 표준입니다. 비디오 인코딩에서 게임 작업 부하를 분리하면 하드웨어 병목 현상이 제거됩니다.

그러나 이 아키텍처에는 오디오/비디오 동기화라는 엄청난 과제가 발생합니다. 비디오 데이터는 방대하고 캡처 카드나 네트워크 프로토콜(NDI)을 통한 많은 인코딩/디코딩이 필요하기 때문에 거의 항상 마이크 오디오보다 느리게 스트리밍 PC에 도착합니다. 결과는? 시청자는 총구 섬광을 보기 전에 총소리를 듣습니다.

이 가이드에서는 스트림 대기 시간 뒤에 있는 물리적 및 소프트웨어 메커니즘, OBS Studio에서 밀리초(ms) 오프셋을 마스터하는 방법, 무서운 "오디오 드리프트"를 영구적으로 근절하는 방법에 대한 심도 있는 기술 정보를 제공합니다.

Gemini_Generated_Image_mjz3omjz3omjz3om_clean.png

1. 립싱크의 음향 심리학: 오디오 리드를 용서할 수 없는 이유

동기화 문제를 해결하려면 먼저 인간의 인식을 이해해야 합니다. 물리적 세계에서는 빛이 소리보다 빠르게 이동합니다. 우리의 두뇌는 "비디오 리드/오디오 지연"(천둥 소리를 듣기 전에 멀리 떨어진 번개를 보는 것)을 받아들이도록 배선되어 있습니다.

그러나 라이브 스트리밍은 종종 정반대인 Audio Leads Video를 생성합니다. 이는 자연 물리학을 거스르기 때문에 우리의 두뇌는 아주 작은 오류라도 감지하여 시청자에게 즉각적인 불편함을 안겨줍니다. 글로벌 방송 조직은 이러한 인지 기준을 바탕으로 엄격한 표준을 수립했습니다.

Broadcasting Standard

Max Audio Lead (Fast Audio)

Max Audio Lag (Slow Audio)

Description

ITU-R BT.1359-1

+45 ms

-125 ms

International standard. The universal threshold where humans start noticing lip-sync errors.

EBU R37

+40 ms

-60 ms

European standard. Highly strict on audio-leading errors.

ATSC IS-191

+15 ms

-45 ms

North American DTV standard. Extremely tight margins for premium broadcast quality.

60FPS에서는 단일 프레임을 렌더링하는 데 16.67 ms가 걸립니다. 즉, 마이크가 게임 플레이보다 2~3프레임만 빠르면 이미 방송 표준을 위반하고 있는 것입니다. 목표는 대기 시간을 완전히 0으로 하는 것이 아닙니다. 설정을 +40ms ~ -60ms 범위 내에서 엄격하게 유지하는 것입니다.

2. 비디오 지연은 실제로 어디에서 발생합니까?

듀얼 PC 설정의 비디오 지연은 하드웨어 인터페이스, 네트워크 홉 및 렌더링 파이프라인에 걸쳐 누적됩니다.

  • 캡처 카드 처리: 고급형 PCIe 캡처 카드는 압축되지 않은 프레임을 전송하여 대략 20-30 ms 지연(약 1.5프레임)으로 진정한 "인스턴트 게임뷰"를 달성합니다. 구형 USB 2.0 카드는 내부 H.264 압축을 사용하므로 500~2000ms의 엄청난 지연이 발생합니다.

  • 비디오 인코더 병목 현상(x264 대 NVENC): 사전 설정이 많은 x264(CPU 인코딩)에 의존하면 인코딩 대기열이 쌓일 수 있습니다. NVIDIA의 NVENC가 권장 표준입니다. 전용 GPU 칩과 "Zero-Copy" 파이프라인을 사용하여 CPU 오버헤드 없이 VRAM에서 직접 프레임을 가져와 렌더링 지연을 완전히 제거합니다.

  • NDI(네트워크 장치 인터페이스): 캡처 카드 대신 이더넷을 사용하는 경우 전체 NDI(SpeedHQ 코덱)는 하드웨어와 유사한 대기 시간(16-30ms)을 제공합니다. 그러나 NDI HX2는 100-300ms의 지연을 추가하는 대역폭 절약 압축을 사용합니다. 또한 NDI 오디오는 크기가 작고 NDI 비디오보다 훨씬 빠르게(6ms 미만) 이동하므로 시간이 지남에 따라 심각한 네트워크 지터와 비동기화를 유발합니다.

Gemini_Generated_Image_e5gc5ce5gc5ce5gc_clean.png

3. 오디오 버퍼 및 디지털 아키텍처 이해하기

디지털 오디오는 끊김 현상을 방지하기 위해 함께 처리되는 작은 데이터 덩어리인 "버퍼"를 사용합니다. 이 버퍼의 크기는 기준 오디오 대기 시간을 직접적으로 나타냅니다.

디지털 왕복 지연 시간의 공식은 간단합니다. 지연 시간(ms) = (샘플의 버퍼 크기 / kHz의 샘플 속도) * 2

표준 48kHz 스트리밍 설정의 경우:* 64개 샘플: ~2.7ms(CPU 사용량이 매우 많음)

  • 128개 샘플: ~5.0ms(스트리밍 스위트 스팟)

  • 샘플 512개: ~17.0ms(실시간 모니터링에서 눈에 띄는 지연)

Windows API 라우팅: Voicemeeter와 같은 가상 믹서를 사용하는 경우 WASAPI Shared Mode를 피하세요. Windows OS 믹서를 통해 오디오를 강제 실행하므로 피할 수 없는 10~20ms의 페널티가 추가됩니다. OS 계층을 우회하려면 항상 ASIO 또는 WASAPI Exclusive Mode를 사용하여 오디오 대기 시간을 순수 1~5ms로 낮춥니다.

4. 하드웨어 수정: 접지 루프 잡음 제거

많은 스트리머는 간단한 3.5mm 아날로그 케이블을 통해 게이밍 PC에서 스트리밍 PC로 오디오를 라우팅하여 지연 시간 없는 오디오 전송을 달성합니다. 불행하게도 아날로그 케이블을 통해 두 개의 강력한 PC 전원 공급 장치를 연결하면 Ground Loop 즉, 스트리밍 중에 끔찍한 윙윙거리는 소음을 발생시키는 전위 불일치가 발생합니다.

  • 반창고(접지 루프 절연체): 절연 변압기를 사용하여 오디오를 자기적으로 전달하는 동안 전기 연결을 끊습니다. 그러나 값싼 아이솔레이터는 오디오 품질을 파괴하여 심각한 저음 롤오프와 고조파 왜곡을 유발합니다. 총소리가 밋밋하게 들릴 것입니다.

  • 궁극적인 해결 방법(HDMI 오디오 추출기): 게임용 PC와 캡처 카드 사이에 HDMI 오디오 추출기를 배치합니다. 4K/120Hz 비디오를 캡처 카드로 전달하는 동시에 광학(S/PDIF)을 통해 압축되지 않은 원시 디지털 오디오를 분할합니다. 디지털로 유지되기 때문에 접지 루프 잡음이 전혀 없고 대기 시간도 전혀 없습니다.

5. "박수 테스트": 정확한 지연 측정

지연 오프셋을 추측하지 마십시오. 업계 표준 박수 테스트를 사용하세요.

  1. OBS를 열고 로컬 기록을 누르세요.

  2. 웹캠/게임 플레이 화면에서 두 손을 명확하게 들고 가능한 한 크고 날카롭게 정확히 한 번 박수를 치십시오.

  3. Premiere Pro 또는 DaVinci Resolve와 같은 편집기로 비디오를 가져옵니다.

  4. 손이 닿는 정확한 시각적 프레임을 찾으세요.

  5. 오디오 파형에서 정확한 피크를 찾습니다.

  6. 프레임 차이를 계산합니다. 오디오가 12프레임 앞선 경우(60FPS) 오디오가 대략 200 ms 빠른 것입니다(12프레임 * 16.67ms).

Gemini_Generated_Image_xfy1zgxfy1zgxfy1_clean.png

6. OBS Studio Mastery: 동기화 오프셋 및 VST 해결 방법

정확한 밀리초 지연을 알고 나면 오디오 엔진을 손상시키지 않고 OBS에 올바르게 적용해야 합니다.

포지티브 동기화 오프셋 적용: OBS에서 고급 오디오 속성으로 이동합니다. 마이크가 게임 플레이보다 200ms 빠른 경우 동기화 오프셋에 200를 입력하세요. 이는 오디오를 200ms 동안 버퍼에 유지하여 지연된 비디오와 완벽하게 정렬합니다.

음수 오프셋의 위험: 오디오를 시간을 되돌리기 위해 음수 오프셋(예: -150ms)을 사용하지 마십시오. 미래를 보는 것은 물리적으로 불가능합니다. 대신 OBS는 전체 방송의 다른 모든 소스를 150ms 지연시켜 이를 달성합니다. 음수 오프셋을 너무 멀리(-500ms) 밀면 OBS 오디오 링 버퍼가 충돌하여 오디오가 음소거됩니다. 비디오가 오디오보다 빠른 경우 대신 비디오 소스에 직접 Render Delay 필터를 사용하십시오.

오디오 모니터링 버그: OBS 동기화 오프셋은 스트림 출력에만 적용됩니다. OBS를 통해 자신의 오디오를 모니터링하면 헤드폰에서 지연되지 않고 동기화되지 않은 사운드를 듣게 됩니다.* 해결 방법: OBS 동기화 오프셋을 0으로 설정하세요. 대신 무료 VST 플러그인(예: ReaDelay)을 마이크 소스에 적용하세요. "Dry" 신호를 0%로, "Wet" 신호를 100%로 설정하고 플러그인에 ms 지연을 입력하세요. 이렇게 하면 루트 수준에서 오디오가 지연되어 스트림과 개인 헤드폰 모니터가 모두 수정됩니다.

7. "오디오 드리프트"를 영구적으로 종료

오프셋을 완벽하게 설정했지만 스트림이 시작된 지 2시간이 지나면 오디오가 다시 비동기화됩니다. 이는 Audio Drift, 즉 하드웨어 시계 불일치로 인해 발생하는 동적 비동기화입니다.

규칙 1: 샘플링 속도 통합(48kHz 의무) 게임용 PC가 44.1kHz(CD 품질)로 출력하지만 OBS가 48kHz(비디오 표준)로 설정된 경우 Windows는 실시간 리샘플링 변환을 강제합니다. 단 몇 분만에 이 수학의 반올림 오류가 누적됩니다. 0.17% 클록 변동은 시간 경과에 따른 200ms 드리프트로 해석됩니다. 파이프라인의 모든 단일 장치(Windows 사운드 제어판, Voicemeeter, 캡처 카드, USB 마이크, OBS)는 48000Hz로 잠겨야 합니다.

규칙 2: 장치 타임스탬프 비활성화 저렴한 USB 마이크와 오디오 인터페이스는 하드웨어 클럭 지터로 인해 어려움을 겪습니다. OBS가 하드웨어의 내부 시계를 기반으로 동기화를 시도하면 표류하게 됩니다. OBS에서 오디오 소스 속성으로 이동하여 "장치 타임스탬프 사용"을 선택 취소하세요. 이로 인해 OBS는 하드웨어 시계를 무시하고 매우 안정적인 Windows 시스템 시계를 엄격하게 사용하여 24시간 스트림 동안 오디오를 제자리에 고정합니다.

규칙 3: 최대 오디오 버퍼링 방지 CPU 과부하가 발생하면 OBS는 패닉을 일으키고 오디오 끊김을 방지하기 위해 하드코딩된 제한인 960ms까지 오디오 버퍼를 인위적으로 확장합니다. 이런 일이 발생하면 OBS를 다시 시작할 때까지 오디오가 영구적으로 지연된 상태로 유지됩니다. 항상 OBS를 관리자로 실행하고 Windows 게임 모드를 활성화하여 렌더링 스레드의 우선 순위를 지정하고 버퍼 폭발을 방지하세요.

결론

듀얼 PC 설정에서 완벽한 A/V 동기화를 달성하는 것은 올바르게 보일 때까지 숫자를 추측하는 것이 아닙니다. 여기에는 접지 루프를 방지하기 위해 디지털 오디오를 분리하고, 오디오 드리프트를 없애기 위해 샘플링 속도를 48kHz로 통합하고, 수학적 정확성을 위해 Clap Test를 사용하는 등 전체적인 아키텍처 접근 방식이 필요합니다. 이러한 변수를 마스터함으로써 시청자에게 원활하고 전문적이며 몰입도가 높은 방송 경험을 보장할 수 있습니다.