Upload
kisha
View
30
Download
0
Tags:
Embed Size (px)
DESCRIPTION
Smooth Streaming Live in HD 2010 Olympic Winter Games. Scott Stanfield CEO Vertigo [email protected]. Bob Cowherd Olympics Project Lead Vertigo [email protected]. 2010 Vancouver Winter Olympic Games. Stats. Video 46 million total unique users 710 million page views - PowerPoint PPT Presentation
Citation preview
Smooth Streaming Live in HD 2010 Olympic Winter GamesScott Stanfield [email protected]
Bob Cowherd Olympics Project [email protected]
2010 Vancouver Winter Olympic Games
Video• 46 million total unique users• 710 million page views • 45 million video streams serving more than 3.5 million hours of video
Photo • NBC: 1,573 galleries and 41,560 photos• Universal Sports: 4,400 galleries and 75,663 photos Video Bitrates• 3.45 Mbps – 1280 x 720 @ 30 fps• 1.95 Mbps – 848 x 480 @ 30 fps• 1.25 Mbps – 640 x 360 @ 30 fps• 900 Kbps – 512 x 288 @ 30 fps• 600 Kbps – 400 x 224 @ 30 fps• 400 Kbps – 312 x176 @ 30 fps
Stats
FEATURE RUN DOWNNBCOlympics.com
• No buffering• Supports HD for
users with high-end machines/connections without compromising the experience for low-end machines
HD-quality video using IIS Smooth Streaming Technology
• Allows users to direct their own experience
• Jog dial to rewind and fast-forward allows smooth and quick viewing of interesting content
• Slow motion allows sports fans to examine their favorite moments in detail
DVR "Trick Play" control
• Quickly navigate interesting content via Key events on the timeline, menu
• Get deeper detail when watching an event via the play by play menu
Play-by-play and Key Events
• Allow fans of the site to become evangelists by embedding short videos in their blogs
Embedded Player
• IAB-certified solution required – 3rd party (DART) DLL needs to actually schedule the ads
• Special logic needed to preserve a good UX for user who DVR back in the timeline
• Hot-swappable configuration changes allow ad templates (composition) to be changed on the fly
• Ad settings can similarly be changed (ex. 2 minute grace period on DVR ad model)
• Tier 1 Sponsor Integration allows custom sponsorships
Advanced advertising integration
• Recommendations, Most Popular Videos, Video by Athlete, by Sport, Schedules, Athletes Related to this Video
• Provide as many possible ways to explore a huge amount of video content• Maintain immersion in the player, keep high dwell times• Allow “snacking” on video
Video Content Explorer
• Allow users to keep their fingers on the pulse of the Olympics on Twitter without leaving the player experience
• Maintain immersion in the player to keep high dwell times
BEHIND THE SCENES
• It’s all about the manifest
Smooth Streaming File Types
Fragmented MP4s:• MP4 files: Video
and Audio (*.ismv/.isma)
• Server Manifest File (*.ism)
• Client Manifest File (*.ismc)
• Key Events Display on Timeline• Advertising integration• Ads and PBP markers come across as
“in-stream” data tracks - you stream data just like you stream video
• Advertising insertion via a back-end tool
• Let’s look at this on the manifest
Features Driven by In-Stream Data
• Instant VOD Replays, Instant Highlight creation – big win for NBC• Live feed ends, player automatically becomes a VOD player• On stream stop, manifest itself changes “IsLive” attribute to “false”. Player hides
live mode• Live manifest (.ISML) now copied over to a “VOD” location (.ISM). • CDN (Akamai) issues HTTP 302 redirects to VOD manifest for live manifest requests• No video data needs to be copied – the existing ISMVs are just referenced from a
VOD manifest
Live to VOD Transitions
• Rough Cut Editor – “Instant” highlights (see Jason’s session)• Highlight clips can start to be edited before the events in the clip
have finished occurring in real life!• Composite Manifest files (.CSM) • References other smooth streaming manifests – only makes head
requests.• ClipBegin/ClipEnd specified, relevant chunk references copied into
the .CSM file.• Editors can create highlight clips without creating an actual new
video or modifying any existing video, so storage cost is fixed.• Highlights of several different videos can be set up in a composite
manifest that references them all. • Let’s take a look at a .CSM file
Highlight Creation and the RCE
Rough Cut Editor
Rough Cut Editor
• The SSME (an underlying component of the SMF) is resilient to errors codes (502s, 404s, etc.) on up to 50 consecutive chunks.
• Beyond that, player must cleanly handle failures:– Auto-retry on Media Failure (built in
to SMF)– Display Alt. recommendations on
Stream Failure• Demo: Let’s see how this works
using Fiddler…
Graceful Failure Handling
• TTL Values for Player Assets, Video Streams– Balance origin offload vs. stale content
• Cache-busting– Bust the client and proxy-side caches without
busting the CDN’s edge server cache (DOS attack). – Requires CDN configuration to ignore client/proxy
cache-busting query string parameters. (Let’s look at an example in Fiddler)
• Security/URL Protection– Issue 403s on manifest requests that lack the
authentication cookie• Geo-blocking
– Restrict content per IP such that only U.S. traffic is allowed for NBCOlympics.com, Canadian traffic is allowed for CTV.com, etc.
CDN Configuration (Akamai)
• Conviva– Real time traffic numbers– Error tracking– Media Failures vs. Stream Failures– Trends analysis: we can see problems as they start to happen and
proactively fix them– Can also restrict to a specific player ID
• Akamai– Reports on 4xx/5xx, origin errors, high/low traffic errors– Basic traffic reporting - tonnage reports, manifest totals, egress
numbers• Smooth Streaming Health Monitoring
– Allows you to see actual SSME health statistics live in real time.• Other logging:
– Advertising consumption logging to DART– Video consumption logging to Omniture, Nielsen– Install tracking logging to Microsoft
Logging, Real-time Health Monitoring
Real Time Health Monitoring
Smooth Streaming Health Monitor
• MVVM Pattern– Separation of concerns within the code– Designers can work on views as developers
build ViewModels • Enforce “Blendability”
– If a code change causes a View to not work in Blend, fix immediately.
• Continuous Integration, Automated Deployments – Zero Friction– One-click deployments to any environment– Automate obfuscation, versioning of XAP and JS
assets– Archive all builds deployed beyond build site – Expose build environment to all partners
Design and Development Methodology
• Securing our video streams: – Strategy: Don’t allow unauthorized apps to play the Olympics streams. – Time server sync up– Beacon call – send out a hashed shared secret plus the time value.– Akamai (CDN) will return 403s on the video chunks if the auth cookie becomes invalid
• Man in the middle defense: – Strategy: Don’t allow unauthorized apps to launch videos in our player. – Video key generated by the host domain and passed in to the DOM.– Key constructed by hashing a shared secret plus the Video URL and ID.– Player refuses to play video if the keys don’t match.
• Entitlement- Verify MSO subscription for premium content.
Authentication and Security
• 3rd party cookies:- MSN.com (Video content) vs.
NBCOlympics.com (player assets)• Corporate/University Proxies
Other Lessons Learned
Mio Babic, CEO of iStreamPlanet– Live Ad Insertion Demo– Back End Video
Workflow• Video Workflow
Automation• Origins at SuperNAP
2010 Vancouver Olympics - Video Delivery
Video Delivery – Transmission Diagram
Video Workflow
• 17 days• 4,483hrs of content• 834 live events• 25 concurrent live streams• 100% success• 5 people
• iSP Video Workflow Automation• Scheduling• Content Acquisition• Video Routing• Encoding• Publishing Points Management• Live-to-VOD transitioning• API or Web Interface Controls
Building For Scalability & Reliability
Event Scheduler
• Slideshow mode allows easy one-by-one viewing of automatically advancing galleries.
• Grid Mode allows free-form and quick navigation of larger galleries.
• Scroll to zoom in and out of photos• Scope of the Olympics Photo experience:
– NBC: 1,573 galleries and 41,560 photos– Universal Sports: 4,400 galleries and 75,663 photos
• Smooth Streaming for Deep Zoom
Photo Viewer
Q&A
Scott Stanfield [email protected]