Delivering end-to-end video experiences with Azure Media Services
James Carpinter DEV312
AgendaOpportunities & ChallengesDelivering mediaConsuming mediaFuture
Opportunities & Challenges
OpportunitiesImprove customer & employee engagementMore compelling experiences to create brand awareness, inform customers and drive actionHelp onboard new hires, share best practice, broadcast communications from leadershipAnother component of creating compelling modern user experiences
Build your media empireMassive on-demand capacity without the upfront costReach billions of devices across the globe
ChallengesDeliveryIE, FF, Chrome, Safari, iOS, Android, Windows, Windows Phone, Xbox, Flash, Silverlight, … Recorded content vs. live streams, fixed vs. adaptive encoding, …
ReturnEnabling business models to monetize contentReducing costs to create a positive ROI
Media itselfIt’s hard: transcoding, trans-muxing, streaming, codecs, live channels, …
Delivering media
‘any content, at any time, in any place and on any
device’
Media ServicesOptimal cloud workloadScale on-demand with no upfront costsBuilt on a reliable and available platformGlobal reach through Azure DCs and CDNCompliance with security standards & best practicesCost advantages through economies of scale and usage-based pricing
Proven at Sochi 20146,000 hours of HD streaming to 5 broadcasters across 22 countries204 live streaming channels100TB storage and 500 billion storage transactions2.1 million viewers on a single authenticated stream (US vs. Canada ice hockey)
REST APIs
“Build-On” Media Partners and Customers
Azu
re C
DNM
Adaptive StreamingPorting Kits
Part
ner
CD
Ns
Origin
Caching
Secure Media Ingest
Media Job Scheduling
Encoding
ContentProtection
On-DemandOrigin
Live Origin
Analytics Identity Management
Live Ingest
Live Encoding
Client Libraries
Android
HTML 5
Advertising
Flash
XBOX
WindowsPhone
iOS
Released
Coming Soon
Partners
Partner Technologies (Media Processors, Origin Servers, Live Encoders etc.)
Static/Dynamic Packaging
Microsoft Azure
Media Services Architecture
Media
Services
Working with Media Services1. PortalBasic management functionality
2. PowerShellProvisioning functionality only at this point
3. REST APIAvailable to any platform with auth token issued by ACSOData-based so follows predictable patterns for interaction
4. SDK: .NET (via NuGet), Java, PHP, Node.jsLight native wrappers over the REST APIExposes key entities; no hints on how they wire together
Ingest
Encode
Package
Encrypt
Deliver
From end-to-end
1. IngestBroad range of source formatsIncluding codecs like H.264, MPEG-1/2/4, VC1, WMV
One destination: Azure Blob StorageProbably best to avoid browser-based uploads in the Azure PortalSDK provides helpers for efficient multi-threaded uploads directly to storageOr use your favourite tool; consider ExpressRoute or Aspera if you’re seriousMedia Services account is paired to one or more storage accounts
Security is a priority*Encrypt content before uploadEncrypt content at restUpload over an SSL connection
2. EncodeTranscoding mezzanine file to suit your scenarioChange codec, resolutions, bitrates, stitch video together, overlay video, …CPU intensive work to decompress, analyze and re-compress video‘Building a toy’
Fixed vs. adaptive bitratesFixed forces client to choose bitrate and then download video file progressivelyAdaptive allows client to dynamically adjust bitrate during playback
On demand vs. reserved unitsReserved provides more predictable performance and parallel processing
Encoding Unit
Video in
Video out
3. PackageTrans-muxing to suit your scenarioTaking encoded video and placing it in different containersNot particularly CPU intensive; no raw video is unchanged‘Gift wrapping a toy’
Static packagingCreate packaged files for each supported protocol
Dynamic packagingFrom an adaptive bitrate MP4, Media Services can deliver SS, HLS & DASHRequires origin units but reduces storage cost / complexity
Encoding Unit
Video in
Video out
Origin Unit
Video in
SS outHLS out
DASH out
Dynamic
Static
4. EncryptNot always requiredDepends on your scenarioHowever, Media Services distributes via HTTP (not HTTPS)Encryption is content protection
OptionsAES encryption: symmetric keyPlayReady DRM: magic; supports rights mgmt. but requires more infrastructure
Do you trust me?Yes – AES key sent to users ‘in the clear’; great option for internal contentNo – PlayReady DRM sends key with protection; great option for protecting broadly distributed content
5. DeliverCreate locatorsTime limited URIs that point to assetsNot access control
Fixed bitrateDirect from Azure Blob Storage
Adaptive bitrateFrom Azure Media Services origins; applies dynamic packaging/encryptionCapacity reserved in 200Mbps chunks
Consider CDN for large scale distributionAll content delivered over HTTP so can be effectively cached in network
Ingest
Encode
Package
Encrypt
Deliver
From end-to-end
demo_video.mp4to blob storage
adaptivebitrate
N/A(dynamic)
N/A(not required)
http://.../
Demo
Delivering media
From end-to-end
Video
AzureStorage
Asset
AssetFile
Task
1. Upload
Task
Task
Asset
2. Encode 3. Package
Asset
4. Encrypt 5. Deliver
Asset
Azure Media Services
Locator
AccessPolicy
Job
PricingStoragePay per GB in Azure StorageDynamic packaging helps reduce storage costs
Encoding UnitsPer GB processedFixed fee for reserved capacity (+ per GB)
Origin UnitsDeliver adaptive streaming output; provide dynamic packagingReserved network capacity (200 Mbps per unit)
NetworkIngress/egress trafficCDN charges
Pay only for what you useCheap to get up & runningTune your solution to the pricing model
Consuming media
WebHTML5 videoSupported by ~75% of the market; all major browsers support MP4Progressive download / Fixed bitrate
MPEG-DASHPart of W3C Media Source ExtensionsEnables adaptive streaming Early stage (IE11, Chrome, FF*)
PluginsNobody likes plugins any more (battery life, patching, mobile browsers, …)Consider when targeting desktops & adaptive bitrate, DRM or advertisingFlash and/or Silverlight support Smooth Streaming
ü Supported by Media Services
ü Supported by Media Services
ü Supported by Media Services
Apps & DevicesWindows & Windows PhoneRich media platform out of the boxSmooth Streaming SDK for adaptive bitrate; PlayReady SDK for DRM
iOSSupports Apple HLS adaptive bitrateLicensed SDKs for Smooth Streaming & PlayReady
AndroidSupports Apple HLS adaptive bitrate (multiple versions)Licensed SDKs for Smooth Streaming & PlayReady
And beyond…Xbox provides OOB supportSmooth Streaming Porting Kit & PlayReady Porting Kits for other platforms
ü Supported by Media Services
ü Supported by Media Services
ü Supported by Media Services
ü Supported by Media Services
PlayersFor basic scenariosPlatforms provide out-of-the-box players
For advanced featuresMicrosoft Media Platform Player Framework helps build advanced playersSupports Windows, Silverlight, Flash, HTML5Features include advertising, closed captioning, skinning/styling, …Separate iOS sample available to accelerate iOS developmentOr look at other frameworks like video.js
Demo
Consuming media
ClientsFragmented consumersFor web, consider progressive & plugins (and MPEG-DASH soon)For apps, consider platform offerings & available SDKsFor both, consider player framework for advanced features
Single serviceAzure Media Services supports Smooth Streaming / HLS / MPEG-DASH / AES / PlayReady …
Future
Preview featuresDynamic EncryptionApply AES on-the-fly before delivering to clientsCombine with dynamic encoding for broad reach
Ingest
Encode
Package
Encrypt
Deliver
Preview featuresAES key service & PlayReady as a ServiceSend a request with a signed token, get back key/license
App
Azure Media
Services
Key Service
Azure Blob Storage
Preview featuresLive StreamingProduce content and push to consumers in near real-timeContent is recorded for later on-demand playback
Ingest
Encode
Package
Encrypt
Deliver
Azure Media ServicesRecord
Encode
Ingest
Preview
Program
Deliver
Demo
Future
FuturePreview availableCheck out these new features for yourselves
SummaryVideo is here to stayThink about how to take advantage of it in your organization
Azure Media Services makes video easyFrom ingest to delivery, the cloud does the hard work
Reach every customer with MicrosoftWith Media Services + frameworks, you can reach more browsers and devices
Related contentBreakout Sessions (session codes & titles)DEV316: Deep dive into Hidden Gems, Tips and Tricks for Azure Web SitesDEV320: Building web applications at scale with Azure Websites
Find Me Later At...Hub Happy Hour (Wed & Thu 5:30 – 6:30 pm)
Resources
TechNet & MSDN FlashSubscribe to our fortnightly newsletter
http://aka.ms/technetnz http://aka.ms/msdnnz
TechNet Virtual LabsFree Virtual Hands-on Labs
http://aka.ms/ch9nz
Microsoft Virtual AcademyFree Online Learning
http://aka.ms/mva http://aka.ms/technetlabs
Sessions on Demand
Complete your session evaluation now and win!
© 2014 Microsoft Corporation. All rights reserved.Microsoft, Windows and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries.MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.
Top Related