[MPlayer-dev-eng] MEncoder does not duplicate frames correctly
Arpi
arpi at thot.banki.hu
Tue Dec 11 21:25:32 CET 2001
Hi,
> Arpi writes:
>
> > Hi,
> >
> > the normal standard way to duplicate (skip) frame in AVi is writting 0 byte
> > length chunks. it means for player: don't decode/display new frame, just
> > wait for next frame...
>
> Oh, I did not know that. I'll make a new patch that does it like you
> describe. Currently it does not do this. It just duplicate the chunk
> which is plain wrong.
where?
if(skip_flag<0){
// duplicate frame
printf("\nduplicate %d frame(s)!!! \n",-skip_flag);
while(skip_flag<0){
aviwrite_write_chunk(muxer,mux_v,muxer_f,0,0);
++skip_flag;
}
} else
it writes N zero-length chunks to the file.
> > Kim Minh wrote:
> >
> >> Another minor tweak is also included: divx4 min_quantizer is set to 1
> >> instead of 2. Or was there a good reason not to accept 1 as a value?
> >
> > dunno. it's from transcode...
>
> The documentation from divx4linux-20011010_4.02 says:
>
> "When encoding is performed with ENC_OPT_ENCODE, quant and intra
> fields of ENC_FRAME structure are ignored. Encore2 provides a
> possibility to more accurately control the encoding process. To
> use this feature, you have to pass ENC_OPT_ENCORE_VBR as an
> argument of encore(). In this case, the quant instructs encore to
> encode the current frame with the specified quantizer. The valid
> ranges of this field is 1 to 31, with 1 giving highest quality and
> 31 giving lowest bitstream size. [...]"
>
> It is not really about min_quantizer, but I get it to also mean that
> the same range is valid... Should'nt we diverge from transcode where
> it is broken?
of course the range of qscale is 1..31.
but the choosen default values are 2..31, i got it from transcode.
it's still much better than original defaults of divx4linux.
btw, it's config option, if you like 1 is better, add it to conf.
A'rpi / Astral & ESP-team
--
mailto:arpi at thot.banki.hu
http://esp-team.scene.hu
More information about the MPlayer-dev-eng
mailing list