Bibliotecas dos Serviços de Mídia do Azure para .NET

Visão geral

Os Serviços de Mídia do Microsoft Azure tratam-se de uma plataforma extensível baseada em nuvem que permite aos desenvolvedores compilar aplicativos de gerenciamento e entrega de mídia escalonável. Os serviços de mídia se baseiam em APIs REST que permitem que você carregue com segurança, armazene, codifique e empacote o conteúdo de áudio ou vídeo para entrega de streaming sob demanda e ao vivo para vários clientes (por exemplo, TV, PCs e dispositivos móveis).

Para saber mais, confira Visão Geral e Introdução ao .NET.

Biblioteca do cliente

A biblioteca do SDK do .NET dos Serviços de Mídia do Azure permite que você programe em relação aos serviços de mídia usando o .NET. Use a biblioteca de cliente dos Serviços de Mídia do Azure para se conectar, autenticar e desenvolver com APIs dos Serviços de Mídia.

Para saber mais, confira Introdução ao fornecimento de conteúdo sob demanda usando o SDK do .NET.

Instale o pacote NuGet diretamente do console do Gerenciador de Pacotes do Visual Studio ou com a CLI do .NET Core.

Gerenciador de Pacotes do Visual Studio

Install-Package windowsazure.mediaservices

Exemplo de código

O exemplo de código a seguir usa o SDK .NET dos Serviços de Mídia para executar as seguintes tarefas:

  • Crie um trabalho de codificação.
  • Obtenha uma referência para o Codificador de Mídia Padrão.
  • Especifique para usar a predefinição Transmissão Adaptável.
  • Adicione uma única tarefa de codificação para o trabalho.
  • Especifique o ativo de entrada a ser codificado.
  • Crie um ativo de saída para receber o ativo codificado.
  • Enviar o trabalho.
/* Include this 'using' directive:
using Microsoft.WindowsAzure.MediaServices.Client;
*/

CloudMediaContext context = new CloudMediaContext(new Uri(mediaServiceRESTAPIEndpoint), tokenProvider);

// Get an uploaded asset.
IAsset asset = context.Assets.FirstOrDefault();

// Encode and generate the output using the "Adaptive Streaming" preset.
// Declare a new job.
IJob job = context.Jobs.Create("Media Encoder Standard Job");
// Get a media processor reference, and pass to it the name of the 
// processor to use for the specific task.
IMediaProcessor processor = context.MediaProcessors.Where(p => p.Name == mediaProcessorName)
    .ToList().OrderBy(p => new Version(p.Version)).LastOrDefault();
if (processor == null) 
{
    throw new ArgumentException(string.Format("Unknown media processor", mediaProcessorName));
}

// Create a task with the encoding details, using a string preset.
// In this case "Adaptive Streaming" preset is used.
ITask task = job.Tasks.AddNew("My encoding task", processor, "Adaptive Streaming", TaskOptions.None);

// Specify the input asset to be encoded.
task.InputAssets.Add(asset);
// Add an output asset to contain the results of the job. 
// This output is specified as AssetCreationOptions.None, which 
// means the output asset is not encrypted. 
task.OutputAssets.AddNew("Output asset", AssetCreationOptions.None);

job.Submit();
job.GetExecutionProgressTask(CancellationToken.None).Wait();

Exemplos

Veja a lista completa de exemplos dos Serviços de Mídia do Azure.