dev312. “build-on” media partners and customers azure cdn m partner cdns origin caching released...

40
Delivering end-to-end video experiences with Azure Media Services James Carpinter DEV312

Upload: polly-matthews

Post on 26-Dec-2015

213 views

Category:

Documents


0 download

TRANSCRIPT

Delivering end-to-end video experiences with Azure Media Services

James Carpinter DEV312

AgendaOpportunities & ChallengesDelivering mediaConsuming mediaFuture

Opportunities & Challenges

Photo credit: Doug Kline (CC)

Photo credit: Brad Tutterow (CC)

Photo credit: Beraldo Leal (CC)

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 Services

Record 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.