Tutorial: Codieren einer Remotedatei anhand einer URL und Streamen des Videos – .NET

media services logo v3


Sie suchen nach der Dokumentation zu Azure Media Services v2?

Dieses Tutorial zeigt, wie einfach es ist, Videos zu codieren und mit deren Streaming für eine Vielzahl von Browsern und Geräten mit Azure Media Services zu beginnen. Ein Eingabeinhalt kann über HTTPS-URLs, SAS-URLs oder Pfade zu Dateien in Azure Blob Storage angegeben werden. Das Beispiel in diesem Thema codiert Inhalte, die Sie über eine HTTPS-URL zugänglich machen. Beachten Sie, dass AMS v3 derzeit keine segmentierte Transfercodierung über HTTPS-URLs unterstützt.

Am Ende des Tutorials sind Sie in der Lage, ein Video zu streamen.

Play the video

Voraussetzungen

Herunterladen und Konfigurieren des Beispiels

Klonen Sie ein GitHub-Repository auf Ihren Computer, das das .NET-Streamingbeispiel enthält, indem Sie den folgenden Befehl verwenden:

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

Das Beispiel befindet sich unter AMSV3Quickstarts im Ordner EncodeAndStreamFiles.

Öffnen Sie in Ihrem heruntergeladenen Projekt die Datei appsettings.json. Ersetzen Sie die Werte durch Anmeldeinformationen, die Sie durch den Zugriff auf APIs abgerufen haben.

Hinweis

Sie können auch das .env-Dateiformat im Stammverzeichnis des Projekts verwenden, um Ihre Umgebungsvariablen nur einmal für alle Projekte im .NET-Beispielrepository festzulegen. Kopieren Sie einfach die Datei sample.env, und geben Sie dann die Informationen an, die Sie im Azure-Portal über die Media Services-Seite für den API-Zugriff oder über die Azure CLI ermittelt haben. Benennen Sie die Datei sample.env in .env um, um sie in allen Projekten zu verwenden.

Die GITIGNORE-Datei ist bereits so konfiguriert, dass sie nicht in Ihrem geforkten Repository veröffentlicht wird.

Mit dem Beispiel werden die folgenden Aktionen durchgeführt:

  1. Erstellen einer Transformation (nach vorheriger Überprüfung, ob die angegebene Transformation vorhanden ist)
  2. Erstellen eines Ausgabemedienobjekts, das als Ausgabe des Codierungsauftrags verwendet wird
  3. Erstellen der auf einer HTTPS-URL basierenden Auftragseingabe
  4. Übermitteln des Codierungsauftrags mit der zuvor erstellten Ein- und Ausgabe
  5. Überprüfen des Auftragsstatus
  6. Erstellen eines Streaminglocators
  7. Erstellen von Streaming-URLs

Um eine Erläuterung dazu zu erhalten, was jede Funktion im Beispiel bewirkt, untersuchen Sie den Code, und sehen Sie sich die Kommentare in dieser Quelldatei an.

Ausführen der Beispiel-App

Wenn Sie die App ausführen, werden URLs angezeigt, die zur Wiedergabe des Videos mit verschiedenen Protokollen verwendet werden können.

  1. Öffnen Sie AMSV3Quickstarts in VSCode.
  2. Drücken Sie STRG+F5 zum Ausführen der EncodeAndStreamFiles-Anwendung mit .NET. Dies kann einige Minuten dauern.
  3. Die App gibt drei URLs aus. Sie verwenden diese URLs, um den Stream im nächsten Schritt zu testen.

Screenshot of the output from the EncodeAndStreamFiles app in Visual Studio showing three streaming URLs for use in the Azure Media Player.

Im Quellcode des Beispiels können Sie sehen, wie die URL erstellt wird. Um sie zu erstellen, müssen Sie den Hostnamen des Streamingendpunkts und den Streaminglocatorpfad miteinander verketten.

Testen mit Azure Media Player

Um den Stream zu testen, wird in diesem Artikel Azure Media Player verwendet.

Hinweis

Wenn ein Player auf einer HTTPS-Website gehostet wird, stellen Sie sicher, die URL mit „https“ zu aktualisieren.

  1. Öffnen Sie einen Webbrowser, und navigieren Sie zu https://aka.ms/azuremediaplayer/.

  2. Fügen Sie im Feld URL: einen der URL-Streamingwerte ein, die Sie bei der Ausführung der Anwendung abgerufen haben.

    Sie können die URL im HLS-, Dash- oder Smooth-Format einfügen. Der Azure Media Player wechselt auf Ihrem Gerät automatisch zu einem geeigneten Streamingprotokoll für die Wiedergabe.

  3. Drücken Sie Player aktualisieren. Dadurch sollte die Wiedergabe der Videodatei im Repository gestartet werden.

Azure Media Player kann zum Testen verwendet werden, sollte jedoch nicht in einer Produktionsumgebung zum Einsatz kommen.

Bereinigen von Ressourcen

Wenn Sie die Ressourcen in der Ressourcengruppe einschließlich der in diesem Tutorial erstellten Media Services- und Speicherkonten nicht mehr benötigen, löschen Sie die Ressourcengruppe.

Führen Sie den folgenden CLI-Befehl aus:

az group delete --name amsResourceGroup

Untersuchen des Codes

Um eine Erläuterung dazu zu erhalten, was jede Funktion im Beispiel bewirkt, untersuchen Sie den Code, und sehen Sie sich die Kommentare in dieser Quelldatei an.

Das Tutorial zum Hochladen, Codieren und Streamen von Dateien bietet ein erweitertes Streamingbeispiel mit detaillierten Erläuterungen.

Auftragsfehlercodes

Weitere Informationen finden Sie unter Fehlercodes.

Multithreading

Die Azure Media Services v3 SDKs sind nicht threadsicher. Bei Verwendung einer Multithreadanwendung sollten Sie ein neues AzureMediaServicesClient-Objekt pro Thread generieren.