Ich habe gerade gestern von ffprobe erfahren und konnte nach langem Googeln eine Befehlszeilen-BAT-Datei zusammenstellen, um die gewünschten Metainformationen zu erhalten. Dann stellt sich heraus, dass es nur etwa die Hälfte der Zeit funktioniert. Nach einigem Experimentieren scheint es, dass es nur mit MKV-Dateien funktioniert.
Ich weiß nicht, ob hier ein Fehler vorliegt oder ob meine Befehlszeile verbessert werden muss. Vielleicht funktioniert ffProbe nur mit bestimmten Dateien, aber ich ging davon aus, dass es mit den meisten gängigen Videoformaten funktionieren würde.
Ich verwende AutoHotKey, um eine BAT-Datei zu erstellen, die ich dann starte. Also müssen wir uns wirklich nur die BAT-Datei ansehen.
Hier ist mein BAT-Skript ...
C:\PROGRA~1\ffmpeg\bin\ffprobe.exe -pretty -select_streams v \
-show_entries \
format=filename,size,duration,bit_rate:stream=codec_name,codec_type,bit_rate,width,height,display_aspect_ratio \
-of ini \
"S:\myTVshows\SampleName - S01E01 - SampleTitle.mp4"
Nachdem dies ausgeführt wurde, gibt die Konsole nur den #ffprobe output
Header aus und hängt sich dann auf. Wenn es auf einer mkv-Datei läuft, gibt es wie erwartet sofort alle gewünschten Daten aus.
Update: Wenn ich als Parameter hinzufüge -report
, bekomme ich natürlich die Berichtsprotokolldatei ... aber ich bekomme auch die gewünschte Ausgabe (anstatt wie zuvor zu hängen). Ich frage mich, ob es bedeutet, dass dies ein Fehler ist.
Anmerkungen
Unten ist die Konsolenausgabe ...
ffprobe version N-85266-g1229007 Copyright (c) 2007-2017 the FFmpeg developers
built with gcc 6.3.0 (GCC)
configuration: --enable-gpl --enable-version3 --enable-cuda --enable-cuvid --e
nable-d3d11va --enable-dxva2 --enable-libmfx --enable-nvenc --enable-avisynth --
enable-bzlib --enable-fontconfig --enable-frei0r --enable-gnutls --enable-iconv
--enable-libass --enable-libbluray --enable-libbs2b --enable-libcaca --enable-li
bfreetype --enable-libgme --enable-libgsm --enable-libilbc --enable-libmodplug -
-enable-libmp3lame --enable-libopencore-amrnb --enable-libopencore-amrwb --enabl
e-libopenh264 --enable-libopenjpeg --enable-libopus --enable-librtmp --enable-li
bsnappy --enable-libsoxr --enable-libspeex --enable-libtheora --enable-libtwolam
e --enable-libvidstab --enable-libvo-amrwbenc --enable-libvorbis --enable-libvpx
--enable-libwavpack --enable-libwebp --enable-libx264 --enable-libx265 --enable
-libxavs --enable-libxvid --enable-libzimg --enable-lzma --enable-zlib
libavutil 55. 59.100 / 55. 59.100
libavcodec 57. 90.100 / 57. 90.100
libavformat 57. 72.100 / 57. 72.100
libavdevice 57. 7.100 / 57. 7.100
libavfilter 6. 83.100 / 6. 83.100
libswscale 4. 7.100 / 4. 7.100
libswresample 2. 8.100 / 2. 8.100
libpostproc 54. 6.100 / 54. 6.100
# ffprobe output
Link zur Protokolldatei, wenn der Parameter „-report“ hinzugefügt wurde
Seit der Implementierung der neuen Dekodierungs-API dauert das Auslesen von ffprobe für MP4-Dateien viel länger zum Drucken und hängt von der Dauer des Videos ab. Wechseln Sie zu einer Version vor April 2017.
Gyan
Zuckerdaddy
Gyan
report
zum Befehl hinzu und führen Sie ihn aus. Geben Sie die Berichtsdatei frei.Zuckerdaddy
-report
Hinzufügen erstellt wurdeGyan
Zuckerdaddy
Gyan
Zuckerdaddy