[FFmpeg-user] problem with fast seeking and splitting
alexander.solonsky at castlabs.com
Mon May 2 08:27:42 EEST 2022
I'm trying to split an input file into 2 second chunks, transcode and assemble using a concat muxer. And experiencing two problems:
1) when using ffmpeg -ss 00:00:08 -t 2 -i <input_file> -c:v libx264 .... instead of seeking to second 8, ffmpeg seeks somewhere to second 15 or so. The first segments are correct, and then it start to go haywire.
Using accurate seek ffmpeg -i <input_file> -ss 00:00:08 -t 2 -c:v libx264 .... resolves the problem. But it is completely unusuble if you want to split the whole file.
2) when concatenating the resulting files - there happens a noticeable break between the chunks. For both audio and video and is equal to 2 additional frame durations (e.g. prev chunk ends at 1.981333 and the next chunk (after concat) while it should start at 2.023000 actually starts at 2.095744 for 24 fps video, and for audio prev chunk ends at 1.927256 and starts at 2.023220 while it should start at 1.950476).
adding all additional flags like copyts, copytb, enctimebase, vsync doesn't change anything. And it's really curious when using the hls demuxer - it splits the file accurately and fast, without these breaks.
Can you please help me fix those two problems or suggest to understand which command like I could use to reproduce splitting behavior from the HLS demuxer?
More information about the ffmpeg-user