Tuesday 21 August 2012

Windows Azure Media Services


Microsoft has introduced Azure media services to overcome the inherent problem of smooth streamlining videos using Azure Blobs.

These are my notes on Azure Media services from MSDN site:

Media Services

Media Services offer the flexibility, scalability and reliability of a cloud platform to handle high quality media experiences for a global audience. Media Services includes cloud-based versions of many existing technologies from the Microsoft Media Platform and our media partners, including ingest, encoding, format conversion, content protection and both on-demand and live streaming capabilities. Whether enhancing existing solutions or creating new workflows, you can easily combine and manage Media Services to create custom workflows that fit every need.

Capabilities
  • upload
  • storage
  • encoding
  • format conversion
  • content protection
  • delivery

Use Media Services to

Scenario
Description
Building end-to-end workflows
Build comprehensive media workflows entirely in the cloud. From uploading media to distributing content, Media Services provide a range of components that can be combined to handle specific application workflows. Current capabilities include upload, storage, encoding, format conversion, content protection, and on-demand streaming delivery.
Building hybrid workflows
You can integrate Media Services with existing tools and processes. For example, encode content on-site then upload to Media Services for transcoding into multiple formats and deliver through Windows Azure CDN, or a third-party CDN. Media Services can be called individually via standard REST APIs for integration with external applications and services.
Providing cloud support for media players
You can create, manage, and deliver media across multiple devices (including iOS, Android, and Windows devices) and platforms.

Media Services Client

  • Mac and PC client support. Use Microsoft Silverlight to develop streaming clients.
  • Windows 8 desktop applications. Windows 8 supported development languages and constructs including HTML, Javascript, XAML, C# and C+.
  • Embedded or dedicated devices. Devices such as connected TVs, set-top boxes, Blu-Ray players, OTT TV boxes, and mobile devices that have a custom application development framework and a custom media pipeline.
  • Windows Phone. Use a Microsoft SDK to build premium Windows Phone applications.
  • iOS devices. Use a Microsoft SDK to build clients for iPhone, iPod, and iPad.
  • Android devices. Use SDKs provided by Microsoft partners to build Android clients.
Namespaces:

  • Microsoft.WindowsAzure.StorageClient.dll
  • Microsoft.Data.Edm.dll
  • Microsoft.Data.OData.dll
  • Microsoft.Data.Services.Client.dll
  • Microsoft.Data.Services.dll
  • System.Spatial.dll
  • Microsoft.WindowsAzure.MediaServices.Client.dll

Notes:

At the time you create a Media Services account, you also create an associated storage account (or use an existing one) in the same geographic region as the Media Services account.

Accessing Media Services requires two associated accounts:

  • A Media Services account. A Media Services account does not store actual media content. Instead it stores metadata about the media content and media processing jobs in your account. At the time you create the account, you select an available Media Services region. The region you select is a data center that stores the metadata records for your account.

  • An associated storage account. Your storage account is a Windows Azure storage account that is associated with your Media Services account. The storage account provides blob storage for media files, and must be located in the same geographic region as the Media Services account. If you delete a Media Services account, the blobs in your related storage account are not deleted.

  • To get media content into Media Services, first create an asset and add files to it, and then upload the asset. This process is also called ingesting content.

To encrypt an asset for transport and storage to protect its contents, pass the parameter 

  • AssetCreationOptions.StorageEncrypted to the method. To keep the asset unencrypted, pass the parameter AssetCreationOptions.None to the method.
  • For media content on the server, you can encode the content with a number of media encodings and formats using Windows Azure Media Encoder.
  • After you create media assets and upload them to Media Services, you can access and manage the assets on the server. You can also manage other objects on the server that are part of Media Services, including jobs, tasks, access policies, locators, and more.


When you create a media service three things are linked to it:
  • Storage account
  • Windows Azure Media encoder
  • Windows Azure Media Origin

You can use a Content Delivery Network (CDN) to improve performance, scalability, and availability of content provided over the Internet. This section describes how to enable a Windows Azure CDN with a Media Services origin server.

Currently, you can only monitor your blob storage usage and until you configure storage monitoring for your Media Services account, no monitoring data is collected and the metrics charts on the dashboard are empty. Similarly to general storage monitoring, you can choose the level of blob storage monitoring - minimal or verbose - and specify the appropriate data retention policy for the service.Note Additional costs are associated with examining monitoring data in the Windows Azure (Preview) Management Portal.


In monitoring, set the level of monitoring and the data retention policy for Blobs.To set the monitoring level, select one of the following:

  • Minimal - Collects metrics such as ingress/egress, availability, latency, and success percentages, which are aggregated for the Blob, Table, and Queue services.
  • Verbose – In addition to the minimal metrics, collects the same set of metrics for each storage operation in the Windows Azure Storage Service API. Verbose metrics enable closer analysis of issues that occur during application operations.
  • Off - Turns off monitoring. Existing monitoring data is persisted through the end of the retention period.

To set the data retention policy, in Retention (in days), type the number of days of data to retain from 1 to 365 days. If you do not want to set a retention policy, enter zero. If there is no retention policy, it is up to you to delete the monitoring data. We recommend setting a retention policy based on how long you want to retain storage analytics data for your account so that old and unused analytics data can be deleted by the system at no cost.


Metrics are stored in the storage account in four tables named $MetricsTransactionsBlob, $MetricsTransactionsTable, $MetricsTransactionsQueue, and $MetricsCapacityBlob.




2 comments:

  1. Needed to compose you a very little word to thank you yet again regarding the nice suggestions you’ve contributed here
    Thank you. Your blog was very helpful and efficient For Me,Thanks for Sharing the information Regards Azure Online Training

    ReplyDelete
  2. Your website is really cool and this is a great inspiring article. reset windows password

    ReplyDelete