Codieren von Video- und Audiodaten mit Media ServicesEncoding video and audio with Media Services

Der Begriff Codierung beschreibt in Media Services den Prozess der Konvertierung von Dateien, die digitale Video- und/oder Audiodateien enthalten, von einem Format in ein anderes Format. Ziel ist es, (a) die Größe der Dateien zu verringern und/oder (b) ein Format zu erzeugen, das mit einer Vielzahl von Geräten und Anwendungen kompatibel ist.The term encoding in Media Services applies to the process of converting files containing digital video and/or audio from one standard format to another, with the purpose of (a) reducing the size of the files, and/or (b) producing a format that's compatible with a broad range of devices and apps. Dieser Prozess wird auch als Videokomprimierung oder Transcodierung bezeichnet.This process is also referred to as video compression, or transcoding. Weitere Erläuterungen zu diesem Konzept finden Sie unter Datenkomprimierung und Was bedeutet Codierung und Transcodierung?.See the Data compression and the What Is Encoding and Transcoding? for further discussion of the concepts.

Videos werden in der Regel durch einen progressiven Download oder per Adaptive Bitrate Streaming an Geräte und Apps übermittelt.Videos are typically delivered to devices and apps by progressive download or through adaptive bitrate streaming.

Wichtig

Bei Media Services erfolgt keine Abrechnung für abgebrochene oder fehlerhafte Aufträge.Media Services does not bill for canceled or errored jobs. Beispielsweise wird ein Auftrag, der einen Status von 50 % erreicht hat und abgebrochen wird, nicht mit 50 % der Auftragsminuten berechnet.For example, a job that has reached 50% progress and is canceled is not billed at 50% of the job minutes. Ihnen werden nur abgeschlossene Aufträge in Rechnung gestellt.You are only charged for finished jobs.

  • Zur Bereitstellung mittels progressivem Download können Sie Azure Media Services zum Konvertieren einer digitalen Mediendatei (Mezzanine) in eine MP4-Datei verwenden. Diese enthält das Video, das mit dem H.264-Codec codiert wurde, sowie die Audiodatei, die mit dem AAC-Codec codiert wurde.To deliver by progressive download, you can use Azure Media Services to convert a digital media file (mezzanine) into an MP4 file, which contains video that's been encoded with the H.264 codec, and audio that's been encoded with the AAC codec. Diese MP4-Datei wird in ein Medienobjekt in Ihrem Speicherkonto geschrieben.This MP4 file is written to an Asset in your storage account. Sie können die Azure Storage-APIs oder -SDKs verwenden (z.B. Storage-REST-API oder .NET SDK), um die Datei direkt herunterzuladen.You can use the Azure Storage APIs or SDKs (for example, Storage REST API or .NET SDK) to download the file directly. Wenn Sie das Ausgabemedienobjekt mit einem bestimmten Containernamen im Speicher erstellt haben, verwenden Sie die diesen Speicherort.If you created the output Asset with a specific container name in storage, use that location. Andernfalls können Sie Media Services verwenden, um die Medienobjektcontainer-URLs aufzulisten.Otherwise, you can use Media Services to list the asset container URLs.
  • Die Mezzanine-Datei muss mit mehreren Bitraten (hoch bis niedrig) codiert werden, um Inhalte für die Übermittlung durch das Adaptive Bitrate Streaming vorzubereiten.To prepare content for delivery by adaptive bitrate streaming, the mezzanine file needs to be encoded at multiple bitrates (high to low). Um eine gleichmäßige Qualitätsabnahme zu gewährleisten, wird mit sinkender Bitrate auch die Auflösung des Videos verringert.To ensure graceful transition of quality, the resolution of the video is lowered as the bitrate is lowered. Dies führt zu einer sogenannten „Codierungsleiter“ – einer Tabelle mit Auflösungen und Bitraten. Weitere Informationen hierzu erhalten Sie unter Codieren mit einer automatisch generierten Reihe von Bitraten-/Auflösungspaaren.This results in a so-called encoding ladder–a table of resolutions and bitrates (see auto-generated adaptive bitrate ladder). Sie können mithilfe von Media Services Ihre Mezzanine-Dateien mit verschiedenen Bitraten codieren.You can use Media Services to encode your mezzanine files at multiple bitrates. Auf diese Weise erhalten Sie einen Satz MP4-Dateien und zugehörige Konfigurationsdateien für das Streaming, die in ein Medienobjekt in Ihrem Speicherkonto geschrieben werden.In doing so, you'll get a set of MP4 files and associated streaming configuration files written to an Asset in your storage account. Sie können dann die Funktion Dynamische Paketerstellung in Media Services verwenden, um das Video über Streamingprotokolle wie MPEG-DASH oder HLS bereitzustellen.You can then use the Dynamic Packaging capability in Media Services to deliver the video via streaming protocols like MPEG-DASH and HLS. Dazu müssen Sie einen Streaminglocator und Streaming-URLs erstellen, die dem unterstützten Protokoll entsprechen. Dieses kann dann je nach Funktionen von Geräten/Apps an diese übergeben werden.This requires you to create a Streaming Locator and build streaming URLs corresponding to the supported protocols, which can then be handed off to devices/apps based on their capabilities.

Das folgende Diagramm zeigt den Workflow für bedarfsgesteuerte Codierung mit der dynamischen Paketerstellung.The following diagram shows the workflow for on-demand encoding with dynamic packaging.

Workflows für On-Demand-Streaming mit dynamischer Paketerstellung

In diesem Thema erhalten Sie Anleitungen zum Codieren Ihrer Inhalte mit Media Services v3.This topic gives you guidance on how to encode your content with Media Services v3.

Transformationen und AufträgeTransforms and jobs

Um mit Media Services v3 codieren zu können, müssen Sie eine Transformation und einen Auftrag erstellen.To encode with Media Services v3, you need to create a Transform and a Job. Die Transformation definiert eine Anweisung für die Codierungseinstellungen und -ausgaben. Der Auftrag ist eine Instanz der Anweisung.The transform defines a recipe for your encoding settings and outputs; the job is an instance of the recipe. Weitere Informationen finden Sie unter Transformationen und Aufträge.For more information, see Transforms and Jobs.

Bei der Codierung mit Media Services verwenden Sie Voreinstellungen, um dem Encoder mitzuteilen, wie die eingegebenen Mediendateien verarbeitet werden sollen.When encoding with Media Services, you use presets to tell the encoder how the input media files should be processed. In Media Services v3 verwenden Sie den Standard-Encoder zum Codieren Ihrer Dateien.In Media Services v3, you use Standard Encoder to encode your files. Beispielsweise können Sie die gewünschte Videoauflösung und/oder die Anzahl der Audiokanäle für den codierten Inhalt angeben.For example, you can specify the video resolution and/or the number of audio channels you want in the encoded content.

Mit einer der empfohlenen integrierten Voreinstellungen basierend auf in der Branche bewährten Vorgehensweisen können Sie schnell einsteigen. Alternativ können Sie eine benutzerdefinierte Voreinstellung für Ihr spezielles Szenario oder Ihre Geräteanforderungen erstellen.You can get started quickly with one of the recommended built-in presets based on industry best practices or you can choose to build a custom preset to target your specific scenario or device requirements. Weitere Informationen finden Sie unter Codieren mit einer benutzerdefinierten Transformation.For more information, see Encode with a custom Transform.

Ab Januar 2019 wird bei der Codierung mit dem Standard-Encoder zum Erzeugen von MP4-Dateien eine neue MPI-Datei generiert und dem Ausgabeasset hinzugefügt.Starting with January 2019, when encoding with the Standard Encoder to produce MP4 file(s), a new .mpi file is generated and added to the output Asset. Diese MPI-Datei dient zum Verbessern der Leistung für die dynamische Paketerstellung und Streamingszenarios.This MPI file is intended to improve performance for dynamic packaging and streaming scenarios.

Hinweis

Sie sollten die MPI-Datei nicht ändern oder entfernen und auch keine Abhängigkeiten vom Vorhandensein (oder Nichtvorhandensein) einer solchen Datei in Ihren Dienst integrieren.You shouldn't modify or remove the MPI file, or take any dependency in your service on the existence (or not) of such a file.

Erstellen einer Auftragseingabe aus einer HTTPS-URLCreating job input from an HTTPS URL

Wenn Sie Aufträge zur Verarbeitung von Videos übermitteln, müssen Sie Media Services mitteilen, wo sich das Eingabevideo befindet.When you submit Jobs to process your videos, you have to tell Media Services where to find the input video. Eine der Optionen ist die Angabe einer HTTPS-URL als Auftragseingabe.One of the options is to specify an HTTPS URL as a job input. Media Services v3 unterstützt aktuell keine segmentierte Übertragungscodierung über HTTPS-URLs.Currently, Media Services v3 doesn't support chunked transfer encoding over HTTPS URLs.

BeispieleExamples

Erstellen einer Auftragseingabe aus einer lokalen DateiCreating job input from a local file

Das Eingabevideo kann als Media Service-Medienobjekt gespeichert werden. In diesem Fall erstellen Sie ein Eingabemedienobjekt basierend auf einer Datei (die lokal oder in Azure Blob Storage gespeichert ist).The input video can be stored as a Media Service Asset, in which case you create an input asset based on a file (stored locally or in Azure Blob storage).

BeispieleExamples

Codieren einer lokalen Datei mithilfe von integrierten VoreinstellungenEncode a local file using built-in presets

Erstellen von Auftragseingaben mithilfe von SubclipsCreating job input with subclipping

Beim Codieren eines Videos können Sie ebenfalls angeben, dass die Quelldatei zugeschnitten oder in Subclips unterteilt werden soll. Dadurch erzeugen Sie eine Ausgabe, die nur den gewünschten Teil des Eingabevideos enthält.When encoding a video, you can specify to also trim or clip the source file and produce an output that has only a desired portion of the input video. Dies funktioniert mit jeder Transformation, die entweder mit den BuiltInStandardEncoderPreset-Voreinstellungen oder mit den StandardEncoderPreset-Voreinstellungen erstellt wird.This functionality works with any Transform that's built using either the BuiltInStandardEncoderPreset presets, or the StandardEncoderPreset presets.

Sie können angeben, dass ein Auftrag mit einem einzelnen Clip eines On-Demand-Videos oder aus einem Livearchiv (einem aufgezeichneten Ereignis) erstellt werden soll.You can specify to create a Job with a single clip of a video on-demand or live archive (a recorded event). Bei der Auftragseingabe kann es sich um ein Objekt oder um eine HTTPS-URL handeln.The job input could be an Asset or an HTTPS URL.

Tipp

Wenn Sie einen Subclip Ihres Videos streamen möchten, ohne das Video erneut zu codieren, erwägen Sie das Vorfiltern von Manifesten mithilfe des dynamischen Packagers.If you want to stream a sublip of your video without re-encoding the video, consider using Pre-filtering manifests with Dynamic Packager.

BeispieleExamples

Beispiele finden Sie hier:See examples:

Integrierte VoreinstellungenBuilt-in presets

Media Services unterstützt die folgenden integrierten Codierungsvoreinstellungen:Media Services supports the following built-in encoding presets:

BuiltInStandardEncoderPresetBuiltInStandardEncoderPreset

BuiltInStandardEncoderPreset wird zum Festlegen einer integrierten Voreinstellung für die Codierung des Eingabevideos mit dem Standard-Encoder verwendet.BuiltInStandardEncoderPreset is used to set a built-in preset for encoding the input video with the Standard Encoder.

Die folgenden Voreinstellungen werden derzeit unterstützt:The following presets are currently supported:

  • EncoderNamedPreset.AACGoodQualityAudio: Erzeugt eine einzelne MP4-Datei, die nur mit 192 KBit/s codierte Stereo-Audiodaten enthält.EncoderNamedPreset.AACGoodQualityAudio: produces a single MP4 file containing only stereo audio encoded at 192 kbps.
  • EncoderNamedPreset.AdaptiveStreaming (empfohlen): Weitere Informationen finden Sie unter Automatisches Generieren einer Reihe von Bitraten-/Auflösungspaaren.EncoderNamedPreset.AdaptiveStreaming (recommended): For more information, see auto-generating a bitrate ladder.
  • EncoderNamedPreset.ContentAwareEncodingExperimental: Stellt eine experimentelle Voreinstellung für die inhaltsbezogene Codierung zur Verfügung.EncoderNamedPreset.ContentAwareEncodingExperimental: exposes an experimental preset for content-aware encoding. Anhand der eingegebenen Inhalte versucht der Dienst, automatisch die optimale Anzahl von Ebenen, die geeignete Bitrate und die Auflösungseinstellungen für die Bereitstellung durch adaptives Streaming zu bestimmen.Given any input content, the service attempts to automatically determine the optimal number of layers, and appropriate bitrate and resolution settings for delivery by adaptive streaming. Die zugrunde liegenden Algorithmen werden im Laufe der Zeit weiter entwickelt.The underlying algorithms will continue to evolve over time. Die Ausgabe enthält MP4-Dateien mit überlappendem Video und Audio.The output will contain MP4 files with video and audio interleaved. Weitere Informationen finden Sie unter Experimentelle Voreinstellung für inhaltsbezogene Codierung.For more information, see Experimental preset for content-aware encoding.
  • EncoderNamedPreset.H264MultipleBitrate1080p: Erzeugt einen Satz aus acht MP4-Dateien mit GOP-Ausrichtung und Werten zwischen 6.000 KBit/s und 400 KBit/s sowie Stereo-AAC-Audio.EncoderNamedPreset.H264MultipleBitrate1080p: produces a set of eight GOP-aligned MP4 files, ranging from 6000 kbps to 400 kbps, and stereo AAC audio. Die Auflösung beginnt bei 1080p und reduziert sich auf 360p.Resolution starts at 1080p and goes down to 360p.
  • EncoderNamedPreset.H264MultipleBitrate720p: Erzeugt einen Satz aus sechs MP4-Dateien mit GOP-Ausrichtung und Werten zwischen 3.400 KBit/s und 400 KBit/s sowie Stereo-AAC-Audio.EncoderNamedPreset.H264MultipleBitrate720p: produces a set of six GOP-aligned MP4 files, ranging from 3400 kbps to 400 kbps, and stereo AAC audio. Die Auflösung beginnt bei 720p und reduziert sich auf 360p.Resolution starts at 720p and goes down to 360p.
  • EncoderNamedPreset.H264MultipleBitrateSD: Erzeugt einen Satz aus fünf MP4-Dateien mit GOP-Ausrichtung und Werten zwischen 1.600 KBit/s und 400 KBit/s sowie Stereo-AAC-Audio.EncoderNamedPreset.H264MultipleBitrateSD: produces a set of five GOP-aligned MP4 files, ranging from 1600 kbps to 400 kbps, and stereo AAC audio. Die Auflösung beginnt bei 480p und reduziert sich auf 360p.Resolution starts at 480p and goes down to 360p.
  • EncoderNamedPreset.H264SingleBitrate1080p: Erzeugt eine MP4-Datei, bei der das Video mit dem H.264-Codec mit 6.750 KBit/s und einer Bildhöhe von 1.080 Pixeln codiert wird, während die Stereo-Audiodaten mit dem AAC-LC-Codec mit 64 KBit/s codiert werden.EncoderNamedPreset.H264SingleBitrate1080p: produces an MP4 file where the video is encoded with H.264 codec at 6750 kbps and a picture height of 1080 pixels, and the stereo audio is encoded with AAC-LC codec at 64 kbps.
  • EncoderNamedPreset.H264SingleBitrate720p: Erzeugt eine MP4-Datei, bei der das Video mit dem H.264-Codec mit 4.500 KBit/s und einer Bildhöhe von 720 Pixeln codiert wird, während die Stereo-Audiodaten mit dem AAC-LC-Codec mit 64 KBit/s codiert werden.EncoderNamedPreset.H264SingleBitrate720p: produces an MP4 file where the video is encoded with H.264 codec at 4500 kbps and a picture height of 720 pixels, and the stereo audio is encoded with AAC-LC codec at 64 kbps.
  • EncoderNamedPreset.H264SingleBitrateSD: Erzeugt eine MP4-Datei, bei der das Video mit dem H.264-Codec mit 2.200 KBit/s und einer Bildhöhe von 480 Pixeln codiert wird, während die Stereo-Audiodaten mit dem AAC-LC-Codec mit 64 KBit/s codiert werden.EncoderNamedPreset.H264SingleBitrateSD: produces an MP4 file where the video is encoded with H.264 codec at 2200 kbps and a picture height of 480 pixels, and the stereo audio is encoded with AAC-LC codec at 64 kbps.

Die aktuellste Liste der Voreinstellungen finden Sie unter Integrierte Voreinstellungen zum Codieren von Videos.To see the most up-to-date presets list, see built-in presets to be used for encoding videos.

Informationen zur Verwendung der Voreinstellungen finden Sie unter Hochladen, Codieren und Streamen von Dateien.To see how the presets are used, see Uploading, encoding, and streaming files.

StandardEncoderPresetStandardEncoderPreset

StandardEncoderPreset beschreibt die Einstellungen, die beim Codieren des Eingabevideos mit dem Standard-Encoder verwendet werden sollen.StandardEncoderPreset describes settings to be used when encoding the input video with the Standard Encoder. Verwenden Sie diese Voreinstellung, wenn Sie Transformationseinstellungen anpassen.Use this preset when customizing Transform presets.

ÜberlegungenConsiderations

Beim Erstellen von benutzerdefinierten Voreinstellungen gelten die folgenden Überlegungen:When creating custom presets, the following considerations apply:

  • Alle Werte für Höhe und Breite in AVC-Inhalten müssen ein Vielfaches von 4 sein.All values for height and width on AVC content must be a multiple of four.
  • In Azure Media Services v3 werden alle Codierungsbitraten in Bits pro Sekunde angegeben.In Azure Media Services v3, all of the encoding bitrates are in bits per second. Dies unterscheidet sich von den Voreinstellungen bei unseren v2-APIs. Dort wurden Kilobits pro Sekunde (KBit/s) als Einheit verwendet.This is different from the presets with our v2 APIs, which used kilobits/second as the unit. Wenn beispielsweise die Bitrate in v2 als 128 (Kilobits/Sekunde) angegeben wurde, würde sie in v3 auf 128.000 (Bits/Sekunde) festgelegt.For example, if the bitrate in v2 was specified as 128 (kilobits/second), in v3 it would be set to 128000 (bits/second).

Anpassen von VoreinstellungenCustomizing presets

Media Services unterstützt die vollständige Anpassung aller Werte in Voreinstellungen zum Erfüllen Ihrer spezifischen Codierungsanforderungen.Media Services fully supports customizing all values in presets to meet your specific encoding needs and requirements. Beispiele zum Anpassen von Encodervoreinstellungen finden Sie in der nachstehenden Liste:For examples that show how to customize encoder presets, see the list below:

BeispieleExamples

VoreinstellungsschemasPreset schema

In Media Services v3 sind Voreinstellungen stark typisierte Entitäten in der API selbst.In Media Services v3, presets are strongly typed entities in the API itself. Die „Schema“-Definition für diese Objekte finden Sie in Offene API-Spezifikation (oder Swagger).You can find the "schema" definition for these objects in Open API Specification (or Swagger). Sie können die voreingestellten Definitionen (wie StandardEncoderPreset) auch in der REST-API, im .NET SDK oder eine andere Referenzdokumentation für das Media Services v3 SDK anzeigen.You can also view the preset definitions (like StandardEncoderPreset) in the REST API, .NET SDK (or other Media Services v3 SDK reference documentation).

Skalieren der Codierung in v3Scaling encoding in v3

Informationen zum Skalieren der Medienverarbeitung finden Sie unter Skalieren mit CLI.To scale media processing, see Scale with CLI.

AbrechnungBilling

Bei Media Services erfolgt keine Abrechnung für abgebrochene oder fehlerhafte Aufträge.Media Services does not bill for canceled or errored jobs. Beispielsweise wird ein Auftrag, der einen Status von 50 % erreicht hat und abgebrochen wird, nicht mit 50 % der Auftragsminuten berechnet.For example, a job that has reached 50% progress and is canceled is not billed at 50% of the job minutes. Ihnen werden nur abgeschlossene Aufträge in Rechnung gestellt.You are only charged for finished jobs.

Weitere Informationen finden Sie unter Azure Data Lake Storage – Preise.For more information, see pricing.

Fragen stellen, Feedback geben, Updates abrufenAsk questions, give feedback, get updates

Im Artikel Azure Media Services-Community finden Sie verschiedene Möglichkeiten, Fragen zu stellen, Feedback zu geben und Updates zu Media Services zu bekommen.Check out the Azure Media Services community article to see different ways you can ask questions, give feedback, and get updates about Media Services.

Nächste SchritteNext steps