적응형 비트레이트 스트리밍이란?
ABR은 동일한 동영상의 여러 버전, 즉 렌디션(rendition) 을 준비하는 것에서 시작합니다. 각 렌디션은 일반적으로 서로 다른 비트레이트와 해상도의 조합으로 구성됩니다.
예를 들면 다음과 같습니다.
- 1080p, 5 Mbps
- 720p, 3 Mbps
- 480p, 1.5 Mbps
- 360p, 800 Kbps
이러한 렌디션을 모두 합친 것을 비트레이트 래더(bitrate ladder)라고 합니다.
재생 중에는 플레이어가 이러한 품질 단계 사이를 전환합니다. 사용 가능한 대역폭이 감소하면 재버퍼링 위험을 줄이기 위해 더 낮은 비트레이트의 렌디션을 요청할 수 있습니다. 네트워크 상태가 개선되면 다시 더 높은 품질의 버전으로 전환할 수 있습니다.
적절한 비트레이트 래더는 획일적인 고정값을 사용하는 것이 아니라 콘텐츠, 코덱, 시청자, 디바이스, 네트워크 환경에 따라 설계해야 합니다.
적응형 비트레이트 스트리밍은 어떻게 작동하나요?
일반적인 ABR 워크플로는 다음과 같습니다.
소스 동영상 → 트랜스코딩 → 여러 렌디션 → 세그먼트화 및 패키징 → 매니페스트 → CDN → 동영상 플레이어
1. 여러 렌디션 생성
소스 동영상을 인코딩 또는 트랜스코딩하여 비트레이트, 해상도 또는 기타 인코딩 설정이 서로 다른 여러 버전을 생성합니다.
동영상 트랜스코딩을 사용하면 하나의 소스 콘텐츠에서 이러한 다양한 출력 버전을 만들 수 있습니다. 예를 들어 스트리밍 플랫폼에서는 1080p, 720p, 480p, 360p 버전을 준비할 수 있습니다.
2. 비트레이트 래더 구성
이러한 렌디션이 플레이어가 선택할 수 있는 비트레이트 래더를 구성합니다.
잘 설계된 비트레이트 래더는 불필요한 버전을 추가하지 않으면서 플레이어에 실질적인 품질 선택지를 제공합니다. 각 단계 사이의 차이가 너무 크면 전환 시 화질 변화가 눈에 띌 수 있습니다. 반대로 비슷한 렌디션을 지나치게 많이 만들면 재생 품질 개선 효과 없이 처리 및 저장 공간 요구사항만 늘어날 수 있습니다.
3. 동영상 세그먼트화 및 패키징
각 렌디션은 짧은 미디어 세그먼트로 나뉩니다. 플레이어가 품질 단계 사이를 원활하게 전환할 수 있도록 각 렌디션의 대응 세그먼트를 서로 정렬해야 합니다.
이후 콘텐츠는 HLS 또는 MPEG-DASH와 같은 적응형 스트리밍 기술에 맞게 패키징됩니다.
4. 매니페스트 생성
플레이어는 어떤 렌디션과 세그먼트를 사용할 수 있는지 알아야 합니다.
HLS에서는 이 정보가 .m3u8 플레이리스트를 통해 제공됩니다. MPEG-DASH는 .mpd 형식의 Media Presentation Description을 사용합니다.
5. 플레이어의 동적 적응
플레이어는 재생 상태를 모니터링하고 적절한 렌디션에서 세그먼트를 선택합니다.
ABR 알고리즘마다 예상 처리량, 버퍼 상태, 최근 다운로드 속도, 디바이스 성능, 재생 안정성 등의 요소에 서로 다른 가중치를 적용합니다. 중요한 점은 전체 재생 세션 동안 상황에 따라 이러한 선택이 계속 달라질 수 있다는 것입니다.
비트레이트 래더란?
비트레이트 래더는 ABR 플레이어가 선택할 수 있는 품질 단계의 집합입니다.
상위 단계는 일반적으로 더 나은 화질을 제공하지만 더 많은 대역폭이 필요합니다. 하위 단계는 필요한 대역폭이 적기 때문에 네트워크 연결 상태가 악화될 때 보다 안정적인 선택지가 됩니다.
따라서 비트레이트 래더를 설계할 때는 화질, 대역폭 사용량, 저장 공간, 인코딩 비용, 디바이스 요구사항, 재생 안정성 사이의 균형을 고려해야 합니다.
콘텐츠 유형도 중요합니다. 동일한 해상도라도 움직임이 적은 인물 중심 영상과 비교하면 빠르게 움직이는 스포츠 영상은 화질을 유지하기 위해 더 높은 비트레이트가 필요할 수 있습니다. 또한 동영상 코덱 선택에 따라 각 렌디션을 얼마나 효율적으로 압축할 수 있는지도 달라집니다.
적응형 비트레이트 스트리밍에서 HLS와 MPEG-DASH 비교
HLS(HTTP Live Streaming)와 MPEG-DASH는 적응형 스트리밍에 널리 사용되는 두 가지 기술입니다.
| 항목 | HLS | MPEG-DASH |
|---|---|---|
| 매니페스트 | .m3u8 |
.mpd |
| 적응형 비트레이트 | 지원 | 지원 |
| 라이브 스트리밍 | 지원 | 지원 |
| VoD | 지원 | 지원 |
| 기원 | Apple | MPEG 표준 |
두 기술 모두 미디어를 세그먼트로 나누고 플레이어가 서로 다른 품질의 표현 중에서 선택할 수 있도록 합니다.
어떤 기술을 선택할지는 디바이스 지원 여부, 플레이어 기술, 코덱, DRM, 지연 시간 요구사항, 전체 스트리밍 아키텍처 등에 따라 달라집니다.
호환되는 워크플로에서는 CMAF를 통해 HLS와 DASH가 공통의 fragmented MP4 미디어 세그먼트를 공유하도록 함으로써 중복을 줄일 수도 있습니다.
적응형 비트레이트 스트리밍과 프로그레시브 다운로드 비교
프로그레시브 다운로드에서는 하나의 미디어 파일이 재생에 충분한 만큼 다운로드되면 재생을 시작할 수 있습니다. 전체 파일의 다운로드가 완료될 때까지 기다릴 필요가 없습니다.
ABR은 다른 방식을 사용합니다. 여러 개의 세그먼트화된 렌디션을 제공하고, 재생 중 플레이어가 품질을 전환할 수 있도록 합니다.
따라서 다양한 디바이스와 네트워크 환경을 사용하는 폭넓은 시청자를 대상으로 할 때 ABR이 더 적합합니다.
적응형 비트레이트 스트리밍의 장점
-
재버퍼링 감소. 네트워크 처리량이 떨어지면 현재 연결 상태로 감당하기 어려운 스트림을 계속 다운로드하는 대신, 플레이어가 더 낮은 비트레이트의 렌디션을 요청할 수 있습니다.
-
더 나은 동영상 품질. 빠른 네트워크 연결에서는 더 높은 품질의 렌디션을 제공할 수 있고, 네트워크가 제한된 시청자는 더 낮은 비트레이트로 전환해 계속 시청할 수 있습니다.
-
더 안정적인 재생 시작. 플레이어는 네트워크 연결 품질을 파악하는 동안 비교적 낮은 품질로 재생을 시작한 뒤, 상태가 확인되면 더 높은 품질로 전환할 수 있습니다.
-
효율적인 대역폭 사용. 특히 화면이 작은 디바이스나 네트워크가 제한된 환경에서는 항상 최고 비트레이트 버전을 제공할 필요가 없습니다.
ABR은 버퍼링을 줄일 수 있지만 완전히 없앨 수는 없습니다. CDN 성능, 라스트 마일 네트워크, 플레이어 동작, 인코딩, 디바이스 성능 제한 등도 재생에 영향을 줄 수 있습니다.
ABR의 과제는 무엇인가요?
ABR은 스트리밍 워크플로의 복잡성을 높입니다.
여러 렌디션을 제공하려면 추가적인 트랜스코딩 및 저장 공간이 필요합니다. 비트레이트 래더가 제대로 설계되지 않으면 대역폭이 낭비되거나 품질 단계 사이에 지나치게 큰 차이가 생길 수 있습니다. 세그먼트와 키프레임의 정렬 상태는 원활한 전환에 영향을 주며, 플레이어의 적응 로직이 지나치게 공격적이면 화질이 자주 바뀌어 시청에 방해가 될 수 있습니다.
라이브 스트리밍에서는 또 하나의 제약 요소인 지연 시간이 중요합니다. 실제 라이브 이벤트와의 시간 차이를 최소화하려면 인코딩, 세그먼트화, 패키징, 전송, 플레이어 버퍼링이 모두 충분히 빠르게 이루어져야 합니다.
라이브와 VoD에서의 적응형 비트레이트 스트리밍
ABR은 라이브 스트리밍과 주문형 비디오(VoD) 모두에서 사용할 수 있지만 워크플로에는 차이가 있습니다.
VoD에서는 전체 소스 콘텐츠를 사전에 사용할 수 있습니다. 따라서 시청자가 콘텐츠를 요청하기 전에 렌디션을 트랜스코딩하고, 패키징하고, 최적화할 수 있습니다.
라이브 동영상에서는 이러한 단계가 이벤트가 진행되는 동안 지속적으로 이루어집니다. 따라서 처리 속도와 지연 시간이 더욱 중요합니다.
전문적인 라이브 스트리밍 CDN 워크플로에서는 품질, 확장성, 안정성, 지연 시간 사이의 균형을 실시간으로 유지해야 합니다.
ABR에서 CDN은 어떤 역할을 하나요?
ABR은 플레이어가 어떤 렌디션을 요청할지 결정합니다. CDN은 해당 매니페스트와 동영상 세그먼트가 시청자에게 얼마나 효율적으로 전달될지를 좌우합니다.
CDN은 사용자와 가까운 위치에서 콘텐츠를 캐싱하고 제공함으로써 전송 경로를 단축하고, 오리진 서버의 부하를 줄이며, 스트리밍 플랫폼이 지리적으로 분산된 시청자와 급격한 트래픽 증가에 대응할 수 있도록 지원합니다.
이러한 관계는 매우 중요합니다. 비트레이트 래더가 아무리 잘 설계되어 있어도 세그먼트 전송이 지속적으로 느리다면 이를 보완할 수 없기 때문입니다.
CDNetworks는 적응형 비트레이트 스트리밍을 어떻게 지원하나요?
CDNetworks는 라이브 스트리밍과 주문형 비디오 모두에서 적응형 비트레이트 스트리밍을 지원합니다.
라이브 동영상의 경우, 당사의 Media Acceleration Live Broadcast는 라이브 트랜스코딩과 전 세계에 분산된 CDN을 결합합니다. 라이브 스트림을 서로 다른 비트레이트로 트랜스코딩하여 다양한 디바이스와 시청 환경에 대응할 수 있으며, HLS와 DASH 같은 프로토콜을 지원해 폭넓은 재생 환경에서 적응형 스트리밍을 구현할 수 있습니다.
VoD의 경우, CDNtworks Media Acceleration VoD를 Media Processing과 함께 사용하면 HLS 및 MPEG-DASH ABR 워크플로를 위한 여러 동영상 비트레이트, 오디오 비트레이트, 해상도를 생성할 수 있습니다. 당사의 미디어 처리 기능에는 트랜스코딩과 패키징도 포함되어 있어 기업이 CDN을 통해 콘텐츠를 배포하기 전에 여러 렌디션을 준비할 수 있도록 지원합니다.
라이브 콘텐츠든 주문형 콘텐츠든, CDNetworks는 미디어 처리와 글로벌 콘텐츠 전송을 결합해 스트리밍 서비스가 변화하는 네트워크 상태에 따라 동영상 품질을 조정하고, 다양한 디바이스와 지역에서 안정적인 재생 환경을 제공할 수 있도록 지원합니다.
적응형 비트레이트 스트리밍 FAQ
적응형 비트레이트 스트리밍은 버퍼링을 줄일 수 있나요?
네. 사용 가능한 네트워크 처리량이 감소했을 때 더 낮은 비트레이트의 렌디션으로 전환함으로써 재버퍼링을 줄일 수 있습니다. 다만 심각한 네트워크 혼잡이나 기타 전송 문제가 발생하면 재생이 중단될 수 있습니다.
HLS는 적응형 비트레이트 스트리밍을 지원하나요?
네. HLS 플레이리스트는 여러 개의 변형 스트림을 정의할 수 있으므로 호환되는 플레이어가 재생 중 서로 다른 품질 단계 사이를 전환할 수 있습니다.
MPEG-DASH는 적응형 비트레이트 스트리밍을 지원하나요?
네. DASH는 MPD 매니페스트를 사용해 사용 가능한 리프레젠테이션과 미디어 세그먼트를 정의합니다. 이를 통해 플레이어가 적절한 품질 단계를 선택할 수 있습니다.
ABR은 라이브 스트리밍과 VoD 모두에 사용되나요?
네. VoD 콘텐츠는 재생 전에 미리 준비할 수 있는 반면, 라이브 ABR에서는 스트리밍이 진행되는 동안 미디어 처리와 세그먼트 생성이 지속적으로 이루어져야 합니다.
비트레이트와 대역폭의 차이는 무엇인가요?
비트레이트는 미디어 스트림이 일정 시간 동안 필요로 하는 데이터의 양을 의미합니다. 대역폭은 데이터를 전송하는 데 사용할 수 있는 네트워크 용량을 의미합니다. ABR은 요청하는 스트림의 비트레이트를 변화하는 가용 네트워크 용량에 최대한 맞추는 방식으로 작동합니다.
