동영상 스트리밍에 사용되는 주요 기술 및 툴은 다양한 목적(예: 실시간 스트리밍, VOD, 콘텐츠 전송, 인코딩, 플레이어 구현 등)에 따라 구분됩니다. 아래에 주요 기술과 툴을 영역별로 정리해드릴게요.
1. 비디오 인코딩 및 트랜스코딩
- FFmpeg: 오픈소스 멀티미디어 처리 도구. 인코딩, 디코딩, 트랜스코딩, 포맷 변경, 필터링 등에 사용.
- x264 / x265: 각각 H.264, H.265 표준 인코딩 라이브러리.
- AWS Elemental MediaConvert: AWS에서 제공하는 클라우드 기반 트랜스코딩 서비스.
2. 스트리밍 프로토콜
- HLS (HTTP Live Streaming): 애플이 개발. 대부분의 플랫폼에서 지원되며, 세그먼트 방식.
- DASH (Dynamic Adaptive Streaming over HTTP): MPEG 표준 기반으로, HLS와 비슷하지만 플랫폼 독립적.
- RTMP (Real-Time Messaging Protocol): 주로 라이브 방송에 사용되며, YouTube Live, Twitch 등에서 여전히 활용.
- WebRTC: 지연이 극히 낮은 실시간 양방향 통신에 최적화된 스트리밍 프로토콜.
3. 콘텐츠 전송 네트워크 (CDN)
- Cloudflare Stream / CDN: 빠르고 안정적인 콘텐츠 전송을 위한 글로벌 네트워크.
- AWS CloudFront, Akamai, Fastly: 대형 스트리밍 서비스에서 많이 사용.
4. 플레이어 및 프론트엔드 도구
- Video.js: HTML5 기반의 오픈소스 비디오 플레이어.
- Shaka Player: 구글이 만든 MPEG-DASH 및 HLS 지원 오픈소스 플레이어.
- HLS.js: JavaScript 기반 HLS 재생 라이브러리.
- ExoPlayer (Android), AVPlayer (iOS): 모바일 앱용 기본 플레이어 SDK.
5. 라이브 스트리밍 플랫폼/서비스
- OBS Studio (Open Broadcaster Software): 무료 라이브 방송 도구, Twitch, YouTube에 방송 가능.
- StreamYard, Restream, Wirecast: 라이브 멀티플랫폼 스트리밍 툴.
- Wowza Streaming Engine: 엔터프라이즈급 라이브 및 VOD 스트리밍 서버.
6. DRM (디지털 저작권 관리) 및 보안
- Widevine (Google), PlayReady (Microsoft), FairPlay (Apple): 각 플랫폼용 DRM 시스템.
- AES-128 Encryption: HLS와 함께 사용되는 콘텐츠 암호화 표준.
7. 모니터링 및 분석
- Mux, Conviva, Bitmovin Analytics: 사용자 경험, 버퍼링, 시청 행동 분석 등 제공.
- Prometheus + Grafana: 서버 측 스트리밍 성능 및 지표 모니터링.