[MEncoder-users] accuracy of -ss -endpos function

Rich Felker dalias at aerifal.cx
Fri Jan 11 03:42:37 CET 2008


On Thu, Jan 10, 2008 at 10:33:42PM +0100, belcampo wrote:
> I used exactly the same "-mc 0 (and -noskip)" in the mencoding the whole 
> sourcefile, as in the -ss -endpos situation.
> Doing the whole file I get exactly what I want, exact same time as the 
> source.
> What is so wrong about "-mc 0 (and -noskip)", love to learn from you.

Suppose output framerate (either specified by -ofps or copied from the
input canonical framerate) is 25 fps. Then with -mc 0 -noskip, the
frames from the source file are written to the output file with
timestamps:

0, 1/25, 2/25, 3/25, 4/25, etc.,

regardless of their original timestamps or how they were synchronized
with the audio. If the source file was _truely_ fixed-framerate 25fps
with no odd jumps or discontinuities, no broken/undecodable frames,
and no broken audio, then this is ideal, as it makes sure that
mencoder's bogus A/V sync code does not introduce any minor glitches.
However, if any of those conditions fail to be met, then using -mc 0
and -noskip will just assign completely bogus timestamps, breaking A/V
sync badly.

So, you have these choices:

1. MEncoder with -mc 0 -noskip: perfect results but only if the input
file meets very stringent conditions.

2. MEncoder without -mc 0 -noskip: approximately correct results on
all but the most bogus input files.

3. A cleaner tool such as FFmpeg which uses timestamps correctly:
exactly correct timing for all but the most bogus input files, but not
as many features as MEncoder.

Rich



More information about the MEncoder-users mailing list