This website is released under |
FFmpeg-Befehle
# 1. Die Datei erzeugen, mit der wir arbeiten werden. Es handelt sich um die
# Mandelbrot-Funktion, eine Fraktalkurve, bei der digitale Fehler leicht
# erkennbar sind.
#
# Die Parameter sind:
# -f die Standardbibliothek "lavfi" von FFmpeg
# -i das Element "mandelbrot" der Bibliothek [i = input file]
# -pix_fmt yuv420p bedeutet Y'CBCR 4:2:0 planar, ein Format, das von den
# meisten Playern korrekt gelesen wird
# -t die gewünschte Dauer in Sekunden
# und am Ende der Name der zu erzeugende Datei [ohne -o]
ffmpeg -f lavfi -i mandelbrot -t 10 -pix_fmt yuv420p mandelbrot.mov
# 2. Umwandlung des Containers. Zum Beispiel von MOV zu AVI.
# Parameter:
# -i die Ausgangsdatei [i = input file]
# -c die gewünschte Umwandlung (in unserem Fall: keine, weil wir nur den
# Container ändern wollen, nicht aber das darin enthaltene Video)
# der Name der zu erzeugende Datei [ohne -o]
ffmpeg -i mandelbrot.mov -c copy mandelbrot.avi
# Bemerkung für die Apple-Benützer:
# Sie erzeugen eine Windows-Datei, die "QuickTime Player" nicht vorzuführen
# kann (ausser wenn der zusätzlich erforderliche Codec installiert wurde).
# Sie können, zum Beispiel, das Programm "VLC" benützen.
# 3. Die technischen Metadaten aus der Datei lesen.
#
# Parameter:
# -i die Ausgangsdatei (das -i könnte hier weggelassen werden)
# -show_format gibt die Informationen zum Container
# -show_streams gibt die Informationen zu Bild und Ton
ffprobe -i mandelbrot.mov
ffprobe -i mandelbrot.mov -show_format
ffprobe -i mandelbrot.mov -show_streams
ffprobe -i mandelbrot.mov -show_format -show_streams
# Ausgabe im Format "json", das mittels einem Java-Programm bearbeitet kann,
# oder "xml", das z.B. mittels einer Styldefinition XSLT gestalten werden
# kann.
#
# Parameter:
# -print_format gibt das Format an, in dem die Metadaten gewünscht werden
ffprobe -i mandelbrot.avi -show_format -show_streams -print_format json
ffprobe -i mandelbrot.avi -show_format -show_streams -print_format xml
ffprobe -i mandelbrot.avi -show_format -show_streams -print_format flat
# 4. Die Listen der möglichen Parametern anzeigen.
ffmpeg -codecs
ffmpeg -decoders
ffmpeg -h decoder=flac
ffmpeg -encoders
ffmpeg -filters
ffmpeg -formats
ffmpeg -layouts
ffmpeg -sample_fmts
ffmpeg -pix_fmts
ffmpeg -bsfs
# 5. Berechnen von MD5-Hashwerte auf Bildebene.
#
# Parameter:
# -i die Ausgangsdatei
# -f die Bibliothek "framemd5" von FFmpeg soll benützt werden
# der Name der zu erzeugende Datei [ohne -o]
ffmpeg -i mandelbrot.mov -f framemd5 mandelbrot_mov_md5.txt
ffmpeg -i mandelbrot.avi -f framemd5 mandelbrot_avi_md5.txt
# 6. Erzeugen einer ProRes-Datei aus TIFF-Einzelbilder und sie ins HD-Format
# korrekt einbetten.
#
# Parameter:
# -f es werden Einzelbilder verarbeitet
# -i die Ausgangsdatei
# -c:v der Video-Codec "Apple ProRes 422" wird ausgewählt
# -profile die Variante HQ (High Quality) von ProRes
# -filter:v die Grösse anpassen und ins HD Reinstellen
# -an kein Ton ("audio no")
# der Name der zu erzeugende Datei [ohne -o]
ffmpeg -f image2 -i Camera_%06d.tif -c:v prores -profile:v 3 -filter:v "scale=1440:1080, pad=1920:1080:240:0" -an Camera_ProRes.mov
# Bemerkung für die Windows-Benützer:
# Sie erzeugen eine Apple-Datei.
# Sie können, zum Beispiel, das Programm "VLC" benützen.
# 7. "Vergnügliches"
# Alle Zeilen eines Beispiels müssen ZUSAMMEN in das Terminal kopiert
# werden. Und ffplay wird benötigt.
# [Das Zeichen \ am Ende der Zeilen löscht fürs Terminal den Sprung zur
# neuen Zeile, damit es als einen einzigen Befehl ausgeführt wird.]
# Die R'G'B'-Komponenten (RGB-Komponenten) sichtbar machen.
ffmpeg -i mandelbrot.mov -filter_complex \
"split=4[a][b][c][d];[a]pad=iw*4:ih[w];[b]lutrgb=g=0:b=0[x];\
[c]lutrgb=r=0:b=0[y];[d]lutrgb=r=0:g=0[z];[w][x]overlay=w:0[wx];\
[wx][y]overlay=w*2:0[wxy];[wxy][z]overlay=w*3:0" RGB.mov
# Die Y'CBCR-Komponenten (YUV-Komponenten) sichtbar machen.
ffmpeg -i mandelbrot.avi -filter_complex \
"split=4[a][b][c][d];[a]pad=iw*4:ih[w];[b]lutyuv=u=128:v=128[x];\
[c]lutyuv=y=0:v=128[y];[d]lutyuv=y=0:u=128[z];[w][x]overlay=w:0[wx];\
[wx][y]overlay=w*2:0[wxy];[wxy][z]overlay=w*3:0" YUV.avi
2015-12-19 |