Microsoft Azure Media Services Mingfei Yan yanmfMicrosoftcom Program Manager Windows Azure Media Services Mariano Converti marianoconvertisouthworksnet Lead Developer Southworks 3610 ID: 739320
Download Presentation The PPT/PDF document "Build end-to-end video experiences with" is the property of its rightful owner. Permission is granted to download and print the materials on this web site for personal, non-commercial use only, and to display it on your personal computer provided you do not modify the materials and that you retain all copyright notices contained in the materials. By downloading content from our website, you accept the terms of this agreement.
Slide1
Build end-to-end video experiences with Microsoft Azure Media Services
Mingfei Yanyanmf@Microsoft.comProgram ManagerWindows Azure Media Services
Mariano Convertimariano.converti@southworks.netLead DeveloperSouthworks
3-610Slide2
Agenda
What is
Microsoft Azure Media ServicesArchitecture and FeaturesVideo-on-demand service
Basic media workflow
Dynamic packaging
Secure delivery
Live Streaming service
How does it work Slide3
Video contributes to
57% of internet trafficSlide4
Everyone could
create
videosSlide5
Long form content
over IP deliverySlide6
2013
152
millions
75
millions
30
millions
Traditional
TV
Connected TV
Streaming gadgetSlide7
More Screens = More Viewership
Viewers who consume on 4 devices WATCH 42% MORE television than those who only watch TV onlySlide8
C
hallenges
Infrastructure costs
Managing costs
Monetizing contents
Digital Rights Management
Security
Multiple formats, multiple bitrates
High Quality videos for any device
Anywhere and Anytime
Agile, Scalable,
Cost-Effective Slide9
What is Microsoft Azure Media Services?Slide10
Media Services Architecture
REST APIs
“Build-On” Media Partners and CustomersAzure CDNMedia ServicesAdaptive Streaming
Porting Kits
Partner CDNs
Origin
Caching
Secure
Media Ingest
Media Job
Scheduling
Encoding
Content
Protection
On-Demand
Origin
Live Origin
Analytics
Identity Management
Live Ingest
Live Encoding
Client Libraries
Android
HTML 5
Advertising
Flash
XBOX 360
Windows
Phone
iOS
Released
Coming Soon
Partners
Partner Technologies (Media Processors, Origin Servers, Live Encoders etc.)
Static/Dynamic Packaging
(Fabric, Storage, Compute, Database)Slide11
Video-on-demand Services
Ingest
Encode
Package
Encrypt
DeliverSlide12
Step 1: Ingest Content
Different options of Ingesting a Mezzanine AssetPre-encrypt files prior to uploading (AES 256)Secure HTTPS uploadNetwork level peering for fast HTTP into AzureFast upload using UDP with
AsperaMultiple storage accounts enabled to manage your media asset INGESTAzure Blob
ASSETSlide13
Step 2: Encode, Package or Encrypt
Encode
Azure Blob
Azure Blob
QueueSlide14
Windows Azure Media Encoder
Supports encoding to H.264 or VC-1 videoEncodes audio to AAC-LC, HE-AAC, Dolby DD+, WMAPackages to MP4, Smooth Streaming,
Http-Live-Streaming Encrypts with PlayReady, Common Encryption, AESEncoding with third-partiesPartner SDK for enabling ‘build-in’ encodersEncode
Encode
Encode
Azure Blob
Azure Blob
Encoding Reserved Units
Step 2: Encode, Package or EncryptSlide15
Step 3: Deliver Content
Managed streaming service… it just works!Guaranteed bandwidth
Auto recovery, redundancy and failoverMultiple origins support and scale independently Azure and 3rd party CDN supportIP WhitelistingIngest
Azure Blob
Asset
Encode
Stream
Origin ServerSlide16
Pricing and SLA
Encoding ServiceFree Trial
(3mths)SharedReservedEncoding PriceFree(100GB limit)$1.99 Per GB $1.99 Per GB + $99 per month/RU EncodingSLA
NA
Availability
=
99.9%
Measured as REST API availability
No guarantee
on wait time between tasksAvailability = 99.9%
Measured as REST API availabilityMedia tasks running concurrently = Number of reserved units
Streaming Service
Free Trial
(3mths)
Shared
Reserved
Streaming Price
Free
(100GB limit)
Standard Egress Rates
Standard egress rates +
$199 per month
Streaming
SLA
NA
Availability
=
NA
No bandwidth guarantee
Availability
=
99.9%
Measured as server availability based on response time
Peak bandwidth of 200 Mbps per Reserved Unit allocated for Origin
For more information, please refer to
Windows Azure Media Services Pricing DetailsSlide17
Demo: Microsoft Azure Media Services workflow
Microsoft Azure portal for media servicesSlide18
Media Services APIs and SDKs
REST API for all platforms
Reference:
http://
msdn.microsoft.com/en-us/library/windowsazure/hh973617.aspx
.NET library
Nuget
package:
https://nuget.org/packages/windowsazure.mediaservices
GitHub: https://github.com/Azure/azure-sdk-for-media-servicesExtensions for .NET SDK:
https://
github.com/sazure/azure-sdk-for-media-services-extensions
PHP Library (Just Released!)
GitHub
:
https://
github.com/windowsazure/azure-sdk-for-php
Open Tech
blog with demo:
http://msopentech.com/blog/2014/01/23/ms-open-technologies-enhances-open-source-php-sdk-windows-azure
/
JAVA library
http://www.windowsazure.com/en-us/develop/java/java-home
Windows / Mac / Linux
GitHub
:
https
://github.com/windowsazure/azure-sdk-for-java/
PowerShell
cmdlets
How to use:
http://www.gtrifonov.com/2013/08/24/how-to-use-windows-azure-powershell-for-media-services
/
Node.js library
GitHub
:
https
://
github.com/fritzy/node-azure-mediaSlide19
Feature highlight- Dynamic PackagingSlide20
Feature highlight- Dynamic packagingAllows you to re-use your encoded content and bring it to various streaming formats without repackaging the content.
Video sources
Multi-bitrates Mp4Origin Server
HLS
Smooth
Streaming
Encode
Package
Video sources
Multi-bitrates Mp4
Origin Server
HLS
Smooth
Streaming
Encode
Dynamic
Packaging
Traditional Encode and Package
Dynamic Packaging
Package
Input format: Mp4 or Smooth Streaming
Output format: Smooth Streaming , Http-Live-Streaming (v4 and
v3
), MPEG-DASH
You need to have at least 1 reserved streaming unit to enable dynamic packaging!
DASHSlide21
Demo: How to use dynamic packaging feature to produce SS, HLS and DASH content
Dynamic packaging using .NET SDK extension for Media Services
Bit.ly/bldvideoSlide22
Useful information - Dynamic Packaging
Full demo code at:Introducing Extensions for Windows Azure Media Services .NET SDK
Demo – how to create HLS and Smooth Streaming assets using dynamic packaging By Mingfei YanOther readings:Dynamic packaging and Encoding and Reserved units By Nick DrouinSlide23
Secure your media – options with WAMSSlide24
Why do you need to secure your content
Subscription Fee
(
U
ser Authentication)
Ad-funded
(Player Authentication)
High-premium content provider:
Prevent piracy
Prevent Man-in-the-middle
Ad-funded
(Player Authentication)
Employee only
Enterprise or Time-sensitive event:
Piracy is not a major issue
Prevent Man-in-the-middle Slide25
Options with Media Services
Encrypted
Encrypted
Encrypted
Encrypted
Encrypted
Encrypted
Encrypted
Prevent “man-in-the-middle”
AES
c
lear key
d
ynamic encryption
DRM technology
+ licensing agreement Slide26
Options with Media Services
AES Clear Key dynamic encryption
Encrypt on-the-wire communication using the widely-known symmetric AES encryption algorithm. An authentication service for key is provided.
Who should use this feature:
“Trust your client
”
: Key is stored in clear format so it requires you to trust your client not to pass key around
“Light” encryption:
prevent “man-in-the-middle” attack
Lower cost compared to DRM solution
DRM technology (PlayReady)
Encrypt Smooth Streaming content with PlayReady protection via common encryption scheme (CENC), and the option of packaging it into HLS or DASH. DRM technology allows you to define restrictive licensing agreement to manage user access rights to your media.
Who
should use this feature:
Premium
content or high business impact content: decoding happens in a secure DRM decoder environment
Prevent piracy and “man-in-the-middle” attack
More business models enabledSlide27
Storage
MP4
Define:
Asset Delivery Policy: Dynamic Encryption
Content Key
Content Key Authorization policy
Token/IP/Open
Origin Server
HLS + AES (http)
Smooth Streaming + AES (http)
M
AMS
- Key Services
Token
verification
AES Key
Request Key with token (https)
Return key if token verified(https)
Client SDK
Customers
Architecture: AES Dynamic Encryption
C
ustomer’s Authz system
Login
Issue tokenSlide28
Secure Delivery features – AES dynamic encryption
Service:
Enabled through dynamic encryption feature – only keep a copy of multi-bitrates Mp4/smooth streaming, and generate encrypted
Http-live-streaming or
Smooth streaming on the fly
Key
services
to client with token-authentication, currently only Simple Web Token(SWT) is supported
Client:
Windows 8 cache plugin to decrypt AES encrypted smooth streaming
iOS
SDK sample code to decrypt AES encrypted HLS stream
Flash OSMF plugin to decrypt AES encrypted smooth streaming
*Require
“trust client”: key is stored by client in clear format
Future Plan:
Optional Storage
decryption
DASH encrypted stream
Currently in private preview Slide29
Demo: Dynamic encrypt Smooth Streaming content with AES, play back using Win8 store app
Demo:AES Dynamic Encryption with key service Slide30
Pre-encrypted PlayReady file:
License Acquisition URL
Key IDContent key
Storage
Origin Server
PlayReady
+ Smooth
Streaming
PlayReady server
Request license
Return
license
Client
SDK
+
PlayReady SDK
Customers
Architecture:
PlayReady DRM solutionSlide31
Useful information – Secure delivery
Overview:Secure your media with Azure Media Services via MSDN
Protecting Smooth Streaming and MPEG DASH with PlayReady via MSDNHow to Protect an asset with PlayReady protection via MSDNSession video: Introducing the New Office 365 Video ExperienceHow to join AES encryption private preview:Email me at yanmf@Microsoft.com Slide32
Why do you need to secure your content
Subscription Fee
(
U
ser Authentication)
Ad-funded
(Player Authentication)
High-premium content provider:
Prevent piracy
Prevent Man-in-the middle
Ad-funded
(Player Authentication)
Employee only
Enterprise or Time-sensitive event:
Piracy is not a major issue
Prevent Man-in-the middle
DRM
AESSlide33
Video for Office 365
simple | fast | mobile | secure
powered by Azure Media ServicesSecure, cloud-based video upload, storage and optimized playback for the enterpriseCreate, manage and subscribe to various channelsCapture, share and discover from any deviceSlide34
Powered By
Azure Media
Microsoft
Services
Your
OrganizationSlide35
Live StreamingSlide36
Media Services Live
Stream live content directly through public cloudMulti-format
output (Smooth Streaming, HLS and DASH)Global reach – deploy anywhere quicklyCloud elasticity No capital expensesRamp quickly to global scaleTear down immediatelyPrivate preview with more than 70 customers Apply via aks.ms/wamslive to get accessSlide37
How does live streaming work?
Channel
WA Load Balancer
INGEST
PREVIEW
PROGRAM
PROGRAM
Blob Storage
Preview URL
Program URL
Ingest:
Ingest URL
to accept Live streams
with
different
bitrates (smooth streaming)
through
load balancer
Forwards the stream to all preview
end-points
Preview:
Receives stream from Ingest
Forwards to Program
Exposes Preview URL (for monitoring and voice-over)
Program:
Writes it to Blob Storage for Live DVR and
Archive
Dynamic package into HLS, Smooth and DASHSlide38
Live Streaming demo
Ingest URL
Program URL
Media ServicesSlide39
Try out
Microsoft Azure Media Services www.windowsazure.com/media
Microsoft Azure Media Services accounts are Free for 90 daysAsk questions on our public forum. http://social.msdn.microsoft.com/Forums/en-US/MediaServices All presentation and code demo will be published at mingfeiy.comOr send me a question:Mingfei Yan: yanmf@Microsoft.com Twitter: @mingfeiySlide40
Q&ASlide41