I have a 30 fps video with a GOP 30 (1 i-frame per second). I'd like to create a version that is '30x faster', by dropping all frames except every 30th frame. I can do that as so:
ffmpeg -i t1.mp4 -filter:v "setpts=.033333*PTS" f6.mp4
It creates the desired output, but it runs slow, and uses a lot of CPU. I presume this is because it is stepping through all the frames and decoding each one before throwing away 29/30 of them.
Is there a way to instruct ffmpeg to create a '[GOP]x faster' video using only the key frames, so that it need only decode the i-frames?
I'd also like it to do no transcode of the iframes - same size, etc. I don't mind what the GOP of the output video is.