adaptive media streaming: the role of standards
TRANSCRIPT
![Page 1: Adaptive Media Streaming: The Role of Standards](https://reader031.vdocument.in/reader031/viewer/2022030304/587748571a28ab84388b4c99/html5/thumbnails/1.jpg)
AdaptiveMediaStreaming:TheRoleofStandardsDynamicAdaptiveStreamingoverHTTP
Priv.-Doz.Dr.ChristianTimmerer[Ack:AliC.Begen,MediaMelon,Inc.,OzyeginUniversity]
Alpen-Adria-UniversitätKlagenfurt(AAU)w FacultyofTechnicalSciences (TEWI) w DepartmentofInformationTechnology(ITEC)wMultimediaCommunication(MMC)w SensoryExperience Lab(SELab)
http://blog.timmerer.com w http://selab.itec.aau.at/ w http://dash.itec.aau.at w [email protected](CIO)atbitmovinGmbH
http://www.bitmovin.comw [email protected]
Tutorial@QoMEX 2016,June2016
http://www.slideshare.net/christian.timmerer
![Page 2: Adaptive Media Streaming: The Role of Standards](https://reader031.vdocument.in/reader031/viewer/2022030304/587748571a28ab84388b4c99/html5/thumbnails/2.jpg)
ImportanceofMultimediaDelivery• Multimediaispredominanton
theInternet• Real-timeentertainment
– Streamingvideoandaudio– Morethan70%ofInternettraffic
atpeakperiods• Popularservices
– YouTube(17.85%),Netflix(37.05%),AmazonVideo(3.11%),Hulu (2.58%)
– Alldeliveredover-the-top (OTT)
June2016 QoMEX2016Tutorial 2GlobalInternetPhenomenaReport:Dec2015
![Page 3: Adaptive Media Streaming: The Role of Standards](https://reader031.vdocument.in/reader031/viewer/2022030304/587748571a28ab84388b4c99/html5/thumbnails/3.jpg)
OpenDigitalMediaValueChain
June2016 QoMEX2016Tutorial 3
CreateContent
AggregateMonetize
DistributeContent
ConsumeContent
AnyContent AnyStorefront AnyNetwork AnyDevice
CDNsMediaProtocols
InternetTransport
DRMEncoding
EncapsulationDynamicAds
Clients
HappyUser
![Page 4: Adaptive Media Streaming: The Role of Standards](https://reader031.vdocument.in/reader031/viewer/2022030304/587748571a28ab84388b4c99/html5/thumbnails/4.jpg)
WhatisStreaming?
June2016 QoMEX2016Tutorial 4
Streamingistransmissionofacontinuouscontentfromaservertoaclientanditssimultaneousconsumptionbytheclient
TwoMainCharacteristics1. Clientconsumption ratemaybelimitedbyreal-timeconstraintsasopposed tojust
bandwidth availability2. Servertransmissionrate(looselyortightly)matchestoclientconsumptionrate
![Page 5: Adaptive Media Streaming: The Role of Standards](https://reader031.vdocument.in/reader031/viewer/2022030304/587748571a28ab84388b4c99/html5/thumbnails/5.jpg)
CommonAnnoyancesinStreaming• Wrongformat• Wrongprotocol• Pluginrequirements• DRMissues• Longstart-updelay• Poorquality• Frequentstalls• Qualityoscillations• Noseekingfeatures
June2016 QoMEX2016Tutorial 5
![Page 6: Adaptive Media Streaming: The Role of Standards](https://reader031.vdocument.in/reader031/viewer/2022030304/587748571a28ab84388b4c99/html5/thumbnails/6.jpg)
Over-The-Top– AdaptiveMediaStreaming• Inanutshell…
June2016 QoMEX2016Tutorial 6
Adaptation logic is within the client, not normatively
specified by the standard, subject to research and
development
![Page 7: Adaptive Media Streaming: The Role of Standards](https://reader031.vdocument.in/reader031/viewer/2022030304/587748571a28ab84388b4c99/html5/thumbnails/7.jpg)
Multi-BitrateEncodingandRepresentationSwitching
June2016 QoMEX2016Tutorial 7
Contents ontheWebServer
MovieA– 200Kbps
MovieA– 400Kbps
MovieA– 1.2Mbps
MovieA– 2.2Mbps
...
...
MovieK– 200Kbps
MovieK– 500Kbps
MovieK– 1.1Mbps
MovieK– 1.8Mbps
.. .
.. .
Time(s)
Startquickly
Keep requestingImprove quality
Loss/congestiondetection
Revampquality
...
...Segments
![Page 8: Adaptive Media Streaming: The Role of Standards](https://reader031.vdocument.in/reader031/viewer/2022030304/587748571a28ab84388b4c99/html5/thumbnails/8.jpg)
AdaptiveStreamingoverHTTP
June2016 QoMEX2016Tutorial 8
…………
HTTP GETs
ClientBuffer
MediaPlayer
HTTPServer
![Page 9: Adaptive Media Streaming: The Role of Standards](https://reader031.vdocument.in/reader031/viewer/2022030304/587748571a28ab84388b4c99/html5/thumbnails/9.jpg)
FormatsandStandards• Adobe
– HTTPDynamicStreaming (HDS)– Almostdead
• Apple– HTTPLiveStreaming (HLS)– RequiredforiOS
• Microsoft– SmoothStreaming– Almostdead, too!Ornot?
• MPEGDynamicAdaptiveStreamingoverHTTP(DASH)– Supported byNetflix,YouTube,Bitmovin,etc.
June2016 QoMEX2016Tutorial 9
Source: http://xkcd.com/927/
![Page 10: Adaptive Media Streaming: The Role of Standards](https://reader031.vdocument.in/reader031/viewer/2022030304/587748571a28ab84388b4c99/html5/thumbnails/10.jpg)
ScopeofDASH:whatisspecified?
June2016 QoMEX2016Tutorial 10
Media Presentation on HTTP Server
DASH-enabled ClientMedia Presentation Description
.
.
.
Segment
…
.
.
.Segment
…
.
.
.
Segment
…
.
.
.Segment
…
…
Segments located by HTTP-URLs
DASH Control Engine
HTTP/1.1 HTTP Client
MPD Parser
Media Engine
On-time HTTP requests to segments
![Page 11: Adaptive Media Streaming: The Role of Standards](https://reader031.vdocument.in/reader031/viewer/2022030304/587748571a28ab84388b4c99/html5/thumbnails/11.jpg)
ScopeofDASH:whatisspecified?
June2016 QoMEX2016Tutorial 11
Media Presentation on HTTP Server
DASH-enabled ClientMedia Presentation Description
.
.
.
Segment
…
.
.
.Segment
…
.
.
.
Segment
…
.
.
.Segment
…
…
Segments located by HTTP-URLs
DASH Control Engine
HTTP/1.1 HTTP Client
MPD Parser
Media Engine
On-time HTTP requests to segments
![Page 12: Adaptive Media Streaming: The Role of Standards](https://reader031.vdocument.in/reader031/viewer/2022030304/587748571a28ab84388b4c99/html5/thumbnails/12.jpg)
DASHDataModel
June2016 QoMEX2016Tutorial 12
MPD
Period id=1start=0s
Period id=3start=300s
Period id=4start=850s
Period id=2start=100s
AdaptationSet0subtitleturkish
AdaptationSet2audioenglish
Adaptation Set1BaseURL=http://abr.rocks.com/
Representation2Rate=1Mbps
Representation4Rate=3Mbps
Representation1Rate=500Kbps
Representation 3Rate=2Mbps
Resolution =720p
SegmentInfoDuration=10s
Template:3/$Number$.mp4
Segment Access
InitializationSegmenthttp://abr.rocks.com/3/0.mp4
MediaSegment1start=0s
http://abr.rocks.com/3/1.mp4
MediaSegment2start=10s
http://abr.rocks.com/3/2.mp4
AdaptationSet3audiogerman
AdaptationSet1video
Period id=2start=100s
Representation3Rate=2Mbps
Selectionofcomponents/tracks
Well-definedmediaformat
Selectionofrepresentations
Splicingofarbitrarycontentlikeads
Chunkswithaddressesandtiming
![Page 13: Adaptive Media Streaming: The Role of Standards](https://reader031.vdocument.in/reader031/viewer/2022030304/587748571a28ab84388b4c99/html5/thumbnails/13.jpg)
June2016 QoMEX2016Tutorial 13
type=static typically,for on demand content
Base URL of the segments
Subtitles
Audio adaptation set with different representations (bw)
Video adaptation set with different representations (bw)
Different codecs (profiles)
Segment URL constructed with template and base URL
![Page 14: Adaptive Media Streaming: The Role of Standards](https://reader031.vdocument.in/reader031/viewer/2022030304/587748571a28ab84388b4c99/html5/thumbnails/14.jpg)
http://www.dash-player.com/demo/
June2016 QoMEX2016Tutorial 14
![Page 15: Adaptive Media Streaming: The Role of Standards](https://reader031.vdocument.in/reader031/viewer/2022030304/587748571a28ab84388b4c99/html5/thumbnails/15.jpg)
OStandard,WhereArtThou?WhatisaStandard?http://en.wikipedia.org/wiki/Standards
Atechnicalstandardisanestablishednormorrequirement.Itisusuallyaformaldocumentthatestablishes uniform engineeringortechnicalcriteria,methods,processesandpractices.
è I N T E R O P E R A B I L I T Y
TypesofStandard• Openstandards
– ITU-T,W3C,IETF,MPEG,Linux,…• Closedstandards
– MSMediaPlayer,…
• Dejurestandards– ANSI,ISO,DIN,…
• Defactostandards– MSWindows,OSX,Unix,Linux,…
• Mandatorystandards– Health,radiation,…
• Voluntarystandards– JPEG,…
June2016 QoMEX2016Tutorial 15
![Page 16: Adaptive Media Streaming: The Role of Standards](https://reader031.vdocument.in/reader031/viewer/2022030304/587748571a28ab84388b4c99/html5/thumbnails/16.jpg)
AdaptiveStreamingContentWorkflow
June2016 QoMEX2016Tutorial 16
Source Transcoding Encapsulation Encryption OriginServer
HelperDistribution
Client
Linear:MulticastVoD:FTP,RTMP,HTTP,etc.
UnicastHTTP(PUSH),FTP,etc.
HTTPGETsmallobjects
Singlehighest-bitratestream Multiplestreamsat
targetbitrates
Multiplestreamsattargetencapsulationformats
Largevideo/virtualfilesandmanifests
![Page 17: Adaptive Media Streaming: The Role of Standards](https://reader031.vdocument.in/reader031/viewer/2022030304/587748571a28ab84388b4c99/html5/thumbnails/17.jpg)
AdaptiveStreamingContentWorkflowSimplified
June2016 QoMEX2016Tutorial 17
StandardDeliveryInfrastructure(CDN)Source Transcoding Encapsulation Encryption
Multiplestreams:video[bitrate(32000-20000000),profile(baseline,main,high),preset(standard,professional,premium),height(128-7680),width(96-4320),framerate(1-120),codec(h264,hevc)],audio:[bitrate(8000-256000),samplerate(0,8000,11025,12000,16000,22050,24000,32000,44100,48000,64000,88200,96000)]
Singlehighest-bitratestream:HTTP,FTP,RTMP;mp4,ts;AVC,AAC,Subtitles
Multiplestreamsattargetencapsulationformats:DASH(MPD+mp4),HLS(m3u8,ts)
MultiplestreamswithmultipleDRMformats:MPEG-CENC,Widewine,PlayReady,PrimeTime,Fairplay
Player
HeterogeneousClientse.g.BitmovinHTML5AdaptivePlayerDASH,HLS,HTML5,MSE,EME
![Page 18: Adaptive Media Streaming: The Role of Standards](https://reader031.vdocument.in/reader031/viewer/2022030304/587748571a28ab84388b4c99/html5/thumbnails/18.jpg)
QoEforDASHServices• DifferentapplicationdomainshavedifferentQoE
requirements– NeedtoprovidespecializationsofthegeneralQoE
definition– Takeintoaccountrequirements formulatedbymeansof
influence factorsandfeaturesofQoE• QoEinfluencefactorsforDASH
– Initial/start-updelay(low)– Bufferunderruns, stalls,freezes(zero)– Qualityswitches(low)– Mediathroughput (high)– …
June2016 QoMEX2016Tutorial 18
![Page 19: Adaptive Media Streaming: The Role of Standards](https://reader031.vdocument.in/reader031/viewer/2022030304/587748571a28ab84388b4c99/html5/thumbnails/19.jpg)
!
http://www.bitcodin.com/
http://www.dash-player.com/
QoEEvaluationforDASH-basedServices• Testsequence
– Manydatasetsavailable– AdoptedBigBuckBunny&DASHed itwithbitcodin
• Players– bitdash– Proprietarysolutions(smooth,HLS,HDS)– YouTube,dash.js,DASH-JS– …andcompareitwithtendifferentadaptationalgorithms
• Objectiveevaluation– Commontestsetupusingnetworkemulation&bandwidthshaping– Predefinedbandwidthtrajectory(orrealnetworktraces)
• Subjectiveevaluation– Lab[ITU-TB.500/P.910]vs.
crowdsourcingwithspecialplatformsorsocialnetworks
June2016 QoMEX 2016Tutorial 19
![Page 20: Adaptive Media Streaming: The Role of Standards](https://reader031.vdocument.in/reader031/viewer/2022030304/587748571a28ab84388b4c99/html5/thumbnails/20.jpg)
CrowdsourcedQoEEvaluation• QualityofExperience …
– MeanOpinionScore[0..100]– [otherobjectivemetrics:
start-uptime,throughput,stalls]• …Web-basedAdaptiveHTTPStreamingClients…
– HTML5+MSE: DASH-JS (dash.itec.aau.at), dash.js (DASH-IF,v1.1.2),YouTube• …Real-WorldEnvironments…
– DASH-JS,dash.js hostedatITEC/AAU (~10Gbit/s)– YouTubehostedatGoogledatacenters– Content:TearsofSteel @144p(250kbit/s),240p(380kbit/s),360p(740kbit/s),480p(1308kbit/s),and
720p(2300kbit/s);segment size:2s– Usersaccess contentovertheopenInternet (i.e.,real-worldenvironment)
• …Crowdsourcing– CampaignatMicroworker platform(othersalsopossible:Mechanical Turk,socialnetworks) limitedto
Europe,USA/Canada,India– ScreeningTechniques: Browserfingerprinting,stimuluspresentationtime, QoEratingsandpre-
questionnaire
June2016 QoMEX2016Tutorial 20B. Rainer, C. Timmerer, “Quality of Experience of Web-based Adaptive HTTP Streaming Clients in Real-World Environments using Crowdsourcing”, Proceedings of International Workshop on VideoNext: Design, Quality and Deployment of Adaptive Video Streaming, Sydney, Australia, Dec. 2014.
![Page 21: Adaptive Media Streaming: The Role of Standards](https://reader031.vdocument.in/reader031/viewer/2022030304/587748571a28ab84388b4c99/html5/thumbnails/21.jpg)
MOS andAverageBitrate
• 288microworkers,33screened(Fingerprinting: 20,presentationtime:6,QoEratingsandpre- questionnaire: 7),175maleand80female,majority(80%)isagedbetween18and37
June2016 QoMEX2016Tutorial 21
![Page 22: Adaptive Media Streaming: The Role of Standards](https://reader031.vdocument.in/reader031/viewer/2022030304/587748571a28ab84388b4c99/html5/thumbnails/22.jpg)
StartupTimeandNumberofStalls
June2016 QoMEX2016Tutorial 22
![Page 23: Adaptive Media Streaming: The Role of Standards](https://reader031.vdocument.in/reader031/viewer/2022030304/587748571a28ab84388b4c99/html5/thumbnails/23.jpg)
ResultsSummary• DASH-JS
– Highstart-uptime– Lownumberofstalls– Goodthroughput,QoE
• dash.js– Lowstart-uptime– High#stalls– Lowthroughput– LowQoE
• YouTube– Lowstart-uptime– Lownumberofstalls– Bestthroughput,QoE
June2016 QoMEX2016Tutorial 23
![Page 24: Adaptive Media Streaming: The Role of Standards](https://reader031.vdocument.in/reader031/viewer/2022030304/587748571a28ab84388b4c99/html5/thumbnails/24.jpg)
Now,10differentadaptationlogics…
June2016 QoMEX2016Tutorial 24
Adaptationlogicswell-known inresearchliterature
Predefinedbandwidthtrajectoryandtestsetup
Differentsegmentsizes,RTTs,HTTP/2,etc.
C. Timmerer, M. Maeiro, B. Rainer, “Which Adaption Logic? An Objective and Subjective Performance Evaluation of HTTP-based Adaptive Media Streaming Systems”, arXiv cs.MM, June 2016, http://arxiv.org/abs/1606.00341.
![Page 25: Adaptive Media Streaming: The Role of Standards](https://reader031.vdocument.in/reader031/viewer/2022030304/587748571a28ab84388b4c99/html5/thumbnails/25.jpg)
June2016 QoMEX2016Tutorial 25
![Page 26: Adaptive Media Streaming: The Role of Standards](https://reader031.vdocument.in/reader031/viewer/2022030304/587748571a28ab84388b4c99/html5/thumbnails/26.jpg)
June2016 QoMEX2016Tutorial 26
![Page 27: Adaptive Media Streaming: The Role of Standards](https://reader031.vdocument.in/reader031/viewer/2022030304/587748571a28ab84388b4c99/html5/thumbnails/27.jpg)
DASH-JSvs.bitdash
June2016 QoMEX2016Tutorial 27
C. Timmerer, D. Weinberger, C. Mueller, and S. Lederer, “Ultra-High-Definition-Quality of Experience with MPEG-DASH”, Proceedings of the Broadcast Engineering Conference (BEC), NAB2015, Las Vegas, NV, USA, April 2015.
![Page 28: Adaptive Media Streaming: The Role of Standards](https://reader031.vdocument.in/reader031/viewer/2022030304/587748571a28ab84388b4c99/html5/thumbnails/28.jpg)
ObjectiveEvaluations
June2016 QoMEX2016Tutorial 28
Stalls(lowerisbetter)AverageBitrate(higherisbetter)
![Page 29: Adaptive Media Streaming: The Role of Standards](https://reader031.vdocument.in/reader031/viewer/2022030304/587748571a28ab84388b4c99/html5/thumbnails/29.jpg)
Stallsarereallybad…
June2016 QoMEX2016Tutorial 29
Conviva:ViewerExperienceReport.2014
![Page 30: Adaptive Media Streaming: The Role of Standards](https://reader031.vdocument.in/reader031/viewer/2022030304/587748571a28ab84388b4c99/html5/thumbnails/30.jpg)
Conclusions(1)• MPEG-DASHdefinesformatsonly
– MediaPresentationDescription (MPD)– Segment format:mp4, ts
• MPEG-DASHisnot– System,protocol,presentation,codec,interactivity,DRM,clientspecification– Otherstandardsrequired foracompleteecosystem:e.g.,DASH-IF,WAVE,
HMTL5,MSE,EME• DoweneedMPEG-DASH?(foradaptivemediastreaming)
– Notnecessarily:e.g.,WebM +VPx +manifest&controlend-to-end– Requiredtoaddressheterogeneous environments
• Roleofstandardssometimesoverrated butoftenunderestimated
June2016 QoMEX2016Tutorial 30
![Page 31: Adaptive Media Streaming: The Role of Standards](https://reader031.vdocument.in/reader031/viewer/2022030304/587748571a28ab84388b4c99/html5/thumbnails/31.jpg)
Conclusions(2)• QoEforDASH-basedservices(aruleofthumb)
– Startupdelay(low[butlivevs.on-demand&shortvs.long-tailcontent])
– Bufferunderrun /stalls(zero)– Qualityswitches(low)andmediathroughput(high)– Energy- andcost-awareness(dataplan)
• NogeneralapplicableQoEmodelforDASH– (Too)manyfactorsinfluencing/featuresofQoEforDASH-based
services– Methodologyforreproducibleresearchisinplaceandwellestablished– Ampleresearchopportunities
June2016 QoMEX2016Tutorial 31
MainQoEfactorsforDASH
➡ ComeupwithourownQoEfactoranddesign, conduct,analyzeasmall-scaleexperiment