[FFmpeg-user] Concat videos properly (without dropped or freezed frames)
nicolas.george at normalesup.org
Wed Mar 6 19:15:08 CET 2013
Le sextidi 16 ventôse, an CCXXI, kwi wi a écrit :
> Using FFmpeg on OSX, I'm trying to concat videos taken with my phone but
> the final video is very messy.
> The audio is off, there are frozen frames on transitions, and the last
> video has a lot of dropped frames to the point where the audio starts a
> good 2 seconds before its first frame.
> The basic steps I've taken are as follows. A detailed account can be viewed
> I convert three *.3gp videos to *.mp4 with
> $ ffmpeg -i <input file>.3gp -ar 44100 <output file>.mp4
Your command line is missing all codecs and quality settings, thus relying
on ffmpeg's defaults: this is not a good idea in general (but of course, it
can do for testing).
> I create a concat text file with these contents
> file '/path/to/cloudy_skies.mp4'
> file '/path/to/morning_nwc.mp4'
> file '/path/to/snapple.mp4'
> I perform the concat with
> $ ffmpeg -y -f concat -i clips.txt -c copy c.mp4
I notice you do two steps. This is frequently a bad idea if you can do a
single step. In this particular case, I notice that the files are ruined by
the 3GP -> MP4 conversion: concatenating without transcoding leads to a file
that seems correct (as far as it can be determined with these files: the
sound is mostly noise, there is no landmark to tell the A-V sync).
If you need to transcode, I suggest you do it at the same time as the
concatenation, using the concat filter instead of the concat format. If you
really want two steps, I suggest you do the concatenation first.
> I'm getting the following messages in the concat output:
> [concat @ 0x7ffc93813000] Estimating duration from bitrate, this may be
This is normal. You can get rid of them by inserting the "duration"
directive for each file in the concat script.
> [mp4 @ 0x7ffc9385f800] st:0 PTS: 147194 DTS: 146810 < 149650 invalid,
> [concat @ 0x7ffc93813000] doesnâ€™t seem critical. Am I wrong?
> [mp4 @ 0x7ffc9385f800] seems like it drops a frame every time itâ€™s
> encountered. Am I wrong on this assumption. How do I resolve this so the
> converted videos concat properly?
Yes, these messages seem to indicate a real problem, but I do not know what
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Size: 198 bytes
Desc: Digital signature
More information about the ffmpeg-user