Dies ist ein wählerischer Encoder, daher müssen Sie die richtigen Parameter auswählen, einschließlich:
- Bildrate
- Pixelformat / Farbraum
- Breite x Höhe / Auflösung / Rahmengröße
- Bitrate
Akzeptierte Werte finden Sie in den folgenden gültigen DNxHD-Parametern .
DNxHD-Beispiel
In diesem Beispiel wird auf 1280 x 720 skaliert, eine Bildrate von 30000/1001 (auch bekannt als "29,97") und ein Pixelformat von YUV 4: 2: 2 planar gewählt.
ffmpeg -i input -c:v dnxhd -vf "scale=1280:720,fps=30000/1001,format=yuv422p" -b:v 110M -c:a pcm_s16le output.mov
Wenn Ihre Eingabedatei bereits einigen der akzeptierten Parameter entspricht, müssen Sie sie nicht manuell deklarieren.
Der Ausgabeformatcontainer für DNxHD ist normalerweise MXF oder MOV.
DNxHR Beispiel
DNxHR ist für Auflösungen größer als 1080p geeignet, z. B. 2K, 4K und 8K.
Wenn Sie DNxHR möchten, fügen Sie die Ausgabeoption hinzu -profile:v
, z -profile:v dnxhr_hq
.
Zulässige Werte sind: dnxhd
, dnxhr_444
, dnxhr_hqx
, dnxhr_hq
, dnxhr_sq
, dnxhr_lb
.
- DNxHR LB:
dnxhr_lb
- Geringe Bandbreite. 8-Bit 4: 2: 2 ( yuv422p
). Offline-Qualität.
- DNxHR SQ:
dnxhr_sq
- Standardqualität. 8-Bit 4: 2: 2 ( yuv422p
). Geeignet für Lieferformat.
- DNxHR HQ:
dnxhr_hq
- Hohe Qualität. 8-Bit 4: 2: 2 ( yuv422p
).
- DNxHR HQX:
dnxhr_hqx
- Hohe Qualität. 10-Bit 4: 2: 2 ( yuv422p10le
). UHD / 4K-Übertragung in Broadcast-Qualität.
- DNxHR 444:
dnxhr_444
- Veredelungsqualität. 10-Bit 4: 4: 4 ( yuv444p10le
). Lieferung in Kinoqualität.
Die obige Liste wurde aus dem DNxHR-Codec angepasst .
Gültige DNxHD-Parameter
ffmpeg
schlägt fehl, wenn Sie falsche Werte angeben, kann jedoch eine Liste der akzeptierten Werte enthalten.
Sie können die Liste mit dem folgenden "Dummy" -Befehl anzeigen:
ffmpeg -f lavfi -i testsrc2 -c:v dnxhd -f null -
Wichtige Hinweise zur Bildrate
Die Bildrate fehlt in der Liste, die mit diesem Befehl generiert wird. ffmpeg
akzeptiert blind jede Bildrate für diesen Encoder, und die Avid-Software akzeptiert sie Berichten zufolge (nicht bestätigt), aber die DNxHD-Bitrate soll nur an bestimmte Bildraten angepasst werden. Für maximale Kompatibilität habe ich empfohlen, nur die richtige Kombination aus Bitrate und Bildrate zu verwenden. Verwenden Sie daher den obigen Befehl, um die richtigen Bitraten und Pixelformate zu erhalten, die von ffmpeg
der Liste der Avid-DNxHD-Auflösungen akzeptiert werden , und verweisen Sie auf die Liste der Avid-DNxHD-Auflösungen oder das DNxHD-Whitepaper (Seite 9), um die richtigen Bildraten zu erhalten.
Die in den obigen Links aufgeführten Bildraten verwenden ungenaue gerundete Näherungen. Die richtigen Werte sind unten aufgeführt. Der abgekürzte Name befindet sich links und der richtige Wert rechts.
- 29,97 = 30000/1001 (oder verwenden Sie den Alias
ntsc
)
- 59,94 = 60000/1001
- 23.967 = 24000/1001 (oder verwenden Sie den Alias
ntsc-film
)
Mehr Optionen
Weitere Encoder-spezifische Optionen und eine Liste der unterstützten Pixelformate finden Sie unter:
ffmpeg -h encoder=dnxhd
Fehler
ff_frame_thread_encoder_init failed
Error initializing output stream 0:0 -- Error while opening encoder for output stream #0:0 - maybe incorrect parameters such as bit_rate, rate, width or height
Conversion failed!
Dies bedeutet, dass Ihre Bildrate, Breite, Höhe, Pixelformat und / oder Bitrate falsch sind. Informationen zu akzeptierten Werten finden Sie oben unter Gültige DNxHD-Parameter .
pixel format is incompatible with DNxHD profile
Wählen Sie mit dem Formatfilter ein geeignetes Pixelformat . Siehe das obige DNxHD-Beispiel.
ffmpeg -i <input_file> -vcodec dnxhd -b <bitrate> -an output.mov