HTTP를 통한 동적 적응 스트리밍

Dynamic Adaptive Streaming over HTTP

Dynamic Adaptive Streaming over HTTP(DASH)는 MPEG-DASH라고도 불리며 기존의 HTTP 웹 서버에서 제공되는 인터넷을 통해 미디어 콘텐츠를 고품질 스트리밍할 수 있는 적응형 비트레이트 스트리밍 기술입니다.Apple의 HTTP Live Streaming(HLS) 솔루션과 마찬가지로 MPEG-DASH는 콘텐츠를 일련의 작은 세그먼트로 나누어 HTTP를 통해 처리한다.각 세그먼트에는 영화나 스포츠 이벤트의 라이브 방송과 같이 잠재적으로 몇 시간 동안 지속되는 짧은 콘텐츠 재생 시간이 포함됩니다.콘텐츠는 다양한 다른 비트레이트, 즉 정렬된 짧은 재생 시간 간격을 커버하는 다른 비트레이트로 인코딩된 대체 세그먼트로 제공됩니다.콘텐츠가 MPEG-DASH 클라이언트에 의해 재생되는 동안 클라이언트는 Bit Rate Adaptation(ABR; 비트환율적응) 알고리즘을[1] 사용하여 재생 [2]시 정지 또는 재버퍼 이벤트를 발생시키지 않고 가능한 한 높은 비트환율을 가진 세그먼트를 자동으로 선택합니다.현재의 MPEG-DASH 레퍼런스클라이언트 dash.js는[3] 버퍼 베이스(BOLA[4])와 하이브리드(DYNAMIC[2]) 비트레이트 적응 알고리즘을 모두 제공합니다.따라서 MPEG-DASH 클라이언트는 변화하는 네트워크 상태에 심리스하게 적응하여 정지 또는 재버퍼링 이벤트를 거의 발생시키지 않고 고품질의 재생을 제공할 수 있습니다.

MPEG-DASH는 국제 [5]표준인 최초의 적응형 비트레이트 HTTP 기반 스트리밍 솔루션입니다.MPEG-DASH는 전송 프로토콜과 혼동하지 마십시오. MPEG-DASH는 TCP를 사용합니다. MPEG-DASH는 기본적으로 모든 World Wide Web 컨텐츠 전송에 사용되는 기존 HTTP 웹 서버 인프라를 사용합니다.인터넷 접속 텔레비전, TV 셋톱 박스, 데스크탑 컴퓨터, 스마트폰, 태블릿등의 디바이스는, 인터넷을 개입시켜 전달되는 멀티미디어 컨텐츠(비디오, TV, 라디오 등)를 소비해, 다양한 인터넷 수신 조건에 대응할 수 있습니다.적응형 스트리밍 솔루션의 표준화는 Microsoft의 Smooth Streaming이나 Adobe의 HDS같은 유사하지만 독점적인 솔루션과 비교하여 범용적인 도입에 솔루션을 채택할 수 있다는 확신을 시장에 제공하는 것을 의미합니다.HDS(Smooth Streaming)와 달리 DASH는 코덱에 의존하지 않습니다.즉, H.265, H.264, VP9 [6]임의코딩 포맷으로 인코딩된 콘텐츠를 사용할 수 있습니다.

표준화

MPEG-DASH 기술은 MPEG로 개발되었습니다.DASH에 대한 작업은 2010년에 시작되었으며, 2011년 1월에 국제 표준 초안이 되었고,[5][7] 2011년 11월에 국제 표준이 되었다.MPEG-DASH 표준은 2012년 4월에 발표되었지만 2019년에 MPEG-DASH ISO/IEC 23009-1:2019로 개정되었습니다.

DASH는 Adobe Systems HTTP Dynamic Streaming, Apple Inc. 관련 기술입니다.HTTP Live Streaming(HLS; HTTP 라이브 스트리밍) 및 Microsoft Smooth Streaming.DASH는 3GPP Release 9의 Adaptive HTTP Streaming(AHS; 적응형 HTTP 스트리밍)과 Open IPTV Forum Release [8][9]2의 HTTP Adaptive Streaming(HAS; HTTP 적응형 스트리밍)을 기반으로 합니다.MPEG와의 콜라보레이션의 일환으로서 3GPP Release 10은 무선 [8]네트워크상에서 사용하는 DASH(특정 코덱 및 동작 모드 포함)를 채용하고 있습니다.

DASH Industry Forum(DASH-IF)[10]은 MPEG-DASH의 채택을 촉진하고 촉진하여 사양에서 실제 비즈니스로 전환하는 데 도움이 됩니다.Microsoft, Netflix, Google, Ericson, Samsung, Adobe 등 주요 스트리밍 및 미디어 업체로 구성되며 실제 사용 사례에 따라 DASH 사용 지침을 작성합니다.

MPEG-DASH는 다른 표준으로 통합되어 있습니다.예를 들어 MPEG-DASH는 HbbTV(버전 1.5)[11]에서 지원됩니다.

개요

DASH는 멀티미디어 파일을 하나 이상의 세그먼트로 분할하여 [12]HTTP를 사용하여 클라이언트에 전달하는 적응형 비트레이트 스트리밍 기술입니다.Media Presentation Description(MPD; 미디어 프레젠테이션 기술)은 세그먼트 정보(타이밍, URL, 비디오 해상도 및 비트레이트 의 미디어 특성)를 기술합니다.사용 사례에 따라 SegmentList, SegmentTemplate, SegmentBase, SegmentTimeline 등의 다양한 방법으로 구성할 수 있습니다.세그먼트는 모든 미디어 데이터를 포함할 수 있지만, 사양은 ISO 기반 미디어 파일 형식(MP4 파일 형식 등) 또는 MPEG-2 전송 스트림의 두 가지 유형의 컨테이너에서 사용하기 위한 구체적인 지침과 형식을 제공합니다.

DASH는 오디오/비디오 코덱에 의존하지 않습니다.멀티미디어 파일의 1개 또는 복수의 표현(즉, 다른 해상도 또는 비트레이트 버전)을 이용할 수 있습니다.또, 네트워크 조건, 디바이스의 기능, 및 유저 프리퍼런스에 근거해 선택할 수 있기 때문에, 적응형 비트레이트[13] 스트리밍과 QoE([14]Quality of Experience)의 공평성을 실현할 수 있습니다.DASH 표준에서는 Adaptive Bitrate Streaming(ABR; 적응형 비트레이트 스트리밍) [15]로직은 지정되어 있지 않습니다.또한 DASH는 기본 애플리케이션 계층 프로토콜에 의존하지 않습니다.따라서 DASH는 DASH [16]over CCN과 같은 모든 프로토콜과 함께 사용할 수 있습니다.

2015년 7월 27일, MPEG LA는 이 [17]기술을 위한 단일 특허 풀을 만들기 위해 MPEG-DASH 관련 특허를 요청했습니다.MPEG LA는 MPEG-DASH 특허 포트폴리오 라이선스를 발표했다.MPEG-LA는 포함된 특허가 HTTP를 [18]통한 MPEG 다이내믹 적응 스트리밍에 필수적이라고 주장합니다.

실장

MPEG-DASH는 기본적으로 ExoPlayer를 [19]통해 Android, Samsung Smart TV 2012+, Sony TV 2012+, Philips NetTV 4.1+, Panasonic Viera 2013+ 및 Chromecast에서 [20]사용할 수 있습니다.유튜브와 넷플릭스는 이미 MPEG-DASH를 지원하며 다양한 MPEG-DASH 플레이어를 이용할 [21]수 있다.

MPEG-DASH는 HTML5에서 직접 지원되지 않지만 웹 브라우저에서 MSE([22]Media Source Extensions)를 사용하여 MPEG-DASH를 사용할 수 있는 MPEG-DASH의 JavaScript 구현이 있습니다.HTML5 Encrypted Media [24]Extensions를 사용하여 MPEG-DASH용 DRM을 지원하는 비트대시[23] 플레이어와 같은 JavaScript 구현도 있습니다.WebGL과 조합하여 MPEG-DASH의 HTML5 기반 적응형 비트레이트 스트리밍을 통해 360°[25] 비디오의 효율적인 스트리밍을 라이브 및 온디맨드 사용 사례에 사용할 수 있습니다.

클라이언트 및 라이브러리

  • Shaka Player는 Google의 [26][27][28][29][30]저대역폭 연결용 오픈 소스 DASH HTML5 비디오 플레이어입니다.
  • VLC Media Player 3.0은 MP4/MPEG 및 라이브 [31][32][33]스트림용 새로운 클라이언트 플러그인을 출하했습니다.
  • 크로스 플랫폼 FOSS 멀티미디어 프레임워크 GStreamer는 적어도 v1.[34]4 이후 MPEG-DASH 및 WebM DASH를 지원했습니다.
  • 오픈 소스 라이브러리 libdash[35] 플랫폼에 의존하지 않으며 Android, iOS, Windows Phone 등의 모바일 플랫폼에서 실행됩니다.
  • bitmovin은 HTML5 및 [36]플래시용 비트대시 MPEG-DASH 플레이어를 제공합니다.
  • VideoJS는 오픈소스 HTML5 비디오 플레이어이며 라이브 [26][27]및 VOD 스트리밍용 HLS, DASH, WebM 및 프로그레시브 MP4를 지원합니다.
  • Clappr은 오픈 소스 HTML5 비디오 플레이어이며 HTMLVideoElement를 사용하며 DASH, HLS, 프로그레시브, 광고 삽입, 다이내믹 오버레이, 픽처[27][26] 인 픽처 지원

서버

라이브 스트리밍을 제외하고 DASH 콘텐츠에 대한 서버 지원은 특별히 필요하지 않습니다.

  • Wowza Streaming Engine은 DVR을 통한 MPEG-DASH 재생을 지원하며 Akamai에 DASH Stream Target 퍼블리싱을 제공합니다.[37]
  • Brightcove Zencoder는 MPEG-DASH 트랜스룩싱/[38]트랜스코딩을 지원합니다.
  • Elemental Technologies 비디오 처리 솔루션은 DASH를 지원합니다.
  • Helix Universal Server는 다양한 모드에서 DASH를 지원합니다.
  • Nimble Streamer는 라이브 및 VOD MPEG-DASH를 지원합니다.VOD의 경우 H.265 코덱과 H.264 코덱을[39] 모두 지원합니다.
  • Unified Origin은 MPEG-DASH를 [40][41]지원합니다.

서비스

  • Akamai CDN[42]DASH를 지원합니다.
  • Amazon CloudFront CDN은 DASH를 지원합니다.
  • Amazon Web Services Elastic Transcoder는 MPEG-DASH를 [43]지원합니다.
  • Azure Media Services 플랫폼은 MPEG-DASH를 [44]지원합니다.
  • Bitmovin은 MPEG-DASH를 [45]지원하는 클라우드 기반 트랜스코딩 서비스 bitcodin.com을 제공합니다.
  • CloudFlare Stream은 최종 사용자에게 서비스를 제공하기 전에 VP9에서 DASH로의 트랜스코딩을 지원합니다.
  • Cloudinary는 MPEG-DASH를 지원하는 자동 트랜스코딩을 제공합니다.
  • Lumen CDN은 DASH를 지원합니다.
  • Lightlight Networks CDN은 DASH를 지원합니다.
  • Project Shield CDN은 [47]DASH를 지원합니다.
  • Tata Communications CDN은 DASH를 지원합니다.
  • DogalZeka MS2 알람 모니터링, 트랜스코딩 및 DASH 입력/출력 기록 지원.[citation needed]
  • Resi Live Stream Platform은 MPEG-DASH의 [citation needed]수집, 트랜스코딩 및 CDN 전송을 지원합니다.

콘텐츠 생성기

  • ITEC의 DASHEncoder.[31][48]
  • Télecom Paris[49] GPAC의 MP4Box 및 멀티미디어 프레임워크
  • Télecom Paris로부터의 대시캐스트는 MPEG-DASH 라이브[50] 스트리밍을 지원합니다.
  • MediaGoom MPEG-DASH 패키지[51] 관리자
  • Vento4 오픈소스 툴 및 SDK[52]

다른.

  • ITEC는 MPD(MPEG-DASH Media Presentation Description) 파일[31] 검증 서비스를 제공합니다.
  • Alpen-Adria University Klagenfurt의 [48][54]ITEC(Institute of Information Technology), Telecom[49] ParisTech의 GPAC 그룹 및 Digital TV [55]Labs에서 여러 DASH[53] 데이터 세트를 제공합니다.
  • BBC에는 DASH over HTTP/[56]2를 포함한 DASH 테스트 스트림이 있습니다.
  • Widevine DRM은 DASH 및 암호화 미디어 [57]확장 기능을 지원합니다.
  • Mividi는 라이브 MPEG-DASH [58]스트림을 분석 및 감시하기 위한 소프트웨어 도구를 제공합니다.

지원되는 플레이어와 서버

클라이언트

Windows 10 에서는, 엣지에서의 DASH 스트리밍을 네이티브로 서포트하고 있었습니다.HTML은 Chromium 기반의 Blink 브라우저 엔진으로 이행하기 전에 Microsoft Edge(현재는 Edge Legacy)에서 사용되었던 전용 브라우저 엔진입니다.Edge Legacy는 2004년 버전까지 Windows 10에 포함되어 있었습니다.20H2 버전에서는 에지 크롬으로 대체되었습니다.

다른 브라우저 및 운영체제에서의 DASH 지원은 Media Source Extensions를 통해 이용할 수 있습니다.

제품. 제품 유형 플랫폼 라이브 스트리밍 DRM 프리 버전 기준 에디터
마이크로소프트 엣지 웹 브라우저 윈도 10 Edge Legacy에서 네이티브 지원.

엣지 크롬의 미디어 소스 확장을 통한 지원.

아니요. Edge Legacy의 엔진 엣지에서 기본적으로 지원HTML 버전 12 ~[59]18

버전 79부터 현재까지 Edge Cromium은 네이티브로 지원되지 않습니다.[60]

마이크로소프트
VLC 미디어 플레이어 미디어 플레이어 Windows, macOS, Linux, Android, iOS, Windows Phone 네. 네. v3.0 비디오 LAN
MX 플레이어 미디어 플레이어 안드로이드 네. 아니요. v1.9.18
DASH 스트림 재생 지원은 현재 불안정합니다.
J2 인터랙티브
넥스플레이어 SDK HTML5(MSE 브라우저), Android(모바일, TV, STB), iOS, Chromecast, Windows, Mac, Linux, Tizen, WebOS 네. 아니요. 넥스트스트림
대시.js SDK HTML5(MSE 브라우저) 네. 아니요. 대시 산업 포럼
샤카 플레이어 SDK HTML5(MSE 브라우저) 네. 아니요. 구글
Rx-Player SDK HTML5(MSE 브라우저) 네. 아니요. 운하+
비트 대시 SDK HTML5(MSE 브라우저), Android, LG TV, 삼성 TV, Xbox One, 범용 Windows 플랫폼 네. 아니요. 비트무빈
재생 SDK HTML5(MSE 브라우저), Android, iOS, Windows, Mac 네. 아니요. 캐스트랩
테오플레이어 SDK HTML5(MSE 브라우저), Android(모바일, TV, STB), iOS, Chromecast, Windows, Mac, Linux, Tizen, WebOS 네. 아니요. THEO Technologies NV
Viblast 플레이어 SDK HTML5(MSE 브라우저), Android, iOS 네. 아니요. Viblast 팀
Radiant Media Player SDK HTML5(MSE 브라우저), Android, iOS, Windows, Mac, Linux 네. 아니요. Radiant Media Player
비디오글 SDK HTML5(MSE 브라우저) 네. 아니요.
유체 플레이어 SDK HTML5(MSE 브라우저) 네. 아니요. 엑소클릭
GStreamer 멀티미디어 프레임워크 네. 아니요. 1.4 GStreamer 팀
libdash 멀티미디어 프레임워크 네. 아니요. bitmovin, ITEC 팀
GPAC 멀티미디어 프레임워크 네. 아니요. 텔레콤 파리테크 주식회사

특허권자

조직 특허[61]
맥셀 15
네덜란드 응용과학연구기구(TNO) 8
일본전신전화(NTT) 5
프라운호퍼 4
컬럼비아 대학교 4
아모텍 2
에이버미디어 테크놀로지스, 주식회사 2
케이블 텔레비전 연구소 2
헬리오스 스트리밍, LLC 2
JVC 켄우드 1
Lough Corrib 지적재산권 1

레퍼런스

  1. ^ "ABR Logic". GitHub.
  2. ^ a b "From Theory to Practice: Improving Bitrate Adaptation in the DASH Reference Player, by Spiteri, Sitaraman and Sparacio, ACM Multimedia Systems Conference, June 2018" (PDF).
  3. ^ "dash.js JavaScript Reference Client Landing Page". reference.dashif.org. Retrieved 2020-08-28.
  4. ^ Spiteri, Kevin; Urgaonkar, Rahul; Sitaraman, Ramesh K. (2016). "BOLA: Near-optimal bitrate adaptation for online videos. IEEE INFOCOM, 2016, by Spiteri, Urgaonkar, and Sitaraman, IEEE INFOCOM, April 2016". arXiv:1601.06748. doi:10.1109/TNET.2020.2996964. S2CID 219792107. {{cite journal}}:Cite 저널 요구 사항 journal=(도움말)
  5. ^ a b "MPEG ratifies its draft standard for DASH". MPEG. 2011-12-02. Archived from the original on 2012-08-20. Retrieved 2012-08-26.
  6. ^ "MPEG-DASH vs. Apple HLS vs. Microsoft Smooth Streaming vs. Adobe HDS". 2015-03-29. Retrieved 3 June 2016.
  7. ^ ISO/IEC DIS 23009-1.2 HTTP(DASH)를 통한 동적 적응 스트리밍
  8. ^ a b ETSI 3GPP 3GPP TS 26.247, 투과적인 엔드 투 엔드 패킷 교환 스트리밍 서비스(PSS), 프로그레시브 다운로드 및 HTTP를 통한 다이내믹 적응 스트리밍(3GP-DASH)
  9. ^ IPTV 포럼 솔루션 사양서 제2a권HTTP Adaptive Streaming V2.1 Wayback Machine에서 2011-10-09년 아카이브 완료
  10. ^ DASH 산업 포럼
  11. ^ HbbTV 사양 1.5 웨이백 머신에 2014-07-03 아카이브 완료
  12. ^ Dynamic Adaptive Streaming over HTTP(DASH)의 개요
  13. ^ HTTP를 통한 3GPP 동적 적응 스트리밍 – 2016-08-05년 T가 웨이백 머신에 아카이브한 표준설계 원칙.스톡해머
  14. ^ OpenFlow 지원 적응형 비디오 스트리밍을 사용한 네트워크 전체의 QoE 공정성 실현
  15. ^ A. 벤탈렙, B.타니, A.Begen, C.Timmermer와 R. Zimmermann, "HTTP를 통한 스트리밍 미디어의 비트레이트 적응 방식에 관한 조사", IEEE Communications Surveies & Tutorials (IEEEEE COMST), Volume 1호, 페이지 1-1, 2018.
  16. ^ Y. Liu, J. Geurts, J.-P.포인트, S. Leader, B. Rainer, C.뮬러, CTimmerer와 H.Hellwagner, "CCN을 통한 동적 적응 스트리밍: 캐싱 및 오버헤드 분석", IEEE International Conference on Communication(ICC) 2013 – 차세대 네트워킹 심포지엄, 헝가리 부다페스트, 2013년 6월
  17. ^ MPEG LA, 웨이백 머신에서 2015-08-07 아카이브된 MPEG-DASH의 공동 라이선스 정리를 위한 특허 요청 발표
  18. ^ "DASH Patent Portfolio License Briefing*" (PDF). MPEG LA. 2019-03-04. Retrieved 10 July 2019.
  19. ^ "ExoPlayer". Android Developers. Retrieved 7 December 2021.
  20. ^ 디바이스 호환성
  21. ^ 현재 MPEG-DASH의 현황과 Youtube와 Netflix가 HTML5에서 사용하는 이유
  22. ^ HTML5 미디어 소스 확장
  23. ^ bitdash DRM Testarea 2015-07-03 Wayback Machine에서 아카이브됨
  24. ^ HTML5 암호화 미디어 확장자
  25. ^ HTML5에서의 360° 스트리밍
  26. ^ a b c Vijayanagar, Krishna Rao. "Top 13 HTML5 Video Players for the Web Reviewed [2021]". OTTVerse. Retrieved 7 December 2021.
  27. ^ a b c "clappr dash.js hls.js rx-player shaka-player videojs-contrib-hls". npm trends.com. Retrieved 7 December 2021.
  28. ^ Zhang, Bo; Teixeira, Thiago; Reznik, Yuriy (24 June 2021). "Performance of Low-Latency HTTP-based Streaming Players". Proceedings of the 12th ACM Multimedia Systems Conference: 356–362. doi:10.1145/3458305.3478442. ISBN 9781450384346. S2CID 237596948.
  29. ^ Cimpanu, Catalin (2015-08-24). "Meet Shaka Player, Google's HTML5 Video Player for Low Bandwidth Conditions". Softpedia. Retrieved 2016-08-13.
  30. ^ "Ultimate HTML5 Video-Player Showdown: 12 Players Compared". Cloudinary. Retrieved 7 December 2021.
  31. ^ a b c ITEC의 DASH, VLC 플러그인, DASHEncoder 및 Dataset by C.뮬러, S. 레더러, C팀머러
  32. ^ C. 뮐러와 C.Timmerer, "A VLC Media Player Plugin enable dynamic Adaptive Streaming over HTTP", 2011년 11월 28일 애리조나 스코츠데일 ACM Multimedia 2011 Proceedings.
  33. ^ "VLC 3.0 features".
  34. ^ GStreamer를 사용한HTTP 적응형 스트리밍
  35. ^ libdash: bitmovin Gmbh에 의한 오픈 소스 DASH 클라이언트 라이브러리
  36. ^ bitdash MPEG-DASH Player 기능 상세
  37. ^ "Stream over MPEG-DASH with Wowza Streaming Engine".
  38. ^ "DASH Streaming and Playlists".
  39. ^ Nimble Streamer에서의 MPEG-DASH 지원
  40. ^ Netview 및 통합 스트리밍 DASH
  41. ^ "USP Factsheet". Archived from the original on 2015-04-21. Retrieved 2015-04-17.
  42. ^ Akamai, 라이브 비디오 워크플로우 네이티브 MPEG-DASH 및 HDS 지원 발표
  43. ^ "Amazon Elastic Transcoder Now Supports MPEG-DASH". Amazon Web Services, Inc. Retrieved 2016-06-03.
  44. ^ MPEG-DASH 및 스트리밍 참조 및 리소스
  45. ^ "bitcodin.com Supported Formats". Archived from the original on 2016-03-28. Retrieved 2015-05-04.
  46. ^ "Deliver HLS and MPEG-DASH with the Cloudinary Video Player Cloudinary".
  47. ^ "Engineering Broadcast: FM and Online". Insanity Radio Tech. Retrieved 7 December 2021.
  48. ^ a b S. 리드러, C.뮬러와 C.Timmerer, "HTTP 데이터 세트를 통한 동적 적응 스트리밍", 2012년 2월 22일부터 24일까지 노스캐롤라이나 채플힐에서 열린 ACM 멀티미디어 시스템 컨퍼런스 2012의 진행에서
  49. ^ a b GPAC 텔레콤 파리기술
  50. ^ 텔레콤 파리의 대시캐스트기술
  51. ^ "MediaGoom. Essential Web Streaming".
  52. ^ Vento4 MPEG DASH 문서
  53. ^ MPEG DASH 데이터 세트의 개요
  54. ^ S. 리드러, C.뮬러, C팀머러, C콩콜라토, J. 르 푸브르, K.Fliegel, Distributed DASH Dataset, ACM MMSys(멀티미디어 시스템에 관한 ACM 컨퍼런스) 2013 진행 중, 노르웨이 오슬로, 2013.
  55. ^ "MPEG DASH Test Suite". Archived from the original on 2014-03-07. Retrieved 2013-11-22.
  56. ^ MPEG DASH 테스트스트림
  57. ^ "The Complete Guide to Widevine". encoding.com. Retrieved 2018-01-11.
  58. ^ "MPEG-DASH Analysis and Monitoring Solution". mividi.com. Retrieved 2019-09-15.
  59. ^ 심플한 적응형 비디오 스트리밍:Windows 10에서의 HLS 및 DASH 지원 발표– IEBlog
  60. ^ HTTP(MPEG-DASH)를 통한 동적 적응 스트리밍 사용 가능...
  61. ^ "DASH Patent List" (PDF). MPEG LA. Retrieved 10 July 2019.

외부 링크