YouTube 2018 3.1M NBC’s Super Bowl NBC Sports App 2018 10.3M IPL 2018 - Finals hotstar May 2019 18.6M IPL 2019 - Finals hotstar July 2019 25.3M World Cup - India vs New Zealand hotstar
• Software decoding fallbacks • Play both audio and video - locally and over internet • DASH and Smooth Streaming adaptive playbacks • Customizable • Extendable • Can be updated through play store application updates
• Update huge user base. • One shot update or progressive update • It’s not a backend ◦ Rollback needs time ◦ There is always residual users • Certain product features - A must to have!
Interactive Media Ads SDK (IMA) using Ads Media Source • Complete control of execution flow • In - house ads playback experience • IMA SDK handles standard VAST response • Display ads on it’s “internal” logic • IMA SDK - not complete open source. • Non customisable
url • Insert markers in existing url - Tags • Custom HLS Parser - Tag Based • On the basis of tags call Ads API Player Switching Approach 1. 2 Players at same time. 2. One for ads 3. One for content Ad Stitching Approach 1. Get Ads marker before video start 2. Combine it in current media source 3. Redirect when ads
callbacks • Even event callbacks, error callbacks,retry callbacks etc. • Handling user inputs • Video settings like subtitle, audio language, video resolution etc
player module • Required additional metadata to make certain decisions • Display custom player controls • Handling of error messages. • Handle analytics events based on player’s lifecycle • Event and error callback analytics • Handle player orientation changes
first frame. • Difference between playback url given to player and first buffering end callback received • Start lag can be high if : 1. Slow network 2. High network latency 3. High initial bitrate •
users on stable WIFI “A balanced equation of available bandwidth, estimated bandwidth, forward buffer and content availability in different resolutions” •
always challenging. • Time needed to develop ads + streaming • For premium users it’s an ads free experience • Premium subscribed users were first use case of performance
• DownloadManager of Exo player • Rolling out VOD and Live separately • Optimizing parameters for manifest specifications, content encoding ,live latency based on content • Different player parameters for different specification
instance player • Listen to scroll movements • Attach and detach player smartly • Caching at player level • Resume at same point when clicked • Resolution capping • Bitrate capping
during playback • Can know the widevine security levels whether L1 or L2 • Run time buffer analysis • Network analysis • Rescue to customer care support