SVC, 하나의 비트스트림으로 모든 화질에 대응하는 법

H.264/AVC 확장 규격인 SVC의 계층 구조와 전송·오류 복원 메커니즘을 정리하고, 시뮬캐스트와 비교해 언제 SVC를 선택해야 하는지 살펴본다.

2026-08-12 · 최초 발행 2025-11-26

하나의 비트스트림에 여러 화질을 담는다는 것

H.264/AVC의 확장 규격인 SVC(Scalable Video Coding)는 기저계층(Base layer)과 하나 이상의 향상계층(Enhancement layer)을 한 비트스트림 안에 넣어, 해상도·프레임레이트·비트율(화질)을 계층별로 확장하는 부호화 방식이다. 표준은 H.264/AVC Annex G이고 RTP로 전송할 때는 RFC 6190(H.264 SVC RTP Payload)을 따른다. 기저계층은 일반 AVC 호환 디코더로도 단독 디코딩할 수 있다.

목적은 명확하다. 네트워크 상태나 단말 성능, 디스플레이 제약이 바뀔 때마다 재인코딩하지 않고 계층만 골라 적응 스트리밍을 하려는 것이다.

기저계층과 향상계층

기저계층은 H.264/AVC와의 역호환을 유지하면서 최소한의 해상도·프레임레이트·품질을 보장하는 기본 스트림이다. 네트워크가 열화되면 기저계층만 수신·복원해도 서비스는 끊기지 않는다. 향상계층은 공간·시간·SNR(화질) 확장을 선택적으로 얹는 구독형 구조로, 계층 간 예측을 활용해 증분적 비트율로 품질을 끌어올린다.

여러 방향으로 확장하는 계층 구조

공간적 확장성

QCIF→CIF→4CIF처럼 해상도 계층을 두고, 디스플레이·대역폭에 맞춰 단계를 고른다. 공간 업샘플링과 계층 간 예측으로 효율을 유지한다.

시간적 확장성

15→30→60Hz처럼 프레임레이트 계층을 두고, 계층적 P 구조(Hierarchical P)를 기반으로 삼아 드롭·선택 시에도 시간적 일관성을 지킨다.

화질(SNR) 확장성

같은 해상도·프레임에서 양자화 정밀도(PSNR/SSIM)를 높이는 방향이다. 비트율을 증분으로 늘리며 시각적 품질을 세밀하게 조정한다.

비트스트림과 전송 경로

NAL 단위마다 계층 식별자(temporal_id, dependency_id, quality_id)가 붙는다. 기저계층은 독립적으로 디코딩할 수 있고, 향상계층은 기저 혹은 하위 계층에 종속된다.

전송 경로는 입력(원본) → 인코더(SVC) → 기저/향상 NAL 분리 → 패킷화(RTP/MP4) → 네트워크 → 수신 측 계층 선택 → 디코딩·렌더링 순으로 흐른다. 계층을 고르는 기준은 가용 대역폭, 지연, 패킷손실, 디코더 부하(CPU/GPU), 화면 크기다.

손실이 나면 향상계층부터 제거하고 기저계층을 유지해 서비스를 지속한다. 필요하면 FEC/NACK/RTX를 적용하고, 키프레임 간격과 참조 계층 깊이를 최적화해 오류 전파를 최소화한다.

여유 충분제약 존재입력 영상SVC 인코더기저계층 NAL향상계층 NAL들패킷화/RTP 혹은 MP4네트워크수신/버퍼대역폭/지연/손실 측정기저+향상 선택기저만 혹은 일부 향상 선택디코더렌더링

실무에서 쓰이는 곳

적응형 라이브 스트리밍(ABR)에서는 단일 비트스트림 안에서 계층만 골라 적응하므로 트랙 전환 비용이 줄어든다. 화상회의·원격교육에서는 네트워크·단말별로 해상도·프레임을 차등 제공하고, MCU/SFU에서 계층 스위칭이 단순해진다. 모바일·무선 환경에서는 신호 품질이 흔들릴 때 향상계층만 제거해 재버퍼링을 줄인다. 영상 감시(CCTV)는 저장 시 기저계층 위주로 두고 포렌식 분석이 필요할 때 향상계층을 추가 복원한다. CDN·엣지에서는 같은 원본으로 여러 품질을 제공해 저장본 수를 줄이고 캐시 효율을 높인다.

도입과 운영에서 챙길 것

인코딩 전략

계층 설계는 기저 1개에 공간·시간·SNR을 섞은 향상계층 23개를 두는 편이 무난하다. 계층을 지나치게 잘게 나누면 인코딩 복잡도가 올라간다. GOP·참조 구조는 계층적 P와 짧은 IDR 주기(예: 12초)로 오류 회복성을 높이고, 참조 깊이를 제한해 지연을 통제한다.

전송·패킷화

RTP(H.264 SVC)는 RFC 6190을 따르고, NAL 단편화(FU-A)와 MTU를 고려하며 계층별로 우선순위 큐를 둔다. 혼잡 제어는 대역폭 추정(BWE)과 계층 온/오프를 연동시키고, 손실률이 임계(예: >2%)를 넘으면 향상계층을 즉시 중단한다.

디코더·플레이어

기저계층 우선 디코딩 경로는 항상 유지하고, 계층이 추가·제거될 때마다 DPB(Decoded Picture Buffer)를 관리해야 한다. 일반 AVC 디코더는 기저계층만 처리하며, 전체 SVC 지원 여부는 디바이스·플레이어마다 달라 최신 정보를 확인해야 한다.

시뮬캐스트와 비교하면

지표 SVC 시뮬캐스트
성능(코딩 효율) 단일 계층 대비 10~20% 오버헤드 가능(계층 신택스/참조) 해상도별 완전 독립 인코딩, 각 트랙 최적화 유리
확장성 계층 온디맨드 선택, 단일 비트스트림 관리 트랙 전환 필요, 저장본/매니페스트 증가
일관성 계층 간 전환 시 시각적/타이밍 일관성 우수 트랙 전환 시 키프레임 대기/버퍼 스파이크 발생 가능
안정성 손실 시 향상계층 드롭으로 서비스 유지 전환 실패/매칭 오류에 취약
운영 편의 저장·배포 단순화, 플레이어/디코더 요구 조건 높음 광범위 호환성, 저장/인코딩/전송 비용 증가

표의 수치는 콘텐츠·구현·네트워크에 따라 달라지며 최신 정보를 확인해야 한다.

기대할 수 있는 효과

가변 네트워크에서도 중단 없이 품질을 적응시켜 재버퍼링과 해상도 전환 충격을 줄일 수 있다. 단일 비트스트림으로 관리하는 만큼 저장본·패키징 수가 줄고 CDN 캐시 효율도 오른다. 공간·시간·SNR 세 축을 따로 제어할 수 있어 디바이스별로 목표 QoE를 맞추기 쉽고, SFU·엣지에서는 패킷 필터링만으로 품질을 조절할 수 있어 서버 사이드 트랜스코딩 의존도가 줄어든다.

다만 기저계층의 AVC 호환성을 지키면서 향상계층으로 확장하는 구조는 인코딩 복잡도를 높이고, 일부 환경에서는 호환성 문제가 남는다. 표준(RFC 6190)과 디바이스 호환성은 배포 환경마다 최신 정보를 확인해야 한다.

SVC적응형 스트리밍H.264영상 코덱RTP