abr- adaptive bitrate streaming - we are smpte 2015... · tektronix video training abr- adaptive...
TRANSCRIPT
Tektronix Video Training
ABR- Adaptive Bitrate Streaming
Karl KuhnSr. Video Applications Engineer
Tektronix Video Training
Why Adaptive Bitrate Streaming ?
• Consumers expect video everywhere on
anything they own
• They expect it to work the first time and every
time
• No second chances
• No long load times
• No buffer wait
• No blockiness or freeze frames tolerated
• IT IS ALL ABOUT QoE
Tektronix Video Training
What is Adaptive Bitrate Streaming ?
• Pull is more efficient than Push technologies
• Last Mile Bandwidth is the unknown factor
• The client side player determines available
bit rate and requests the appropriate content
to meet current bandwidth availability
• Streams “adapt” to available bandwidth to Client
• All the while continuously delivering content
• IT IS ALL ABOUT QoE
• We accept low resolution/blurry
4
High Level Testing Concepts
Quality of Service (QoS)
– Perhaps Totally Transparent to End User
– Error Rates
– Bandwidth
– Transmission Latency
– Jitter
Quality of Experience (QoE)
– The End User Will Notice and The Phone Will Ring
– MANAGEMENT WILL NOTICE
– Long Access Times
– Buffer Wait Times
– Black Frames
– Freeze Frames
– Blockiness
– Slice Errors
– Loudness and Level Issues
– Closed Captioning4
Tektronix Video Training
The Shift to HTTP-Based Delivery
• HTTP-based media delivery has little to no
firewall restrictions because firewalls and routers
regularly pass HTTP
• HTTP media delivery does not require special
proxies or caches.
• ABR file is just like any other file to a web
cache server
• Networking equipment sees ABR traffic as
simple web activity.
Tektronix Video Training
What Adaptive Streaming Technologies are available ?
• There are two fundamental types of adaptive streaming
technologies available
– Non-segmented/fragmented such as H.264/SVC
(Scalable Video CODEC)
– Segmented/Fragmented into Stand alone files
• Apple- HTTP Live Streaming (HLS) - most
popular
• Microsoft Smooth Streaming
• Adobe Flash Dynamic Streaming - least
popular
• DASH - new unified standard
Tektronix Video Training
• DASH- Dynamic Adaptive Streaming on HTTP
• Has the potential to replace existing proprietary technologies:
– Microsoft Smooth Streaming,
– Adobe Dynamic Streaming,
– Apple HTTP Live Streaming (HLS).
• Unified standard would be a boon to content publishers
• Produce one set of files that play on all DASH-compatible devices.
• Other advantages
– Trick modes for seeking, fast forwards and rewind
– Dynamic advertising insertion
MPEG DASH - Dynamic Adaptive Streaming over HTTP
Tektronix Video Training
Tektronix Video Training
• Transcode content to each required
output profile
• QoE client depends on having a
number of different profiles
• Deployments use 4 to 16 output
profiles per input.
• Profile will have its own resolution
and bit rate parameters – including
scaling to resolutions suitable for
each client device.
Width Height Bit rate
1280 720 3 Mbps
960 540 1.5 Mbps
864 486 1.25 Mbps
640 360 1.0 Mbps
640 360 750 Kbps
416 240 500 Kbps
320 180 350 Kbps
320 180 150 Kbps
ABR Profiles
Video Transcoding
Tektronix Video Training
ABR -Simplified Architecture
TranscodersFragmenters
(Apple, MS, Adobe)Origin Server
Master
Encoders
Multiple copies
at different bit
rates (1-16
copies)
Same content
split in to small
2 to 10 sec.
files
(fragments)
Tektronix Video Training
Encoder Boundary Point Specification OC-SP-EBP-I01-130118
Tektronix Video Training
Encoder Boundary Point Specification OC-SP-EBP-I01-130118
Tektronix Video Training
Customer Client Content Proxy Edge Cache
Hello! Here is my sub id,
device type, bandwidth
available, session ID.
I would like Superman 3,
please.Sub id, device type,
bandwidth available,
and session ID would
like Superman 3, please
Authentication
Origin Cache
Yes
Do I have the asset?
NoSend manifest file
(XML)
Profile 2 of Superman 3,
to session ID, please
Profile 2 of Superman 3,
to session ID, please
Process manifest file
Request asset file Transfer file to Edge
Cache
Transfer file
segment
Here is your file,
enjoy
Here is your file,
enjoy
Measure download
speed and begin
playback
ABR- Walk through the initial process
Tektronix Video Training
Active ABR Monitoring Overview:
Network Loading and Simulation
Origin Server Load Aware
– Max load per Origin Server
– Many One to One or Round Robin
Validates Origin Server file structure integrity
– Manifest syntax
– Profile
– Playlist validity
– Bitrates and requested throughput.
Programmable Alerts for key metrics
– Manifest Alerts
– Changed, fetch failure.
– Syntax flaw
Tektronix Video Training
Active ABR Monitoring Overview:
Decrypt and Decode content
– Acquire Decryption Keys - Enable decoding
– Validate decode-ability of encrypted content
– Provide visual validation of assets
Expand and Improve Alerting
– Expand alerts to meet user needs
– Full configuration capability
– Alert Template configuration
– Real time status information
Tektronix Video Training
Passive ABR Monitoring Overview:
Strengths Passive ABR
– 10G available throughput
– Non-Intrusive. No load on infrastructure
– Provides specific information per viewer
– Provides real time data on asset views including profile
switches
– Minimal Setup: Probe discovers traffic.
– Tracks viewer bitrate switching
Weaknesses Passive ABR
– Requires special network interface (passive tap or span port)
– Must have traffic. Can’t monitor unviewed assets
– Can’t control path of monitoring
– Probe can’t ask questions.
Tektronix Video Training
– HTTP response status code columns:
• Show the reponses to HTTP requests for a particular
URL
– 100s: Informational. This class indicates a provisional
response, consisting of the Status-Line and optional
headers.
– 200s: Success. The action requested by the client was
received, understood, accepted and process successfully.
– 300s: Redirection. Further action needs to be taken by
the user agent to fulfill the request.
– 400s: Client Error. The client seems to have
erred. Except when responding to a HEAD request, the
server should include an entity containing an
explanation of the error situation, and whether it is a
temporary or permanent condition.
– 500s: Server Error. The server failed to fulfill
an apparently valid request.
Media Set Status: HTTP Status Codes
Tektronix Video Training
Identifying Compression Artifacts
Over-compressed picture
High quality picture
Monitoring QoE ABR
Tektronix Video Training
Media Set Detail Report: Statistics & Graphs
• Fragment Load Bitrate: This is the fragment size / fragment load
time
Tektronix Video Training
Media Set Detail Report: Statistics & Graphs
• Fragment Load Time: This is the time measured between when the
HTTP header for a fragment is detected and when enough bytes
have been received to equal the fragment size.
Fragment Load Latency: This is the time between when a request is
made for a fragment (at the socket level) and when the HTTP header
for the fragment is detected.
Tektronix Video Training
Port Statistics
• Allows for reviewing/exporting the Port statistics at the URL level
collected for the reporting period. Measurements include:
– Bitrate
• Shows the measured bitrate of the URL stream.
– Manifest Bitrate
• The sum of all stated bitrates from the manifest for all of the active
representations on the Media Set.
– Non-Manifest Bitrate
• Shows the difference between Total Observed Transport Bitrate and
Manifest Bitrate.
– HTTP Error Count
• Displays a count for each of the HTTP Status Codes received.
Tektronix Video Training
Program Statistics
• Allows for reviewing/exporting the statistics collected for the
reporting period against the ABR content being monitored.
Measurements include:
– ABR Fragment Size/Duration
• Average fragment size being received.
– ABR Fragment Load Time
• Time measured between when the HTTP header for a fragment is
detected and when enough bytes have been received to equal the
fragment size.
– ABR Fragment Load Bitrate
• This is the (fragment size / fragment load time)
– ABR Fragment Load Latency
• Is the time between when a request is made for a fragment (at the
socket level) and when the HTTP header for the fragment is
detected.
– ABR HTTP Status
• Percent of each HTTP Status code present.
Tektronix Video Training
ABR- Adaptive Bitrate Streaming
Karl KuhnSr. Video Applications Engineer