In this article we are going to see the new feature which is a Windows Azure Media Services which is in preview. Windows Azure Media Services is one of the much expected feature release by Microsoft recently, with this new service we can provide a media content over the cloud with feasible options to process, manage and deliver media with high quality. Windows Azure Media Services provides flexible and scalable option to build a high quality media content delivery across the application globally with ease.
Using Windows Azure Media Services we can build a work flow end to end which manages the media and deliver with quality which includes Uploading, encoding, decoding, downloading, formatting, streaming of media contents in different platforms and different devices. Media Services are provided with the rich REST API using which we can call the services individually in any external application and use it across the application development as per the requirement. [more]
Media Services are currently available in preview, with Go Live feature where we can on board the application without waiting for the beta or the main Production release. As per MSDN, below is the basic architecture of the Windows Azure Media Services which involves the components that are currently incorporated with the preview release. Windows Azure Media Services can use to format and encode the media content into different formats that fits the best in to the industry devices which plays different formats with different resolutions and different Bit Rates.
Windows Azure Media Services in preview is limited with the features that are currently involved with, were Microsoft has planned a huge enhancements with the upcoming versions of the Media Services which includes Flash Integration, HTML5 base streaming etc. So let us wait and see how the Media Services are going to satisfy the Market necessities.
Each and every workflow has a separate management flow and entities that are involved which plays a major role in the development life cycle, in Windows Azure Media Services Workflow we have 4 important operations which are core components use in the application development and the 4 components are as follows.
S No |
Operation |
Description |
1 |
Ingest |
This operation is used to bring the Assets to the system, which basically takes the version of the Assets which are encoded and formatted before uploading them to the Windows Azure Storage Services. |
2 |
Process |
This operation is used where we need to encode, decode, transform, format and convert the media tasks into different operations. |
3 |
Manage |
This operation is used to manage the Assets that are already uploaded to the Media Services where we can delete, upload, manage, edit the assets. |
4 |
Deliver |
This Operation is the output task where we want the encoded and formatted media content to be out of the box with a Smooth Streaming or on Demand live streaming, or to download to a specific medium. |
We can use the Windows Azure Media Services to be access programmatically through REST API’s where we have several objects that are used to perform the operations which basically we call as Entities. Below are the list of entities that are used with the Media Services Operations.
S No |
Entity |
Description |
1 |
Asset |
Assets are basically a file which holds the metadata for the Media content which we upload or encode it to the Media Services. Asset plays a major role where we do manipulations based on the Asset, which is a unique key for the media content which we upload to the Media Server. |
2 |
Task |
Task is used, if we want to do some operation over the asset which can be done using the Tasks. Tasks will not operate directly, it does the work with one of the entity called JOB. |
3 |
Job |
Job is an entity which holds the metadata of a TASK, where a JOB is used to create new Assets and Files that are used in associating with more than one tasks. Basically we can associate creating Parent Tasks. |
4 |
File |
File is one which is always associated with an Asset, which hold the object of the media content basically the audio or video object. |
5 |
Access Policy |
Access Policy is a Security group which hold a policy on which are the users can access and what access can be provided (Read or write) specifically imposed for an Asset or a File. |
6 |
Content Key |
Content Key is used as a key for secure access for an asset, which provides a key that is used to encrypt the asset with 3 types – Storage Encryption, MPEG Common Encryption or a PlayReady Encryption. |
7 |
Job Template |
Job Template is basically a template which can be created as per a requirement that can be used repeatedly for many of the Tasks with the Media Server. |
8 |
Locator |
Locator is the main entity which is basically an URI using which we can access the media content that can downloaded or used for streaming the content that tis stored in the Windows Azure Storage Services (Blob Storages). |
When it comes to Pricing, currently Windows Azure is on Preview with no cost to the subscription. But internally since the media services will be using the Storage Services (Blob), Content Delivery Network (CDN) where we have cost imposed based on the subscription. Also the Media Services manipulation(Encoding) limit is limited to 1TB which is of free of cost with the monthly subscription.
Our next scope is to start using the Windows Azure Media Services, to start with we need to download the necessary prerequisites and keep our development environment ready.
Prerequisites for Windows Azure Media Services:
- Operating Systems: Windows 7 or Windows 2008 R2 or Windows 8 Release preview
- .NET Framework 3.5 SP1, and .NET Framework 4.
- VS 2010 SP1 (Professional, Premium, or Ultimate)
- Windows Azure Media Services SDK for .NET
- Windows Azure SDK for .NET November 2011
- WCF Data Services 5.0 for OData v3
Windows Azure Media Services SDK for .NET is the new Software Development Kit released with the Media Service Preview Release which will install the necessary software’s that are required to build the media services application. Before we install the Windows Azure Media Services SDK, first check if the Windows Azure SDK is installed which is very much required as the base development kit to hold all the required software’s.
Let us see the step by step process on how to use this Media Services from a .NET application which performs the different operations with all the entities that are used to perform the operation as per the requirement. That’s it for today, keep looking in to the blog www.f5debug.net to get the latest updates on the Microsoft Technology platform. Until then Happy programming!!!