[MEncoder-users] Re: Tutorial?

Ilya Zakharevich nospam-abuse at ilyaz.org
Fri Oct 6 11:38:08 CEST 2006


[A complimentary Cc of this posting was NOT [per weedlist] sent to
Niki Kovacs 
<mencoder-users at mplayerhq.hu>], who wrote in article <4517FD76.3070505 at kikinovak.net>:
> My question may seem somewhat heretic, but I insist there is no troll 
> intended. It is straightforward: is there any *comprehensive* tutorial 
> about converting a DVD to DivX with MEncoder? Sort of a receipt that 
> just works? I feel like someone who's been asking for a cooking receipt 
> and having various pointers for courses about alimentary biochemistry as 
> answers.

  [I must start with expressing my deepest gratitude to creator of this
   wonderful piece of software.  However, I cannot negate that the OP
   is fully justified in his doubts that that Mencoder needs a lot of
   improvement to be as useful as the effort that went into its
   creation deserves.]

What the answers you got boil down is, IMO, just "mencoder is not
designed for being easily useful".  Well, why not turn the discussion
around and try to find regions where mencoder may be improved?

(Keep in mind that my experience with mencoder is very short: one
"kinda completed" DVD rip to XVID.  So the problems I see are very
focussed on what I actually used.)

Let me start with major problems with documentation:

  0) It is unreadable; but this is not easy to fix, so let's delay this ;-)

  1) xvidencopts (do not know whether discussing them belongs here, or
     better be delegated to something XVID specific)

     1a) 2pass processing: absolutely nothing is said about WHICH
	 options are ignored with pass=1, and which with pass=1:turbo;
	 thus one does not know which one could be changed between
	 pass1 and pass2;

     1b) bitrate: it is not clear whether it sets VIDEO BITRATE and
	 VIDEO SIZE, or overall bitrate and overall size;

     1c) interlacing option: I found no clue what should be the
	 relationship of this to, e.g., -vf pullback;

  2) What mencode is outputing on TTY is not documented.

     2a) E.g., I see something like:

Opening video decoder: [mpegpes] MPEG 1/2 Video passthrough
VDec: vo config request - 720 x 480 (preferred colorspace: Mpeg PES)
Could not find matching colorspace - retrying with -vf scale...
Opening video filter: [scale]
The selected video_out device is incompatible with this codec.
Try adding the scale filter, e.g. -vf spp,scale instead of -vf spp.
VDecoder init failed :(

	 How should I know whether it is an error, or just a normal
	 process of enumeration of possible input options?  Especially
	 confusing if I HAVE -vf scale specified...

     2b) E.g., I see something like:

Pos:3299.0s  79104f (692%)  7.33fps Trem:-153min 218mb  A-V:0.003 [3684:159]
Pos:3299.1s  79105f (692%)  7.33fps Trem:-153min 218mb  A-V:0.003 [3684:159]
Pos:3299.1s  79106f (-692%)  7.33fps Trem:   0min   0mb  A-V:0.005 [3684:159]
Pos:3299.2s  79107f (-692%)  7.33fps Trem:   0min   0mb  A-V:0.006 [3684:159]
Pos:3299.2s  79108f (-692%)  7.33fps Trem:   0min   0mb  A-V:0.009 [3684:159]

         Nothing is documented.  OK, I can guess what the 1st, 2nd and
         4th fields mean.  I can kinda guess the semantic of A-V
         (although the details of what is done to establish
         video-audio sync are not discussed anywhere).  But what is
         that 692%?  And Trem?  And 218mb? And [3684:159]?

	 OK, looking at how 692 goes to -692, I can guess that it is
	 some bug related to too short a datatype used; but otherwise,
	 I have no clue...

  3) I got an AVI file which plays in Mplayer, but DivX will play it
     only up to 1h25m out of 1h52m (total size about 1.3GiB).  There
     are some vague hints scattered in documentation at shortcomings
     of AVI format, and that sometimes only Mplayer will be able to
     read the bastardized AVI file.  Do I get any feedback on this
     from mencoder?

  4) I must join the OP that there is no discussion of overall
     architecture of the process of Video Conversion.  This is just
     guesswork on my part:

	A) Fundamental differences between supported video formats are:

	   frame rate, CFR vs VFR, frame size, constant frame size vs
	   variable frame size, interlacing, methods if inclusing of
	   autogenerated frames, methods of creation of black border,
	   CBR vs VBR (what else)?

        B) When doing conversion, user should decide on the following
	   types of handling these differences: list???

	C1) The following differences can be transparently handled by
	    Mencoder: list???

	C2) Mencoder can apply some heuristics to handle the following
	    differences: list???  To do this, you need to specify
	    following options???

	C3) The following differences can be reported by Mencoder: list???

	C4) The following differences detected by Mencoder can be
	    handled by the following types of options: list???

	C5) Currently, the following differences cannot be detected,
	    and need a visual inspection: list???  When vgrepping,
	    look at the following features: list???  If you detect X,
	    specify following options to handle it: list???  Also see
	    documentation of the following options: list???

     Since without understanding the general architecture, the
     scrupulous discussion of separate options is not very fruitful, I
     think this area deserves to be addressed in the docs.

Thanks,
Ilya




More information about the MEncoder-users mailing list