

I have found options and matched parameters for everything that I can see except the codec time base (tbc). I used the -show_streams to get more detailed info, which are available at (single blank line separating 2 outputs). (I have omitted audio stream output as the streams have ostensibly the same parameters, yet the audio is not joined correctly) So, checking the video with ffprobe gives: $ ffprobe -i ab-transition.mkv 2>&1 | grep Stream.*Video ffprobe -i B.mkv 2>&1 | grep Stream.*Video My guess is there is a mismatch in codec parameters, as noted as a prerequisite way up at the top of this question.

When I used ffmpeg's concat demuxer to join the clips above I get significant video and audio artifacts on playback. However, I would like there to be smooth transitions between these segments, so I have further split these segments so that the short ends can be used to create a crossfade transition without re-encoding the entire set of files.Ī basic diagram would probably help illustrate this: | (original file) If I use the concat demuxer at this point, the different parts get joined together perfectly- so far so good!

Using -ss as input option together with -c:v copy might not be accurate since ffmpeg is forced to only use/split on i-frames.Īs it happens, the splits aren't happening at exactly the right moment, but are close enough for the moment that I can focus on another part of the equation. I have written a python script to find the nearest keyframe to the desired cut point, and cut there, since when doing a stream copy ffmpeg can only use I-frames:

I have a file I would like to cut and keep useful parts from. (emphasis mine) My intention 1 is to produce media files with the same codec and parameters so that I can take advantage of concat without incurring a long re-encode. If you have media files with exactly the same codec and codec parameters you can concatenate them Ffmpeg can be used to concatenate files together:
