[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.27.2.41, Thu Oct 9 18:50:22 2003 UTC revision 1.27.2.50, Wed Dec 10 01:01:31 2003 UTC
# Line 57  Line 57 
57  #define XVID_API_MAJOR(a)        (((a)>>16) & 0xff)  #define XVID_API_MAJOR(a)        (((a)>>16) & 0xff)
58  #define XVID_API_MINOR(a)        (((a)>> 0) & 0xff)  #define XVID_API_MINOR(a)        (((a)>> 0) & 0xff)
59    
60  #define XVID_VERSION             XVID_MAKE_VERSION(1,-127,0)  #define XVID_VERSION             XVID_MAKE_VERSION(1,0,-127)
61  #define XVID_API                 XVID_MAKE_API(4, 0)  #define XVID_API                 XVID_MAKE_API(4, 0)
62    
63  #define XVID_UNSTABLE  #define XVID_UNSTABLE
# Line 73  Line 73 
73   * 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
74   * future   * future
75   */   */
76  #define XVID_BS_VERSION "0020"  #define XVID_BS_VERSION "0023"
77    
78    
79  /*****************************************************************************  /*****************************************************************************
# Line 96  Line 96 
96    
97  /* colorspace values */  /* colorspace values */
98    
99  #define XVID_CSP_USER     (1<< 0) /* 4:2:0 planar */  #define XVID_CSP_USER     (1<< 0) /* 4:2:0 planar (==I420, except for pointers/strides) */
100  #define XVID_CSP_I420     (1<< 1) /* 4:2:0 packed(planar win32) */  #define XVID_CSP_I420     (1<< 1) /* 4:2:0 planar */
101  #define XVID_CSP_YV12     (1<< 2) /* 4:2:0 packed(planar win32) */  #define XVID_CSP_YV12     (1<< 2) /* 4:2:0 planar */
102  #define XVID_CSP_YUY2     (1<< 3) /* 4:2:2 packed */  #define XVID_CSP_YUY2     (1<< 3) /* 4:2:2 packed */
103  #define XVID_CSP_UYVY     (1<< 4) /* 4:2:2 packed */  #define XVID_CSP_UYVY     (1<< 4) /* 4:2:2 packed */
104  #define XVID_CSP_YVYU     (1<< 5) /* 4:2:2 packed */  #define XVID_CSP_YVYU     (1<< 5) /* 4:2:2 packed */
# Line 246  Line 246 
246  /* general flags */  /* general flags */
247  #define XVID_LOWDELAY      (1<<0) /* lowdelay mode  */  #define XVID_LOWDELAY      (1<<0) /* lowdelay mode  */
248  #define XVID_DISCONTINUITY (1<<1) /* indicates break in stream */  #define XVID_DISCONTINUITY (1<<1) /* indicates break in stream */
249    #define XVID_DEBLOCKY      (1<<2) /* perform luma deblocking */
250    #define XVID_DEBLOCKUV     (1<<3) /* perform chroma deblocking */
251    
252  typedef struct {  typedef struct {
253          int version;          int version;
# Line 277  Line 279 
279                          int general;        /* [out] flags */                          int general;        /* [out] flags */
280                          int width;          /* [out] width */                          int width;          /* [out] width */
281                          int height;         /* [out] height */                          int height;         /* [out] height */
282                          int par;            /* [out] picture aspect ratio (refer to XVID_PAR_xxx above) */                          int par;            /* [out] pixel aspect ratio (refer to XVID_PAR_xxx above) */
283                          int par_width;      /* [out] aspect ratio width */                          int par_width;      /* [out] aspect ratio width */
284                          int par_height;     /* [out] aspect ratio height */                          int par_height;     /* [out] aspect ratio height */
285                  } vol;                  } vol;
# Line 313  Line 315 
315  #define XVID_PLG_DESTROY (1<<1)  #define XVID_PLG_DESTROY (1<<1)
316  #define XVID_PLG_INFO    (1<<2)  #define XVID_PLG_INFO    (1<<2)
317  #define XVID_PLG_BEFORE  (1<<3)  #define XVID_PLG_BEFORE  (1<<3)
318  #define XVID_PLG_AFTER   (1<<4)  #define XVID_PLG_FRAME   (1<<4)
319    #define XVID_PLG_AFTER   (1<<5)
320    
321  /* xvid_plg_info_t.flags */  /* xvid_plg_info_t.flags */
322  #define XVID_REQORIGINAL (1<<0) /* plugin requires a copy of the original (uncompressed) image */  #define XVID_REQORIGINAL (1<<0) /* plugin requires a copy of the original (uncompressed) image */
# Line 392  Line 395 
395          int sse_y;              /* [out] Y plane's sse */          int sse_y;              /* [out] Y plane's sse */
396          int sse_u;              /* [out] U plane's sse */          int sse_u;              /* [out] U plane's sse */
397          int sse_v;              /* [out] V plane's sse */          int sse_v;              /* [out] V plane's sse */
398            int bquant_ratio;       /* [in] */
399            int bquant_offset;      /* [in] */
400  } xvid_plg_data_t;  } xvid_plg_data_t;
401    
402    
# Line 464  Line 469 
469          char * filename;              /* [in] first pass stats filename */          char * filename;              /* [in] first pass stats filename */
470    
471          int keyframe_boost;           /* [in] keyframe boost percentage: [0..100] */          int keyframe_boost;           /* [in] keyframe boost percentage: [0..100] */
         int payback_method;           /* [in] Payback method: see XVID_PAYBACK flags */  
         int bitrate_payback_delay;    /* [in] Payback delay expressed in number of frames */  
472          int curve_compression_high;   /* [in] percentage of compression performed on the high part of the curve (above average) */          int curve_compression_high;   /* [in] percentage of compression performed on the high part of the curve (above average) */
473          int curve_compression_low;    /* [in] percentage of compression performed on the low  part of the curve (below average) */          int curve_compression_low;    /* [in] percentage of compression performed on the low  part of the curve (below average) */
474          int max_overflow_improvement; /* [in] */          int overflow_control_strength;/* [in] Payback delay expressed in number of frames */
475          int max_overflow_degradation; /* [in] */          int max_overflow_improvement; /* [in] percentage of allowed range for a frame that gets bigger because of overflow bonus */
476            int max_overflow_degradation; /* [in] percentage of allowed range for a frame that gets smaller because of overflow penalty */
477          int kftreshold;               /* [in] */  
478          int kfreduction;              /* [in] */          int kfreduction;              /* [in] maximum bitrate reduction applied to an iframe under the kfthreshold distance limit */
479          int min_key_interval;         /* [in] Minimum interval of frames between two IFrames */          int kfthreshold;              /* [in] if an iframe is closer to the next iframe than this distance, a quantity of bits
480                                                                       *      is substracted from its bit allocation. The reduction is computed as multiples of
481                                                                       *      kfreduction/kthreshold. It reaches kfreduction when the distance == kfthreshold,
482                                                                       *      0 for 1<distance<kfthreshold */
483    
484          int container_frame_overhead; /* [in] How many bytes the controller has to compensate per frame due to container format overhead */          int container_frame_overhead; /* [in] How many bytes the controller has to compensate per frame due to container format overhead */
485  }xvid_plugin_2pass2_t;  }xvid_plugin_2pass2_t;
# Line 616  Line 622 
622          unsigned char *quant_intra_matrix; /* [in:opt] custom intra qmatrix */          unsigned char *quant_intra_matrix; /* [in:opt] custom intra qmatrix */
623          unsigned char *quant_inter_matrix; /* [in:opt] custom inter qmatrix */          unsigned char *quant_inter_matrix; /* [in:opt] custom inter qmatrix */
624    
625          int par;                           /* [in:opt] picture aspect ratio (refer to XVID_PAR_xxx above) */          int par;                           /* [in:opt] pixel aspect ratio (refer to XVID_PAR_xxx above) */
626          int par_width;                     /* [in:opt] aspect ratio width */          int par_width;                     /* [in:opt] aspect ratio width */
627          int par_height;                    /* [in:opt] aspect ratio height */          int par_height;                    /* [in:opt] aspect ratio height */
628          /* ---------------------------------------------- */          /* ---------------------------------------------- */

Legend:
Removed from v.1.27.2.41  
changed lines
  Added in v.1.27.2.50

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