Ich habe Hunderte von visuell (!) beschädigten Videoclips in H.264, die sich in einem größeren Satz von Dateien „verstecken“. Da sie neu transcodiert wurden, sind sie jetzt alle technisch in Ordnung und werden gut abgespielt, aber sie werden bei jedem zweiten Frame grün blinken.
Mir ist aufgefallen, dass ich, wenn ich eine Datei durch QCTools laufen lasse, sie anhand des Werts „zeitliche Ausreißer“ identifizieren kann, da sich jeder zweite Frame drastisch vom vorherigen unterscheidet (wegen dieser grünen Blitze).
Ich möchte QCTools auf jede Datei in diesem großen Satz verweisen, aber nur:
Ich habe die Hilfe der QCTools CLI-Version durchgesehen und konnte keine Möglichkeit finden, dies zu tun. Hat jemand irgendwelche anderen Ideen auf dem Identifizieren dieser Akten? Gibt es noch eine Möglichkeit, dies mit QCTools zu tun?
Da QCTools die ffmpeg/ffprobe umschließt und den Signalstats-Filter verwendet, erreiche ich hier, was ich wollte:
ffprobe -f lavfi movie="Bad.mp4","signalstats=tout" -read_intervals %00:01 -show_frames
-show_frames gibt die Frame-Zusammenfassung in STDOUT aus. Es enthält den Wert, den ich brauche:
TAG:lavfi.signalstats.TOUT=0
-read_intervals erlaubt mir, nur einen kleinen Teil der Datei zu verarbeiten, um Signalstatistiken von nur einem kleinen Teil der Datei zu erhalten
Wir können auch überprüfen, wie QCTools das macht, indem wir uns den Quellcode hier ansehen: https://github.com/bavc/qctools/blob/master/Source/GUI/BigDisplay.cpp#L844-L845
Gyan
Michael Liebmann
Toni Sepia
Jason Konrad