Trying to make a timelapse out of dashcam videos with FFmpeg, without taking hours, but I can't figure it out.
I have 6 hours of footage in mostly 1 minute HEVC MP4 clips, put into a concat file. This works, but takes literally forever.
fmpeg -f concat -safe 0 -i list.txt -an -filter:v "setpts=PTS/120" -c:v libsvtav1 -preset 8 -crf 50 output.mkv
Almost all the time is spent in the decoder. Is there any way to make it skip over frames completely without decoding them? These videos are ~90GB altogether so being able to seek instead of read consecutively would save tons of time.
Some sites online said to use -discard nokey
or -skip_frame nokey
with other options, but they don't do anything. I also saw a clever way to use a bitstream filter that drops packets, but doesn't work because discard nokey is broken.
https://video.stackexchange.com/questions/38156/ffmpeg-timelapse-from-some-keyframes
Is this hopeless?