[cvs] / xvidcore / src / xvid.h Repository:
ViewVC logotype

Diff of /xvidcore/src/xvid.h

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1.17.2.19, Sat Jan 4 06:14:32 2003 UTC revision 1.17.2.30, Sat Feb 15 05:57:15 2003 UTC
# Line 59  Line 59 
59   * doesnt hurt but not increasing it could cause difficulty for decoders in the   * doesnt hurt but not increasing it could cause difficulty for decoders in the
60   * future   * future
61   */   */
62  #define XVID_BS_VERSION "0003"  #define XVID_BS_VERSION "0009"
63    
64    
65  /* Error codes */  /* Error codes */
# Line 257  Line 257 
257  #define XVID_GLOBAL_DEBUG               0x00000004      /* print debug info on each frame */  #define XVID_GLOBAL_DEBUG               0x00000004      /* print debug info on each frame */
258  #define XVID_GLOBAL_REDUCED             0x04000000      /* reduced resolution vop enable */  #define XVID_GLOBAL_REDUCED             0x04000000      /* reduced resolution vop enable */
259    
260    #define XVID_GLOBAL_EXTRASTATS  0x00000200      /* generate extra statistics */
261    
262    
263  /* Flags for XVID_ENC_FRAME.general */  /* Flags for XVID_ENC_FRAME.general */
264  #define XVID_VALID_FLAGS                0x80000000  #define XVID_VALID_FLAGS                0x80000000
265    
# Line 267  Line 270 
270  #define XVID_QUARTERPEL                 0x02000000  #define XVID_QUARTERPEL                 0x02000000
271  #define XVID_ADAPTIVEQUANT              0x00000080  #define XVID_ADAPTIVEQUANT              0x00000080
272  #define XVID_LUMIMASKING                0x00000100  #define XVID_LUMIMASKING                0x00000100
 #define XVID_LATEINTRA                  0x00000200  
273    
274  #define XVID_INTERLACING                0x00000400      /* enable interlaced encoding */  #define XVID_INTERLACING                0x00000400      /* enable interlaced encoding */
275  #define XVID_TOPFIELDFIRST              0x00000800      /* set top-field-first flag  */  #define XVID_TOPFIELDFIRST              0x00000800      /* set top-field-first flag  */
# Line 284  Line 286 
286  #define XVID_ME_PMVFAST                 0x00080000  #define XVID_ME_PMVFAST                 0x00080000
287  #define XVID_ME_EPZS                    0x00100000  #define XVID_ME_EPZS                    0x00100000
288    
289    #define XVID_CHROMAOPT                  0x00200000      /* enable chroma optimization pre-filter */
290    
291  #define XVID_GREYSCALE                  0x01000000      /* enable greyscale only mode (even for */  #define XVID_GREYSCALE                  0x01000000      /* enable greyscale only mode (even for */
292  #define XVID_GRAYSCALE                  0x01000000  /* color input material chroma is ignored) */                                                                                          /* color input material chroma is ignored) */
293    
294  #define XVID_GMC                                0x20000000  #define XVID_GMC                                0x10000000
295  #define XVID_ME_COLOUR                  0x40000000  #define XVID_GMC_TRANSLATIONAL  0x20000000
296    
297  #define XVID_REDUCED                    0x04000000      /* reduced resolution vop */  #define XVID_REDUCED                    0x04000000      /* reduced resolution vop */
298    #define XVID_HQACPRED                   0x08000000      /* 20030209: high quality ac prediction */
299    
300    #define XVID_EXTRASTATS                 0x00000200  /* generate extra statistics */
301    
302    #define XVID_MODEDECISION_BITS  0x00400000      /* enable DCT-ME and use it for mode decision */
303    
304    
305  /* Flags for XVID_ENC_FRAME.motion */  /* Flags for XVID_ENC_FRAME.motion */
 #define PMV_ADVANCEDDIAMOND8    0x00004000  
 #define PMV_ADVANCEDDIAMOND16   0x00008000  
306    
307  #define PMV_HALFPELDIAMOND16    0x00010000  #define PMV_ADVANCEDDIAMOND16   0x00008000      /* use advdiamonds instead of diamonds as search pattern */
308    #define PMV_USESQUARES16                0x00800000      /* use squares instead of diamonds as search pattern */
309    
310  #define PMV_HALFPELREFINE16     0x00020000  #define PMV_HALFPELREFINE16     0x00020000
311    #define PMV_HALFPELREFINE8              0x02000000
312    
313  #define PMV_QUARTERPELREFINE16  0x00040000  #define PMV_QUARTERPELREFINE16  0x00040000
314    #define PMV_QUARTERPELREFINE8   0x04000000
315    
316  #define PMV_EXTSEARCH16                 0x00080000      /* extend PMV by more searches */  #define PMV_EXTSEARCH16                 0x00080000      /* extend PMV by more searches */
317  #define PMV_QUICKSTOP16                 0x00100000      /* like early, but without any more refinement */  
318    #define PMV_EXTSEARCH8                  0x08000000      /* use diamond/square for extended 8x8 search */
319    #define PMV_ADVANCEDDIAMOND8    0x00004000      /* use advdiamond for PMV_EXTSEARCH8 */
320    #define PMV_USESQUARES8                 0x80000000      /* use square for PMV_EXTSEARCH8 */
321    
322    #define PMV_CHROMA16                    0x00100000      /* also use chroma for P_VOP/S_VOP ME */
323    #define PMV_CHROMA8                             0x10000000      /* also use chroma for B_VOP ME */
324    
325    /* Motion search using DCT. use XVID_MODEDECISION_DCT to enable */
326    #define HALFPELREFINE16_BITS    0x00000100      /* perform DCT-based halfpel refinement */
327    #define HALFPELREFINE8_BITS             0x00000200      /* perform DCT-based halfpel refinement for 8x8 mode */
328    #define QUARTERPELREFINE16_BITS 0x00000400      /* perform DCT-based qpel refinement */
329    #define QUARTERPELREFINE8_BITS  0x00000800      /* perform DCT-based qpel refinement for 8x8 mode */
330    
331    #define EXTSEARCH_BITS                  0x00001000      /* perform DCT-based search using square pattern */
332                                                                                            /* enable PMV_EXTSEARCH8 to do this in 8x8 search as well */
333    #define CHECKPREDICTION_BITS    0x00002000      /* always check vector equal to prediction */
334    
335    
336    /* note: old and deprecated - or never implemented */
337    
338    /* only for compatability with old encoders */
339    
340    #define PMV_EARLYSTOP16                 0x00
341    #define PMV_EARLYSTOP8                  0x00
342    #define PMV_QUICKSTOP16                 0x00
343    #define PMV_QUICKSTOP8                  0x00
344    
345    #define PMV_HALFPELDIAMOND16    0x00
346    #define PMV_HALFPELDIAMOND8     0x00
347    
348  #define PMV_UNRESTRICTED16      0x00200000      /* unrestricted ME, not implemented */  #define PMV_UNRESTRICTED16      0x00200000      /* unrestricted ME, not implemented */
349  #define PMV_OVERLAPPING16       0x00400000      /* overlapping ME, not implemented */  #define PMV_OVERLAPPING16       0x00400000      /* overlapping ME, not implemented */
 #define PMV_USESQUARES16                0x00800000  
   
 #define PMV_HALFPELDIAMOND8     0x01000000  
 #define PMV_HALFPELREFINE8              0x02000000  
 #define PMV_QUARTERPELREFINE8   0x04000000  
 #define PMV_EXTSEARCH8                  0x08000000      /* extend PMV by more searches */  
 #define PMV_QUICKSTOP8                  0x10000000      /* like early, but without any more refinement */  
350  #define PMV_UNRESTRICTED8       0x20000000      /* unrestricted ME, not implemented */  #define PMV_UNRESTRICTED8       0x20000000      /* unrestricted ME, not implemented */
351  #define PMV_OVERLAPPING8                0x40000000      /* overlapping ME, not implemented */  #define PMV_OVERLAPPING8                0x40000000      /* overlapping ME, not implemented */
 #define PMV_USESQUARES8                 0x80000000  
352    
353    #define XVID_ME_COLOUR                  0x00    /* this has been converted to PMV_CHROMA[16/8] */
354    
355    
356  /*****************************************************************************  /*****************************************************************************
# Line 409  Line 446 
446                  int quant;                              /* [out] frame quantizer */                  int quant;                              /* [out] frame quantizer */
447                  int hlength;                    /* [out] header length (bytes) */                  int hlength;                    /* [out] header length (bytes) */
448                  int kblks, mblks, ublks;        /* [out] */                  int kblks, mblks, ublks;        /* [out] */
449                    long sse_y;                             /* [out] SSE of Y */
450                    long sse_u;                             /* [out] SSE of Cb */
451                    long sse_v;                             /* [out] SSE of Cr */
452          }          }
453          XVID_ENC_STATS;          XVID_ENC_STATS;
454    

Legend:
Removed from v.1.17.2.19  
changed lines
  Added in v.1.17.2.30

No admin address has been configured
ViewVC Help
Powered by ViewVC 1.0.4