Download as pptx, pdf, or txt
Download as pptx, pdf, or txt
You are on page 1of 59

Video on

Demand (VOD)
Technical data deck
Agenda
Technical introduction Players
• Market situation & fragmentation
Media ingest • Azure Media Player
• • Native app solutions
Ingest technologies
• • Partner solutions
Assets & asset files

Encoding Additional resources


• Encoding process
• Jobs & tasks
• Media Encoder Standard (MES)
• Media Encoder Premium Workflow

Publishing
• Streaming units
• Locators
• Dynamic packaging
• Dynamic manifest
Deliver media anywhere
What happens when you combine a great cloud with great delivery?

Cloud based applications and services—delivered to your users and customers—anywhere


in the world—with unparalleled scale, speed, security, and accuracy

Azure global Azure CDN


datacenters Delivery
More than AWS and Google Only public cloud
Cloud combined with multi-CDN
Platform Services

Security & Compute Web and Mobile Developer Services Hybrid


Management Cloud Service
Operations
Web Apps API API
Services Fabric Apps Management Visual Studio Azure SDK

Portal Azure AD
Connect Health
Batch Mobile Logic Notification
Remote App Team Project Application
Apps Apps Hubs
Active Insights AD Privileged
Directory Identity
Management

Multi-Factor
Authentication Analytics & IoT Media & CDN Data Backup

VoD/Live Media
HDInsight Machine Transcoding Analytics SQL SQL Data
Automation Operational
Learning Database Warehouse
Insights

Key Vault Data Event Multi DRM VoD/Live Channel Redis Import/Export
Streaming Cache Search
Factory Hubs

Store /
Marketplace Site
Stream Mobile Recovery
Azure Media Content Delivery DocumentDB Tables
Analytics Engagement
Player Network (CDN)
VM Image Gallery StorSimple
& VM Depot

Infrastructure Services
Compute Storage Networking
Virtual Containers BLOB Azure Files Premium Virtual Load DNS Express Traffic VPN Application
Machines Storage Storage Network Balancer Route Manager Gateway Gateway

Datacenter Infrastructure (24 Regions, 22 Online)


Azure Media Services
Azure Media Services is an extensible, multi- Plus a growing
ecosystem of value-
tenant platform that enables end-to-end
add third party
video workflows in the Azure public cloud. partner components

Cloud upload Encoding & Content Live & on demand Player


& storage media analytics protection streaming clients
with integrated CDN
Cloud upload & storage

• Fast, parallel writes, secure and protected both during transit and while at
rest in the cloud
• Secure HTTP and fast UDP upload for files
• RTMP, MPEG2-TS/RTP, and fMP4/HTTP ingest for Live
• Multiple storage redundancy options
• Azure ExpressRoute
• Lower latency
• Increased reliability and speed
• Better security
Encoding

• Elastically scale to support lots of parallel jobs


• Pay only for what you use, charged per Output GB
• Broadcast/Studio quality video and audio formats
• Ingest MXF, Apple ProRes, MPEG2 TS, and many more…
• Output H.264, Dolby Digital/AC3, Dolby Digital+, AAC-LC and HE, Multi-
Language Tracks
• SD, HD, or 4K AVC content (HEVC coming soon)
• Closed Captioning support
Content protection
Fairplay
• Secure upload and storage encryption options
• Dynamic encryption options for content streaming
• AES-128 clear key
• Microsoft PlayReady digital rights management
• Google Widevine
• Apple Fairplay
• Common encryption support

• Hosted license or key delivery


• Token-based authentication models and integration with Active Directory
Live & on demand streaming
with CDN
• Elastically scalable streaming service for on-demand and live streaming
• Instantaneous live to VoD
• Cloud DVR features
• Subclipping for highlight creation

• Multi-protocol dynamic packaging for streaming to all devices


• MPEG-DASH / Apple HLS / Microsoft Smooth Streaming / Adobe HDS

• Direct integration with CDN, full featured CDN options


• Dynamic manifest manipulation (DMM) / Asset Filters by audio track, bit rate
• Real-time health data and telemetry
Player clients

• Free player that works across platforms and devices


• Single player for all screens and devices
• HTML / JavaScript / CSS development
• HTML5 with fallback to Flash / Silverlight
• Auto-detect and playback of best format
• Customize and embed it in your own web or mobile site
• Try it @ http://aka.ms/ampdemo
Azure Media Services Portal

Very convenient to setup the


Media Services account and test
some of the features.
But has some limitations:
- Upload size
- No access to all processors
Azure Media Services Explorer Tool
A UI to play with Media Services

Release
http://aka.ms/amse

Source code
https://github.com/Azure/Azure-Media-Servic
es-Explorer/

Blog post
http://azure.microsoft.com/blog/2014/10/08/
managing-media-workflows-with-the-new-az
ure-media-services-explorer-tool/
Azure Media Services SDKs and REST API
You can call the API from any development language and implement
complex workflows

PHP: https://azure.microsoft.com/en-us/develop/php/
Java: https://azure.microsoft.com/en-us/develop/java/
.NET: NuGet package: windowsazure.mediaservices
AMS Acct

Media Ingest
• HTTP Upload
• Can use ExpressRoute ASSET ASSET ASSET

• ASPERA or SIGNIANT VM Blob Storage Acct


• Accelerated upload
• Use with BULK HTTP BULK
ASPERA
(HTTP)

ExpressRoute
(Block Blob) SIGNIANT
• BULK Upload
• Create ingest manifest (BULK)
• Upload files to Blobs
(optional AES encryption)
• Poll manifest progress

FILE(S)
Media assets
Block Blobs inside Storage Container

ASSET
... • Video Files
(stitching, video overlays)
.MXF .MP4 .TS .MOV

• Audio Files
... (dubbing, audio overlays)
.WAV .MP3

... • Caption & Subtitle Files


(subtitling, captioning)
.SCC .TTML

... • Images
(logo overlay)
.PNG
Assets
Are identified through a unique ID – link to a block blob location on storage
Can take a custom ID through their “AlternateId” attribute
Can be uploaded
• Clear: no encryption (AssetCreationOptions.None)
• CENC: for CENC encrypted content (AssetCreationOptions.CommonEncryptionProtected)
• Envelope: for HLS AES encrypted content (AssetCreationOptions.EnvelopeEncryptionProtected)
• Storage Encrypted: on-disk AES 256 encryption (AssetCreationOptions.StorageEncrypted)

When encrypted before upload, the key needs association with asset
Unencrypt:
• For Encoding / Processing: automatic decryption for Storage Encrypted assets (not for CENC or Envelope)
• For Streaming: or progressive download: through an Asset Delivery Policy
with policy type “NoDynamicEncryption”
• Unencrypt with a processor
• Download through SDK
Asset upload example
Add NuGet package “windowsazure.mediaservices”

Create CloudMediaContext object using AMS Credentials


IAsset inputAsset =
_context.Assets.Create(assetName, AssetCreationOptions.None);

var assetFile =
inputAsset.AssetFiles.Create(“video.mp4”);
assetFile.upload(@“C:/videos/video.mp4”);

.NET SDK Extensions allow conveniently for:


_context.Assets.CreateFromFile(path, options)
Encoding
Transparantly encode
• Manage Jobs by Priority assets encryped-at-rest
• Jobs contain serial &
Job Submission parallel tasks

Input Asset Blob Storage


Jobs Queue
Output Asset

Reserved Units
Media Services
VOD Encoding Stage
• Scale Up
• Scale Out
• Manage Jobs by Priority
Chaining:

Encoding – Jobs & tasks


Serial Tasks
Parallel Tasks

Processing Job Processing Task

Each Task points to:


- Input Asset(s)
JOB TASK
TASK 1 - Output Asset
- Media Processor
- Preset or
Processor Configuration

TASK 2 TASK 3
Media processors for encoding
Media Encoder Standard Media Encoder Premium Workflow
Presets: Ease Presets: Power
- Single string presets - No presets
- Customizable JSON presets - Always custom designed, using
- Declarative Premium Workflow Designer

Use when: Use when:


- Default “unless” ... - Expertise in media encoding
- Supported input & MP4 h.264/aac multibitr out - MP4 & Non-MP4 output (MXF, MPEG-TS, ...)
- Apple Pro-Res input or QuickTime MOV, WebM or PIFF - Custom logic during encoding
h.264 input up to 4:2:2, Pro-Res up to 4:4:4
- MXF Input (channel mapping)
- Careful with .MXF (no channel mapping)
- Dolby in (E/AC3/E-AC3) & out (DD+)
- No requirement for dynamic decisions
- Closed Captioning, Subtitle burning, ...
- In China (no Premium WF deployed)

Please move away from Azure Media Encoder (AME or WAME)


Media Encoder Standard
Use Preset Name (String) OR a custom json preset. Example:

{ { {
"Version": 1.0, "Profile": "Auto", "Profile": "AACLC",
"Codecs": [ "Level": "auto", "Channels": 2,
{ "Bitrate": 400, "SamplingRate": 48000,
"KeyFrameInterval": "00:00:02", "MaxBitrate": 400, "Bitrate": 128,
"H264Layers": [ "BufferWindow": "00:00:05", "Type": "AACAudio"
{ "Width": 320, }
"Profile": "Auto", "Height": 180, ],
"Level": "auto", "BFrames": 3, "Outputs": [
"Bitrate": 3400, "ReferenceFrames": 3, {
"MaxBitrate": 3400, "AdaptiveBFrame": true, "FileName": "{Basename}_{Width}x{Height}_{VideoBitrate}.mp4",
"BufferWindow": "00:00:05", "Type": "H264Layer", "Format": {
"Width": 1280, "FrameRate": "0/1" "Type": "MP4Format"
"Height": 720, } }
"BFrames": 3, ], "Type": "H264Video" }
"ReferenceFrames": 3, }, ]
"AdaptiveBFrame": true, }
"Type": "H264Layer",
"FrameRate": "0/1"
},
Media Encoder Standard
var job = _context.Jobs.Create(“MES Job”);
var processor = _context.MediaProcessors.Where(p => p.Name ==
“Media Encoder Standard”).ToList().OrderBy(
p => new Version(p.Version)).LastOrDefault();

var task = job.Tasks.AddNew(“my task”, processor,


“H264 Multiple Bitrate 720p”,
TaskOptions.None);
task.InputAssets.Add(asset);
task.OutputAssets.AddNew(“result asset”, AssetCreationOptions.None);

job.Submit();
Media Encoder Premium workflow
Does not take a preset string but takes a workflow as first input asset
Create a .workflow file using the “Workflow Designer” desktop software
Upload .workflow file into a new Asset
When launching “Media Encoder Premium Workflow” job:
• Use .workflow asset as first input asset
• Use media asset to encode as second input asset
• Use an empty configuration string, unless for advanced “property-override” scenarios like multi-file input

var task = job.Tasks.AddNew(“my task”, premiumprocessor,


“”,TaskOptions.None);
task.InputAssets.Add(workflowasset);
task.InputAssets.Add(assettoencode);
task.OutputAssets.AddNew(“result asset”, AssetCreationOptions.None);
job.Submit();
Publishing
MP4MP4MP4MP4 MP4 MP4 ISM
1080720540540 Dutch
French
4Mbps4Mbps
2Mbps
1Mbps AudioAudio
Job Submission

Input Asset Blob Storage


Jobs Queue
Output Asset

Reserved Units • Url valid from – to


• HLS v3/v4 – Smooth – MPEG-DASH – HDS
VOD Encoding Stage • AES Encryption / Common Encryption
• Scale Out (blocks of 200 Mbps) • PlayReady, WideVine & FairPlay
• Dynamic Packaging • Dynamic Manifest
• Dynamic Encryption
Streaming Units • Dynamic Encryption
Media Services
• “checkbox” CDN Integration
Streaming Stage
Streaming Locator URL
Publishing – Streaming units
Can be IP whitelisted for integration with third party CDNs
Maximum cache age (if none set on blob storage directly)
Cross domain policies for SilverLight and Adobe Flash
Custom Host Name support
At least one dedicated unit required for
• Dynamic packaging
• Dynamic encryption
Publishing - Locators

SAS Locator Streaming Locator


• Points direct to blob storage • Creates endpoint on Streaming Unit
• Download/upload of asset files • Adaptive bitrate streaming
• Supports HTTPS • Progressive download
• Start DateTime/Stop DateTime • Supports HTTPS
• Cannot be updated • Start DateTime/Stop DateTime
• Can be updated
Dynamic Packaging
• Configure player with right url,
depending on the platform & browser

Streaming Stage http://.../manifest


SMOOTH

http://.../manifest(format=mpd-time-csf)

LOCATOR
MPEG-DASH

http://.../manifest(format=m3u8-aapl)
Streaming
HLS
Units
http://.../manifest(format=f4m-f4f)
• No static packaging, just once the storage HDS (Adobe licensed users only)
• Same url, only differing by suffix
Output • Also works with assets encrypted-at-rest
Asset
Dynamic Manifest: filters
http://.../manifest(filter=mytrackfilter)

http://.../manifest(filter=mytimeandtrackfilter)

Tracks
Streaming Stage http://.../manifest(filter=mytimefilter)
Filter

manifest(filter=mytrackfilter;mytimefilter)

Time
Streaming
Filter
Units
Combined
• Filters can be on two levels:
• Asset Filter
Output • Global
Asset • Asset filters take precedence over global filters when same name is used
• Filters can be combined: (filter=firstfilter;secondfilter) 3 filters max
Filtering tracks

4 Mbps
2 Mbps
Tracks Streaming Stage
Filter

1 Mbps
Streaming
French Audio
Units
Dutch Audio

All track filtering parameters apply to both VOD and Live:


• Type: Live or VOD
• Track Name
• Track Language (RFC 5646)
• FourCC (first element of codecs format specified in RFC 6381)
• Bitrate
Filtering time

4 Mbps
2 Mbps
Time Streaming Stage
Filter

1 Mbps
Streaming
French Audio
Units
Dutch Audio

• Start (GOP accurate)


• End (GOP accurate – ignored for LIVE)
• Presentation Window (sliding window at live edge)
can be shorter than the DVR window
• Live Backoff (ignored for VOD): delay for live stream

All are expressed in the given time scale (default 10 000 000 HNS)
Learning path – Video on demand

https://azure.microsoft.com/en-us/documentation/learning-paths/media-services-streaming-on-demand
Players
Fragmentation

PC/MAC MOBILE
VIDEO BROWSER BROWSER

NO PLUGIN

DRM MOBILE TV/STB


APPS APPS
Introducing Azure Media Player
A free JavaScript web based player
• Intelligently chooses the correct playback tech
• Auto-select of streaming protocol from AMS
• Single unified JS development experience
Cross platform
• Works on popular browsers and devices
• Web view embeddable
Simple “just works” experience
• Easy dev with standard media element APIs
• Uses standards for MSE/EME for HTML5 playback
• Plugins, with a gallery
• Analytics (with Application Insights & Power BI)
Strong adoption: http://aka.ms/azuremediaplayer
• In use by 250+ domains
• Served 16+ million streams
Azure Media Player playback

Mpeg
Dash

Smooth
Streaming

Content
HLS Protection

Dynamic Packaging from Azure Automatic detection and playback across


Azure Media Player
Media Services a wide range of browsers/devices
Architecture
Azure Media Player

Unified CSS UI

Unified JS Interface

Tech order
• Detect browser/device capabilities
DASH player
• Auto determines the best player based on tech order
(HTML5 EME/MSE)
• Selects the correct streaming URLs from AMS
Flash player

Silverlight player
Playback (VOD, live, protected content)
Native HTML5
(Built in browser)
Auto-select of streaming tech
Firefox 41
ith Flas
h Win 10
ac k w
Playb gh t PlayReady
CLEAR
wit h Silverli
ck
Streaming Stage Playba
Playback with Flash
IE11
SMOOTH Win 7
Playback with Silverlight
PlayReady
CLEAR

LOCATOR
Playback with HTML5 MSE IE11
MPEG-DASH Win 10
Playback with HTML5 EME
CLEAR
PlayReady

Streaming Playback with HTML5 Safari


HLS
Units (native HLS support in IOS)
IOS 8
CLEAR
Demo

aka.ms/azuremediaplayer
Getting started
1. Add the JavaScript libraries (CDN)
2. Initialize with JavaScript or HTML
<!DOCTYPE html>
<html>
<head>
<!--Azure Media Player Scripts-->
<link href=“//amp.azure.net/libs/amp/latest/skins/amp-default/azuremediaplayer.min.css" rel="stylesheet" type="text/css">
<script src="//amp.azure.net/libs/amp/latest/azuremediaplayer.min.js"></script>
</head>
<body>
<video id="azuremediaplayer" class="azuremediaplayer amp-default-skin amp-big-play-centered" tabindex="0"> </video>
<script>
var myOptions = {"nativeControlsForTouch": false, autoplay: true, controls: true, width: "640", height: "400", poster:
"[poster uri]" };

var myPlayer = amp("azuremediaplayer", myOptions);


myPlayer.src([{ src: "[src uri]", type: "application/vnd.ms-sstr+xml" }]);
</script>
</body>
</html>
Compatibility matrix
Browser OS Expected Tech(Clear) Expected Tech(AES) Expected Tech (DRM) Supported
Windows 10
Edge
Windows 8.1 azureHtml5JS azureHtml5JS azureHtml5JS (PlayReady)
IE 11 Issues
Windows Phone 101
IE 11 Windows 7
flashSS flashSS silverlightSS (PlayReady)
IE 9-101 Windows Vista1
Unsupported
IE 11 Windows Phone 8.1 azureHtml5JS azureHtml5JS not supported

Edge Xbox One1 (Nov 2015 update) azureHtml5JS azureHtml5JS not supported
Windows 10
Chrome 37+ Windows 8.1 azureHtml5JS azureHtml5JS azureHtml5JS (Widevine)
Mac OS X Yosemite1
Windows 10
Firefox 42+ Windows 8.1 azureHtml5JS azureHtml5JS silverlightSS (PlayReady)
Mac OS X Yosemite+1
Windows 10
Firefox 35-41 flashSS flashSS silverlightSS (PlayReady)
Windows 8.1
Safari iOS 6+ html5 html5 (no token)3 not supported
Safari 8+ OS X Yosemite+ flashSS flashSS silverlightSS (PlayReady)

Safari 6 OS X Mountain Lion1 flashSS flashSS silverlightSS (PlayReady)

Chrome 37+ Android 4.4.4+2 azureHtml5JS azureHtml5JS azureHtml5JS (Widevine)


Chrome 37+ Android 4.02 html5 html5 (no token)3 not supported
Firefox 42+ Android 5.0+2 azureHtml5JS azureHtml5JS not supported
IE 8 Windows not supported not supported not supported
Features
• Playback of AMS content:
• VOD and Live Coming soon
• AES-128 encrypted steams • More customizations
• Multi-DRM encrypted streams
Microsoft Playready & Google Widevine • Live Subtitles/Captions support
• Easy Implementation
• Trick-Play
• dynamically via JavaScript
• statically via <video> tag • Ads support
• Unified JavaScript APIs and player UI
• Analytics
• Automatic tech and protocol selection
• Accessibility • Multi Instance Playback
• Hot Keys • Audio Only / Video Only playback
• WebVTT Captions and Subtitles support
• Heuristic Profiles (in some techs) • Multi-period presentations
• Bitrate Selection (in some techs) • Multiple camera angles
• Multi Audio Streams (in some techs)
• Localization
• Analytics integration hooks
Multi-DRM support
• EME utilizes standards for CENC
• Browsers support different Content Decryption Modules (CDM)
• Edge/IE supports PlayReady
• Chrome supports Widevine
• Firefox and Safari support PlayReady via Silverlight
var myPlayer = amp("azuremediaplayer", /* Options */);
myPlayer.src([{
src: "[src uri]",
type: "application/vnd.ms-sstr+xml",
protectionInfo: [
{ type: "PlayReady", authenticationToken: "[PlayReady Token]"},
{ type: "Widevine", authenticationToken: "[Widevine Token]"}
]
}] );
Captions and subtitles
• WebVTT Captions and Subtitle support
• Use Azure Media Indexer to automatically generate subtitles from the audio
var myPlayer = amp("azuremediaplayer", myOptions);
myPlayer.src(
[
{ src: "[src uri]", type: "application/vnd.ms-sstr+xml" },
],
[
{ src: "[track1 uri]", srclang: "[lang code]", kind: "[captions||subtitles]",
label: "[label]" },
{ src: "[track2 uri]", srclang: "[lang code]", kind: "[captions||subtitles]",
label: "[label]" },

]
);

Sample
Bitrate selection
• Automatically determines the appropriate bitrate based on the bandwidth
available
• App developers can force a bitrate if necessary
• End users can use the UI to select a bitrate to save bandwidth

myPlayer.addEventListener(amp.eventName.loadedmetadata, function () {
var stream = myPlayer.currentVideoStreamList().streams ?
myPlayer.currentVideoStreamList().streams[0] : undefined;
if (stream) {
stream.selectTrackByIndex(0);
}
});

myPlayer.src([{ src: "[src uri]", type: "application/vnd.ms-sstr+xml" }]);

Sample
Heuristic profiles
• Choose how AMP loads the stream at start time
• Valid for AzureHtml5JS (uses HTML5 and MPEG-DASH)
• Quick Start Mode (default):
• Loads as fast as possible starting at the lowest bitrate
• High Quality Mode:
• Loads at the highest possible quality starting with a bandwidth check
var myOptions = {
"nativeControlsForTouch": false,
autoplay: true,
controls: true,
width: "640",
height: "400",
poster: "[poster uri]",
heuristicProfile: "HighQuality"
};
myPlayer.src([{ src: "[src uri]", type: "application/vnd.ms-sstr+xml" }]);
Multi-audio selection
• By default, the last audio track in manifest is selected
• App developers can change the audio track via an API
• End user can change the audio strea, via the UI
• Valid for AzureHtml5JS and FlashSS
myPlayer.addEventListener(amp.eventName.loadedmetadata, function () {
if (myPlayer.currentAudioStreamList()) {
for (var i = 0; i < myPlayer.currentAudioStreamList().streams.length; i++) {
if (myPlayer.currentAudioStreamList().streams[i].language == "es") {
myPlayer.currentAudioStreamList().switchIndex(i);
break;
}
}
}
});

Sample
Localization
• Reach audiences all over the world
• Localize player UI and error messages

var myOptions = {
"nativeControlsForTouch": false,
autoplay: true,
controls: true,
width: "640",
height: "400",
poster: "[poster uri]",
language: "es"
};
myPlayer.src([{ src: "[src uri]", type: "application/vnd.ms-sstr+xml" }]);

Sample
Analytics hooks
• AMP uses standard HTML5 eventing model
• Listen to events via addEventListener API and send to analytics backend

myPlayer.addEventListener("play", function(){
//send event to analytics server backend
});

myPlayer.addEventListener("error", function(){
var currentTime = Math.round(myPlayer.currentTime());
var errorHexCode = myPlayer.error().code.toString(16);
Var errorMessage = myPlayer.error().message;
//send error with error code event to analytics server backend
});

Sample
Player analytics
Solution based on Application Insights and Power BI

• Demographics: Understand who your users are and where they come from
• Engagement: Understand what is your most popular content and how long
people are watching it
• Quality of Experience (QoE): Shows the streaming experience of viewers,
determining abandonment rates due to poor quality
HTML5 app development
AMP can be embedded in an HTML5 app!

Windows app

iOS app

Android app

HTML5 app with Apache Cordova


Azure Media Player
Video editor plugin for AMP
Sample code available:
https://azure.microsoft.com/en-us/
blog/video-editor-plugin/
Partnership: JW Player
http://www.jwplayer.com/company/partners/azure

Supports Live and VOD


• MPEG-DASH support in HTML5 through Google’s OSS Shaka Player
• HLS across devices through Flash and HTML5
• Supports AES encryption with AMS Key Server
• Supports DRM with EME
• Responsive design with extensive skinning capabilities
• Advanced features:
• Chromecast
• Analytics
• Advertising
Partnership: THEOplayer
https://www.theoplayer.com/partners/azure

• Fully HTML5 cross-platform playback using HTTP Live streaming (HLS) on


Desktop, Android, iOS and Windows Phone
• Playback of AES-128 bit encrypted content
• Multi-audio tracks
• Frame Accurate Clipping in HLS
• Cross-platform ID3 support for ads and other markers
Additional resources
Resources - Players
Learn more
Info: http://aka.ms/ampinfo
Sign up: http://aka.ms/ampsignup
UserVoice
http://aka.ms/ampuservoice
Demo
http://aka.ms/azuremediaplayer
Documentation & samples
http://aka.ms/ampdocs
Help
ampinfo@microsoft.com
Resources - VOD
SDKs
PHP: https://azure.microsoft.com/en-us/develop/php/
Java: https://azure.microsoft.com/en-us/develop/java/
.NET: NuGet package: windowsazure.mediaservices
UserVoice
http://aka.ms/amsvoice
Azure Media Explorer
http://aka.ms/amse
Forum
https://social.msdn.microsoft.com/Forums/azure/en-U
S/home?forum=MediaServices

Documentation
Top ISV solutions in Video On-Demand (VOD)

Media Gateway Hive Streaming

Haivision Media Gateway on Microsoft Azure gives enterprises and Hive Streaming is an SDN for streaming video within Enterprise networks.
broadcasters a scalable and cost-effective solution to distribute high quality, Integrated with Skype Meeting Broadcast and Office Video, Hive facilitates the
low-latency video over the public Internet to multiple locations, bringing a delivery of live and VOD using dynamically created peer networks. When
welcome replacement to the long lead times, prohibitive costs and scheduling used in an Enterprise, Hive ensures that viewers can watch high quality video
challenges associated with satellite and custom networks for video distribution. without congesting the network and without adding new hardware.

Key Use Cases/ Benefits Key Use Cases/ Benefits

• Access as many resources as you need, instantly, pay for what you use • Pre-integrated with the Skype Meeting Broadcast
• Multiple options to easily traverse known and unknown firewalls • Offers the opportunity to re-use your existing hardware
• Haivision’s SRT technology to transport the highest quality live video • Between 95-99% of video traffic is offloaded from critical and weak network
over the Internet links
• Save bandwidth at the source location by using the cloud • Comprehensive suite of analytics provide a wealth of information

Availability: Global Availability: Global


Average Deal Revenue: $26.6K

Link to AppCatalog Link to AppCatalog


Link to Marketplace
Top ISV solutions in Video On-Demand (VOD)

Streaming Engine Cloud Video Center

Provides high-quality video and audio streaming software to organizations for Damdy develops SaaS solutions that allow companies to manage, convert, edit
unlimited use cases worldwide. Wowza technology powers reliable live and and distribute their digital content to targeted audiences on all type of
on-demand streaming to any device, anywhere, anytime. devices. Cloud Video Center is an online video platform (an “Enterprise Tube”)
that helps brands to manage and broadcast their video content (VOD and
Key Use Cases/ Benefits live).

• Easy setup and customization Key Use Cases/ Benefits


• Robust and scalable streaming server
• ABR stream to any device, and bandwidth, anywhere • Save time Organize workflows, Media governance, Maximize exposure,
• Cost effective Measure access & engagement
• Provide a user-friendly interface and possibility of customizing the front-
end
• market and customer oriented product line (one major release per quarter)
• Being guided by our experts during the project deployment

Availability: Global Availability: Global


Average Deal Revenue: $8K Average Deal Revenue: $10K

Link to AppCatalog Link to AppCatalog


Link to Marketplace
© 2016 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.
The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market
conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation.
MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

You might also like