Eingabevideo in HDR konvertieren

Auf dieser Seite wird erläutert, wie das Eingabevideo in einem Transcodierungsjob in ein unterstütztes HDR- (High Dynamic Range) oder SDR-Format (Standard Dynamic Range) konvertiert wird. Die Transcoder API verwendet High Efficiency Video Coding (HEVC) als primären Codec für die Farbkonvertierung. Die Passthrough-Funktion ist standardmäßig aktiviert, wenn Sie kein Farbkonvertierungsformat angeben.

Farbkonvertierungsformate

HEVC ist der primäre Codec, der für die unterstützten Farbkonvertierungsformate verwendet wird. Dazu gehören:

  • Hybrid Log-Gamma (HLG)
  • SDR
  • HDR10

Bei H.264- und VP9-Streams werden nur HLG und SDR unterstützt. Alle Umwandlungen zwischen dem unterstützten Codec und den oben genannten Farbformaten werden unterstützt.

Passthrough

Die Passthrough-Funktion ist standardmäßig aktiviert, wenn Sie kein Farbkonvertierungsformat angeben.

Bei der Übertragung berücksichtigt die Transcoder API die Eingabegrundfarben, die Übertragungsfunktion, den Bereich, die Chroma-Position und den Farbraum. Es erfolgt keine Farbkonvertierung. Wenn die Eingabe HDR10 (oder HDR10+) und HEVC ist, gibt die Transcoder API die Metadaten auch an das Ausgabevideo weiter.

Wenn Sie einen Ausgabe-Codec angeben, der das Farbformat des Inputs nicht unterstützt, erfolgt die Passthrough-Übertragung nach dem Best-Effort-Prinzip. Ein Eingabe-HDR10-Video hat beispielsweise 10-Bit-Optionen für profile und pixelFormat. Wenn du die Ausgabe als H.265 mit einer 8-Bit-Option für profile angibtst, ist das Ausgabevideo kein gültiges HDR10-Video, da HDR10 nicht mit einer 8-Bit-Option für profile funktioniert.

Beispiele für Conversions

Verwenden Sie ein leeres hlg-, hdr10- oder sdr-Objekt, um das Farbkonvertierungsformat anzugeben. In den folgenden Abschnitten wird das JSON-Objekt gezeigt, das einem VideoStream hinzugefügt werden muss, um eine bestimmte Conversion auszuführen.

In HLG-Format konvertieren

Verwende das Objekt hlg, um ein Eingabevideo in das HLG-Format zu konvertieren.

"elementaryStreams": [   {     "key": "video_hlg",     "videoStream": {       "h264": {         "heightPixels": 720,         "widthPixels": 1280,         "bitrateBps": 5000000,         "frameRate": 25,         "hlg":{}     }   } ] 

In HDR10-Format konvertieren

Verwende das Objekt hdr10, um ein Eingabevideo in das HDR10-Format umzuwandeln.

"elementaryStreams": [   {     "key": "video_hdr10",     "videoStream": {       "h265": {         "heightPixels": 720,         "widthPixels": 1280,         "bitrateBps": 5000000,         "frameRate": 25,         "pixelFormat":"yuv420p10",         "profile":"main10",         "hdr10":{}     }   } ] 

In SDR-Format umwandeln

Mit dem Objekt sdr kannst du ein Eingabevideo in das SDR-Format umwandeln.

"elementaryStreams": [   {     "key": "video_sdr",     "videoStream": {       "h264": {         "heightPixels": 720,         "widthPixels": 1280,         "bitrateBps": 5000000,         "frameRate": 25,         "sdr":{}     }   } ] 

Mögliche Fehler

Wenn die Transcoder API die Umwandlung nicht ausführen kann, schlägt der Transcodierungsjob fehl. Mögliche Fehler:

  • Umwandlung in das HDR10-Format mit 8‑Bit-Pixelformaten oder ‑Profilen
  • SDR-Eingaben, die nicht BT.709 entsprechen