Esercitazione: Codificare un file remoto basato su URL ed eseguire lo streaming del video - .NETTutorial: Encode a remote file based on URL and stream the video - .NET

logo di servizi multimediali v3media services logo v3


Questa esercitazione illustra quanto sia facile codificare e iniziare a eseguire lo streaming di video su un'ampia gamma di browser e dispositivi tramite Servizi multimediali di Azure.This tutorial shows you how easy it is to encode and start streaming videos on a wide variety of browsers and devices using Azure Media Services. È possibile specificare il contenuto di input usando URL HTTPS, URL di firma di accesso condiviso o percorsi ai file che si trovano nell'archivio BLOB di Azure.An input content can be specified using HTTPS URLs, SAS URLs, or paths to files located in Azure Blob storage. L'esempio in questo argomento codifica contenuti resi accessibili tramite un URL HTTPS.The sample in this topic encodes content that you make accessible via an HTTPS URL. Attualmente AMS v3 non supporta la codifica di trasferimenti in blocchi su URL HTTPS.Note that currently, AMS v3 does not support chunked transfer encoding over HTTPS URLs.

Al termine dell'esercitazione, sarà possibile eseguire lo streaming di un video.By the end of the tutorial you will be able to stream a video.

Riprodurre il video

Se non si ha una sottoscrizione di Azure, creare un account gratuito prima di iniziare.If you don't have an Azure subscription, create a free account before you begin.

PrerequisitiPrerequisites

Scaricare e configurare l'esempioDownload and configure the sample

Clonare nel computer un repository GitHub contenente l'esempio .NET di streaming usando il comando seguente:Clone a GitHub repository that contains the streaming .NET sample to your machine using the following command:

git clone https://github.com/Azure-Samples/media-services-v3-dotnet-quickstarts.git

L'esempio è disponibile nella cartella EncodeAndStreamFiles.The sample is located in the EncodeAndStreamFiles folder.

Aprire il file appsettings.json nel progetto scaricato.Open appsettings.json in your downloaded project. Sostituire i valori con le credenziali ottenute dall'accesso alle API.Replace the values with credentials that you got from accessing APIs.

L'esempio esegue le azioni seguenti:The sample performs the following actions:

  1. Crea una trasformazione (in primo luogo, controlla se esiste la trasformazione specificata).Creates a Transform (first, checks if the specified Transform exists).
  2. Crea un asset di output usato come output del processo di codifica.Creates an output Asset that is used as the encoding Job's output.
  3. Crea l'input del processo basato su un URL HTTPS.Creates the Job's input that is based on an HTTPS URL.
  4. Invia il processo di codifica usando l'input e l'output creati in precedenza.Submits the encoding Job using the input and output that was created earlier.
  5. Controlla lo stato del processo.Checks the Job's status.
  6. Crea un localizzatore di streaming.Creates a Streaming Locator.
  7. Crea gli URL di streaming.Builds streaming URLs.

Per una spiegazione delle operazioni eseguite da ogni funzione nell'esempio, esaminare il codice e i commenti in questo file di origine.For explanations about what each function in the sample does, examine the code and look at the comments in this source file.

Eseguire l'app di esempioRun the sample app

Quando si esegue l'app, vengono visualizzati gli URL che è possibile usare per riprodurre il video usando protocolli diversi.When you run the app, URLs that can be used to playback the video using different protocols are displayed.

  1. Premere CTRL+F5 per eseguire l'applicazione EncodeAndStreamFiles.Press Ctrl+F5 to run the EncodeAndStreamFiles application.
  2. Scegliere il protocollo HLS di Apple (termina con manifest(format=m3u8-aapl) ) e copiare l'URL di streaming dalla console.Choose the Apple's HLS protocol (ends with manifest(format=m3u8-aapl)) and copy the streaming URL from the console.

Screenshot dell'output dell'app EncodeAndStreamFiles in Visual Studio che mostra tre URL di streaming da usare in Azure Media Player.

Nel codice di origine dell'esempio è possibile vedere come viene creato l'URL.In the sample's source code, you can see how the URL is built. Per creare un URL, è necessario concatenare il nome host dell'endpoint di streaming e il percorso del localizzatore di streaming.To build it, you need to concatenate the streaming endpoint's host name and the streaming locator path.

Eseguire il test con Azure Media PlayerTest with Azure Media Player

Per testare lo streaming, in questo articolo viene usato Azure Media Player.To test the stream, this article uses Azure Media Player.

Nota

Se un lettore è ospitato in un sito https, assicurarsi di aggiornare l'URL impostandolo su "https".If a player is hosted on an https site, make sure to update the URL to "https".

  1. Aprire un Web browser e passare https://aka.ms/azuremediaplayer/.Open a web browser and navigate to https://aka.ms/azuremediaplayer/.

  2. Nella casella URL incollare uno degli URL di streaming ottenuto quando si è eseguita l'applicazione.In the URL: box, paste one of the streaming URL values you got when you ran the application.

    È possibile incollare l'URL in formato HLS, Dash o Smooth e Azure Media Player passerà automaticamente a un protocollo di streaming appropriato per la riproduzione sul dispositivo.You can paste the URL in HLS, Dash, or Smooth format and Azure Media Player will switch to an appropriate streaming protocol for playback on your device automatically.

  3. Scegliere il pulsante Update Player (Aggiorna il lettore).Press Update Player.

Azure Media Player può essere usato a scopo di test ma non deve essere usato in un ambiente di produzione.Azure Media Player can be used for testing but should not be used in a production environment.

Pulire le risorseClean up resources

Se l'intero contenuto del gruppo di risorse non è più necessario, compresi gli account di archiviazione e di Servizi multimediali creati per questa esercitazione, eliminare il gruppo di risorse.If you no longer need any of the resources in your resource group, including the Media Services and storage accounts you created for this tutorial, delete the resource group.

Eseguire il comando dell'interfaccia della riga di comando seguente:Execute the following CLI command:

az group delete --name amsResourceGroup

Esaminare il codiceExamine the code

Per una spiegazione delle operazioni eseguite da ogni funzione nell'esempio, esaminare il codice e i commenti in questo file di origine.For explanations about what each function in the sample does, examine the code and look at the comments in this source file.

L'esercitazione Eseguire il caricamento, la codifica e lo streaming di file fornisce un esempio di streaming più avanzato con spiegazioni dettagliate.The upload, encode, and stream files tutorial gives you a more advanced streaming example with detailed explanations.

Codici di errore dei processiJob error codes

Vedere i codici di errore.See Error codes.

MultithreadingMultithreading

Gli SDK di Servizi multimediali di Azure v3 non sono thread-safe.The Azure Media Services v3 SDKs are not thread-safe. Quando si usa un'applicazione multithreading, è necessario generare un nuovo oggetto AzureMediaServicesClient per ogni thread.When working with multi-threaded application, you should generate a new AzureMediaServicesClient object per thread.

Passaggi successiviNext steps