[MEncoder-users] DVD compliant MPEG2 encoding
Rich Felker
dalias at aerifal.cx
Fri Sep 9 05:01:27 CEST 2005
On Fri, Sep 09, 2005 at 01:14:18AM +0300, Lauri Myllari wrote:
> 1) me_range
>
> The player I use for testing is a Pioneer DV-545 and it's apparently
> quite strict about standard compliance. After adding "me_range=127" to
> lavcopts the player stopped skipping/crashing on scenes with fast
> motion.
>
> I'm not sure what the correct value for me_range is. Mailing list
> archives suggest 128 and 256 (IIRC). To quote from the doom9.org thread:
>
> "For Main level, ISO 13818-2, table 7-8 and E-8:
> horizontal range: -1024 : 1023.5 (f_code = 8)
> vertical range: -128 : 127.5 (f_code = 5)"
The correct value to use is 128. lavc knows it's 1 unit less for
positive values. Unfortunately there's no way to set horizontal
separately, so some quality is sacrificed, but it's not too bad.
> Should this be noted in the encoding-guide.txt section about DVD
> constraints?
Yes.
> 2) telecine
>
> 3:2 pulldown was still causing stutter on NTSC playback. It seems
> -mpegopts flag "telecine" doesn't work 100%. MPlayer recognizes this
> pulldown and switches to 24000/1001fps, but the Pioneer was skipping
> all the time.
Hmm, this is unfortunate. I wonder why it doesn't work..??
> I think some timecode manipulation might be needed in addition to
> setting rff/tff flags in mpeg muxer.
Oh, yes that's very likely... it doesn't do it now? Have you looked at
the source or are you just guessing?
> 3) rate control
>
> This is a bit harder to describe. Sometimes it works, sometimes not.
> I've had trouble with high peaks (sometimes over 15000k according to
> mplex, with vrc_buf_size=1835 and vrc_maxrate=9000) and low average
> bitrates.
Hmm, odd.. This should not happen; I wonder why it does.
> Lower bitrates (~2000-3000kbps) seem to be accurate without any
> B-frames. Adding max_bframes=2 leads to undersized encode.
>
> Setting a higher bitrate (~4000kbps or more) gives undersized encodes
> too.
If the result is undersized after 2 passes, that means there was no
way to use more bits within the quantization restraints. Set
vqmin/lmin to 1 if you insist on using more bits..
Rich
More information about the MEncoder-users
mailing list