[MPlayer-users] [BUG] incorrect copy of mpeg video since r22112
Giacomo Comes
comes at naic.edu
Sat Dec 8 22:48:30 CET 2007
On Sat, Dec 08, 2007 at 12:43:34PM +0100, Nico Sabbi wrote:
> >Following the report of a user
> >(http://lists.mplayerhq.hu/pipermail/mencoder-users/2007-December/007588.html)
> >I have found the following bug:
> >if i create a file containing mpeg video copied from an mpeg stream
> >like:
> >mencoder -of mpeg -mpegopts format=dvd -ovc copy -o test.mpg
> >dvd://1 -chapter 2 -frames 1000 -oac copy
> >or even
> >mencoder -ovc copy -o test.avi dvd://1 -chapter 2 -frames 1000 -oac
> >copy
> >
> >then the first 1/2 frames are corrupted.
> >
> >The bug was introduced with r22112:
> >(demux_mpg_probe() seek to the initial position before returning -
> >patch by reimar)
> >
> >--- trunk/libmpdemux/demux_mpg.c 2007/02/03 11:32:43 22106
> >+++ trunk/libmpdemux/demux_mpg.c 2007/02/03 14:09:47 22112
> >@@ -673,6 +673,8 @@
> > mp_msg(MSGT_DEMUXER,MSGL_V,MSGTR_NotSystemStream);
> > }
> > }
> >+ //FIXME this shouldn't be necessary
> >+ stream_seek(demuxer->stream,tmppos);
> > return file_format;
> > }
>
> the patch is correct and what you reported is not reproducible here.
> Adding -nosound to your command line will probably keep the
> video stream intact, proving that the framedrop is due to mencoder's
> brokennes
You can reproduce the bug in this way:
download and untar the file http://encode2mpeg.sourceforge.net/test/IMG.tar.bz2
run:
mencoder -ovc copy -o test.avi dvd://1 -dvd-image IMG -chapter 2 -oac copy
the first frame of test.avi is corrupted.
in the tar file there are also the first three frames
created with "mplayer test.avi -vo png" that show the problem.
The dvd image is home made and is able to trigger the bug only if you copy
the mpeg video in an avi container.
With other commercial dvd I was able to spot the bug copying the video
in both an avi or mpeg container.
I think what really happens is:
if a copy without bug start with frames A B C ...
a copy with bug start with frames corruptedA A B C ...
that is a corrupted copy of the first frame is added in front of the
good sequence.
Giacomo
More information about the MPlayer-users
mailing list