Frame aus MPEG-Video extrahieren

Ist es mit einigermaßen wenig Aufwand möglich aus einem Video zB den 500 Frame von hinten als Bild zu extrahieren?
Bisher hab ich nur das Java Media Framework gefunden. Dieses ist jedoch total kompliziert dokumentiert, und die Demo’s sind nicht nur total kompliziert programmiert sondern funktionieren teilweise auch gar nicht!
Ferner wurde das Projekt anscheinend 2005 eingestellt. Auf Wikipedia hab ich noch einen Link auf das FMJ-Projekt gefunden, das anscheinend nichts anderes macht als die Methoden des JMF 1:1 nachzubauen …

Gibt es diesbezüglich sonst noch Möglichkeiten?

Es sieht so aus als greife die GPL erst, wenn die entsprechende Software vertrieben wird :slight_smile: (Violations of the GNU Licenses - GNU Project - Free Software Foundation)
Somit würde ich den VLC Player in Betracht ziehen, da sich dieser ziemlich gut über die Kommandozeile und auch über Java (http://trac.videolan.org/jvlc/) ansteuern lässt. Bleibt nur die Frage ob der nicht eh diesselben Codecs verwendet als FFMPEG :smiley:

Ich habe jetzt herausgefunden wie sich mit VLC über die Shell ein Snapshot extrahieren lässt:

vlc -d --no-audio -V image --key-jump+long 25 --start-time 25 --stop-time 26 --image-out-format jpg --image-out-ratio 25 --image-out-prefix schnappschuss --no-image-out-replace video.mpg vlc:quit

Dieses Beispiel extrahiert zwischen der 25. und 26. Sekunde aus dem Video video.mpg, das Bild schnappschuss.jpg!
Die Parameter -d --no-audio verhindern, dass sich die grafische Oberfläche des VLC öffnet und die Audiotonspur wiedergegeben wird; durch –key-jump+long 25 beginnt das Video sofort mit der 25. Sekunde, dadurch muss nicht extra das ganze Video durchlaufen werden.
–image-out-ratio gibt die Framerate an.

Du könntest Dir auch mal QTJava angucken (Quicktime for Java).

Hast du auch Links zu geeigneten Dokumentationen? Aus dem Javadoc allein werd ich nicht schlau. Ferner sieht es für mich so aus als ob es zwei verschiedene QTJava gäbe. In den Tut’s die ich bisher über Google gefunden habe, ist von einem paket quicktime die rede, das ist in dem paket von http://qtjava.sourceforge.net gar nicht vorhanden ist. Da gibts außerdem nur Release Candidates zum downloaden ?_?

http://developer.apple.com/quicktime/qtjava/