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 |