Code blocks

How to integrate Azure PlayReady License service with your own encryptor/streaming server

Azure Media Services announced the Public Availability of Azure Media Services Content Protection a month ago, which offers the capability to encrypt your media content with AES or PlayReady content protection. Now, with Media Services, you could ingest, encode, adding content protection and stream your content. However, there are customers who ask me the question, what if I want to just move my License/key delivery server onto Azure Cloud Platform first, and keep my encoding, encryptor and streaming server on premises, could I do it with Azure? The answer is yes, and this blog would walk you through the integration. I will use PlayReady as an example to explain the concept in this blog, however, the same logic applies to AES key server integration as well. Read more here

Dynamic Encryption vs. Static Encryption with Azure Media Services

In Azure Media Services, there are two ways to encrypt your content regardless you are applying common encryption (PlayReady) or envelope encryption (AES) onto your content: dynamic encryption or static encryption. This blog will explain to you the difference and when to use which.

Dynamic Encryption:

This is what we always recommend. Once you encode your file into multi-bitrate Mp4, you could configure the file to be encrypted by defining Content Key, Content Key authorization policy and asset delivery policy. The file is stored in clear in the storage, of course, you could put storage encryption on the container, which is optional. After configuration, our streaming server will apply sample level encryption on your media file on the fly. For example, if you configure AES dynamic encryption for HLS streaming protocol, our streaming server will encrypt your file on the fly with AES envelope encryption and deliver through HLS. Below is a diagram to show you how dynamic encryption works in Azure Media Services: Read more here

Android HLS playback via Azure media services

This blog shows you how to generate Http Live Streaming (HLS) version 3 via Azure Media Services, which is a new feature we recently added, in order to support HLS playback in a wider range of Android devices. According to Google, Android platform supports Http/Https Live streaming playback, with the following restrictions:

  • • MPEG-2 TS media files only
  • • Protocol version 4 (Android 4.4 Kitkat)
  • • Protocol version 3 (Android 4.0 and above)
  • • Protocol version 2 (Android 3.x)
  • • Not supported before Android 3.0

Read more here

Using Windows Azure Media Services .NET SDK with key concepts explained

This blog explains the demo of using .NET SDK to complete a typical video-on-demand workflow – upload, encode, package and stream.

1. Create a C# console application through Visual Studio and install Nuget package: windowsazure.mediaservices.

2. I upload a little sample video file for you to use: And I put this video file under “C:\tr\“. Therefore, I suggest you create the same folder under your C drive so you don’t need to change input video file path.

3. Here are two config XML you are going to use as video presents: Smooth Streaming Config xml and Http-live-streaming config xml. Similarly, I put them under “C:\ty\”. Certainly, you could get this config from MSDN but since it is a very long string, it is easy to just read from a xml file. Read more here

Announcing Windows Azure Media Services .NET SDK Extensions Version 2.0

I am excited to announce that our Windows Azure Media services Extension SDK version 2.0 just released! If you were using the first version of extension SDK, please pay attention because this version includes a few breaking changes – we had a round of redesign for our existing extension APIs.

What is extension SDK?

This extension SDK is a great initiative by developer Mariano Conveti from our partner Southworks. This SDK extension library contains a set of extension methods and helpers for the Windows Azure Media Services SDK for .NET. You could get the source code from Github repository or install Nuget package to start using it. Read more here

Introducing Extensions for Windows Azure Media Services .NET SDK

I am excited to introduce this great open source project – Extensions for Windows Azure Media Services by Mariano Converti from Southworks. Microsoft has been working with Southworks for many projects and as mentioned by Mariano in his blog, the motivation for this project is that “I wanted to have it <SDK> available in a more consumable and reusable way instead of having to search/copy/paste/tweak the code every time.”

This SDK extension library contains a set of extension methods and helpers for the Windows Azure Media Services SDK for .NET. Here are some major functions such as: Read more here

Demo – how to create HLS and Smooth Streaming assets using dynamic packaging

This blog post is a walk-through on how to create HLS and Smooth Streaming assets using dynamic packaging with Windows Azure Media Services (WAMS), by using .NET SDK.

What is dynamic packing?

Before talking about dynamic packing, we have to mention what’s the traditional way of doing things. If you want to delivery both Http Live Streaming and Smooth Streaming, you have to store both of them. Therefore, you stream HLS content to iOS devices and Smooth Streaming content to Windows 8 for instance. However, by using dynamic packing feature in WAMS, You only need to store a Mp4 file in your storage, and we dynamically packaging Mp4 file into HLS or Smooth Streaming based on your client request. If it needs HLS stream, we will package Mp4 into HLS on the fly, and serve out to your client. In this case, you no longer need to store a copy of smooth streaming and HLS, hence, we help you save storage cost by half at least. This diagram below demonstrates what I just described: Read more here

Breaking changes for Windows Azure Media Services .NET SDK GA

On Dec 14th 2012, we update our .NET SDK to and you could download the latest SDK here. And starting from yesterday (Jan 14th, 2013), we drop the support for older version of .NET SDK, which we released in Preview. In another word, our server no longer recognizes some of your old APIs. If you find your older version of .NET SDK no longer works, don’t panic! Please read through this blog and see whether you could fix the code. 

If you still can’t find a clue, please bring your question to Windows Azure Media Services Forum and we will try our best to help you. Read more here

How to generate Http Live Streaming (HLS) content using Windows Azure Media Services

If you want to deliver video content to iOS devices and platform, the best option you have is to package your content into Http Live Streaming. HLS is Apple’s implementation of adaptive streaming and here is some useful resources from Apple. Apple implements the format but they don’t provide hosting. You could use Apache server for hosting HLS content, but better, you could choose Windows Azure Media Services – a way to host video in the cloud. Therefore, you don’t need to manage infrastructure and worry about scalability: Azure takes care of all that for you.

Scenario One: You have a .Mp4 file and you want to package into HLS and stream out from Windows Azure Media Services.

Here is how you could do it through Windows Azure Management Portal: Read More Here

1 2 3  Scroll to top