Eingangsvideo in HDR konvertieren

Auf dieser Seite wird erläutert, wie Sie das Eingabevideo in einem Transcodierungsjob in ein unterstützt High Dynamic Range (HDR) oder Standard Dynamic Range (SDR). Die Transcoder API verwendet HEVC (High Efficiency Video Coding) als primären Codec für die Farbkonvertierung. Passthrough ist standardmäßig aktiviert, wenn Sie ein 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

Für H.264- und VP9-Streams werden nur HLG und SDR unterstützt. Alle Konvertierungen zwischen dem unterstützten Codec und den vorherigen Farbformaten sind unterstützt.

Passthrough

Passthrough ist standardmäßig aktiviert, wenn Sie keine Farbkonvertierung festlegen Format.

Bei der Übertragung berücksichtigt die Transcoder API die Eingabegrundfarben, die Übertragungsfunktion, den Bereich, die Chroma-Position und den Farbraum. Es findet keine Farbkonvertierung statt. 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 der Eingabe nicht unterstützt, Passthrough ist beste Leistung. Beispiel: Ein HDR10-Eingabevideo hat 10-Bit- Optionen für profile und pixelFormat. Wenn Sie die Ausgabe als H.265 mit einer 8-Bit-Option für profile angeben, Die Ausgabe ist kein gültiges HDR10-Video, da HDR10 mit einem 8-Bit-Video nicht funktioniert. Option für profile.

Beispiele für Conversions

Verwenden Sie ein leeres hlg, um das Farbkonvertierungsformat anzugeben. hdr10- oder sdr-Objekt. 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 hlg-Objekt, 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 herunterkonvertieren

Verwende das Objekt sdr, um ein Eingabevideo in das SDR-Format herunterzukonvertieren.

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

Mögliche Fehler

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

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