Extract Thumbnails of Every Camera Change on a Video File

ffmpeg, h.264, video

Solution

Seams like

` ffmpeg -i video.mp4 -vf select="eq(pict_type\,I)" -vsync 0 -an keyframes%03d.png `

will do the thing. It's a video filter that selects just the I-Frames, that basically are reference frames that appears every time there's a significant change.

More here: http://ffmpeg.org/ffmpeg.html#select

This is specially true for MPEG based compressions, don't know how the other codecs behave.

EDIT: as noted by LordNeckbeard, the `scene` option, as in `ffmpeg -i video.mp4 -vf select='gt(scene\,0.9)' -vsync 0 -an keyframes%03d.jpg`, works better for what I am intending.

Problem

Is there a way to detect and extract thumbnails of every sudden change (camera change, slide change, scene change, got it?) of a video file (preferably h264). Something in the lines of comparing keyframes and look for differences larger than some given constant.

Original source