[XviD-devel] [RFC] quality levels

Edouard Gomez xvid-devel@xvid.org
Thu, 8 Aug 2002 23:26:29 +0200


Hi,

I'm  preparing a  new patch  set  for XviD  transcode's modules.   I'm
wondering if it's time for us  to discuss what features have to be set
depending on what "search  mode" (vfw's vocabulary) or "quality level"
(transcode's vocabulary) is used.

Koepi does lot of testing to see  if the vfw's modes are right. But we
have  also   the  xvid_stats'   levels,  divx4  compat's   levels  and
transcode's levels. Should we set them  to vfw or is there someone who
disagree ?

VFW :

-----------+----------------------------------------------------------
  Quality  |  Motion flag
-----------+----------------------------------------------------------
     0     | None
-----------+----------------------------------------------------------
     1     | PMV_QUICKSTOP16
-----------+----------------------------------------------------------
     2     | PMV_EARLYSTOP16
-----------+----------------------------------------------------------
     3 h   | PMV_EARLYSTOP16, PMV_EARLYSTOP8
-----------+----------------------------------------------------------
     4 h   | PMV_EARLYSTOP16, PMV_HALFPELREFINE16, PMV_EARLYSTOP8,
           | PMV_HALFPELDIAMOND8
-----------+----------------------------------------------------------
     5 h 4v| PMV_EARLYSTOP16, PMV_HALFPELREFINE16, PMV_EARLYSTOP8,
           | PMV_HALFPELDIAMOND8, PMV_ADVANCEDDIAMOND16
-----------+----------------------------------------------------------
     6 h 4v| PMV_EARLYSTOP16, PMV_HALFPELREFINE16, PMV_EXTSEARCH16,
           | PMV_EARLYSTOP8, PMV_HALFPELREFINE8, PMV_HALFPELDIAMOND8,
           | PMV_USESQUARES16
-----------+----------------------------------------------------------
*h == halpel mode

Comments : why  using EARLY_STOP8 if there is no  inter4v flag in mode
           3/4 ?

xvid_stat and transcode (defaults, but can be tuned through config file)

-----------+----------------------------------------------------------
  Quality  |  Motion flag
-----------+----------------------------------------------------------
     0     | None
-----------+----------------------------------------------------------
     1     | PMV_EARLYSTOP16
-----------+----------------------------------------------------------
     2     | PMV_EARLYSTOP16   (<-- quant types change)
-----------+----------------------------------------------------------
     3 h   | PMV_EARLYSTOP16, PMV_HALFPELREFINE16
-----------+----------------------------------------------------------
     4 h 4v| PMV_EARLYSTOP16, PMV_HALFPELREFINE16
-----------+----------------------------------------------------------
     5 h 4v| PMV_EARLYSTOP16, PMV_HALFPELREFINE16, PMV_EARLYSTOP8,
           | PMV_HALFPELREFINE8
-----------+----------------------------------------------------------
     6 h 4v| PMV_EARLYSTOP16, PMV_HALFPELREFINE16, PMV_EXTSEARCH16,
           | PMV_USESQUARES16, PMV_EARLYSTOP8, PMV_HALFPELREFINE8
-----------+----------------------------------------------------------

Comments : this one seems to be more logical.

Why not  pushing these ADVANCED_DIAMONDS16/8  we talked in  a previous
thread ?  (nb : already done in vfw).

So i'm  waiting for coments and  let's decide a common  quality set of
flags.

regards.

-- 
Edouard Gomez