[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.36, Thu Apr 15 12:05:19 2004 UTC revision 1.51.2.2, Tue Nov 22 21:01:33 2005 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,1,-127)  #define XVID_VERSION             XVID_MAKE_VERSION(1,1,0)
61  #define XVID_API                 XVID_MAKE_API(4, 0)  #define XVID_API                 XVID_MAKE_API(4, 1)
   
 #define XVID_UNSTABLE  
62    
63  /* Bitstream Version  /* Bitstream Version
64   * this will be writen into the bitstream to allow easy detection of xvid   * this will be writen into the bitstream to allow easy detection of xvid
# Line 73  Line 71 
71   * 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
72   * future   * future
73   */   */
74  #define XVID_BS_VERSION "0030"  #define XVID_BS_VERSION 41
   
75    
76  /*****************************************************************************  /*****************************************************************************
77   * error codes   * error codes
# Line 251  Line 248 
248  #define XVID_DEBLOCKY      (1<<2) /* perform luma deblocking */  #define XVID_DEBLOCKY      (1<<2) /* perform luma deblocking */
249  #define XVID_DEBLOCKUV     (1<<3) /* perform chroma deblocking */  #define XVID_DEBLOCKUV     (1<<3) /* perform chroma deblocking */
250  #define XVID_FILMEFFECT    (1<<4) /* adds film grain */  #define XVID_FILMEFFECT    (1<<4) /* adds film grain */
251    #define XVID_DERINGUV      (1<<5) /* perform chroma deringing, requires deblocking to work */
252    #define XVID_DERINGY       (1<<6) /* perform luma deringing, requires deblocking to work */
253    
254    #define XVID_DEC_FAST      (1<<29) /* disable postprocessing to decrease cpu usage *todo* */
255    #define XVID_DEC_DROP      (1<<30) /* drop bframes to decrease cpu usage *todo* */
256    #define XVID_DEC_PREROLL   (1<<31) /* decode as fast as you can, don't even show output *todo* */
257    
258  typedef struct {  typedef struct {
259          int version;          int version;
# Line 258  Line 261 
261          void *bitstream;     /* [in]     bitstream (read from)*/          void *bitstream;     /* [in]     bitstream (read from)*/
262          int length;          /* [in]     bitstream length */          int length;          /* [in]     bitstream length */
263          xvid_image_t output; /* [in]     output image (written to) */          xvid_image_t output; /* [in]     output image (written to) */
264  /* ------- v1.1.0 ------- */  /* ------- v1.1.x ------- */
265          int brightness;          /* [in]         brightness offset (0=none) */          int brightness;          /* [in]         brightness offset (0=none) */
266  } xvid_dec_frame_t;  } xvid_dec_frame_t;
267    
# Line 503  Line 506 
506  typedef struct {  typedef struct {
507          int version;          int version;
508    
509          int bitrate;                  /* [in] bits per second */          int bitrate;                  /* [in] target bitrate (bits per second) */
510          char * filename;              /* [in] first pass stats filename */          char * filename;              /* [in] first pass stats filename */
511    
512          int keyframe_boost;           /* [in] keyframe boost percentage: [0..100] */          int keyframe_boost;           /* [in] keyframe boost percentage: [0..100] */
# Line 520  Line 523 
523                                                                     *      0 for 1<distance<kfthreshold */                                                                     *      0 for 1<distance<kfthreshold */
524    
525          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 */
526    
527    /* ------- v1.1.x ------- */
528            int vbv_size;                 /* [in] buffer size (bits) */
529            int vbv_initial;              /* [in] initial buffer occupancy (bits) */
530            int vbv_maxrate;              /* [in] max processing bitrate (bits per second) */
531            int vbv_peakrate;             /* [in:opt] max average bitrate over 3 seconds (bits per second) */
532    
533  }xvid_plugin_2pass2_t;  }xvid_plugin_2pass2_t;
534    
535  /*****************************************************************************  /*****************************************************************************
# Line 581  Line 591 
591  #define XVID_GLOBAL_VOL_AT_IVOP       (1<<3) /* write vol at every ivop: WIN32/divx compatibility */  #define XVID_GLOBAL_VOL_AT_IVOP       (1<<3) /* write vol at every ivop: WIN32/divx compatibility */
592  #define XVID_GLOBAL_FORCE_VOL         (1<<4) /* when vol-based parameters are changed, insert an ivop NOT recommended */  #define XVID_GLOBAL_FORCE_VOL         (1<<4) /* when vol-based parameters are changed, insert an ivop NOT recommended */
593  #endif  #endif
594    #define XVID_GLOBAL_DIVX5_USERDATA    (1<<5) /* write divx5 userdata string
595                                                    this is implied if XVID_GLOBAL_PACKED is set */
596    
597  /*----------------------------------------------------------------------------  /*----------------------------------------------------------------------------
598   * "VOL" flags   * "VOL" flags
# Line 595  Line 606 
606  #define XVID_VOL_QUARTERPEL     (1<<2) /* enable quarterpel: frames will encoded as quarterpel */  #define XVID_VOL_QUARTERPEL     (1<<2) /* enable quarterpel: frames will encoded as quarterpel */
607  #define XVID_VOL_GMC            (1<<3) /* enable GMC; frames will be checked for gmc suitability */  #define XVID_VOL_GMC            (1<<3) /* enable GMC; frames will be checked for gmc suitability */
608  #define XVID_VOL_REDUCED_ENABLE (1<<4) /* enable reduced resolution vops: frames will be checked for rrv suitability */  #define XVID_VOL_REDUCED_ENABLE (1<<4) /* enable reduced resolution vops: frames will be checked for rrv suitability */
609                                                                               /* NOTE:  the reduced resolution feature is not supported anymore. This flag will have no effect! */
610  #define XVID_VOL_INTERLACING    (1<<5) /* enable interlaced encoding */  #define XVID_VOL_INTERLACING    (1<<5) /* enable interlaced encoding */
611    
612    
# Line 616  Line 628 
628  #define XVID_VOP_HQACPRED             (1<< 7) /* high quality ac prediction */  #define XVID_VOP_HQACPRED             (1<< 7) /* high quality ac prediction */
629  #define XVID_VOP_MODEDECISION_RD      (1<< 8) /* enable DCT-ME and use it for mode decision */  #define XVID_VOP_MODEDECISION_RD      (1<< 8) /* enable DCT-ME and use it for mode decision */
630  #define XVID_VOP_FAST_MODEDECISION_RD (1<<12) /* use simplified R-D mode decision */  #define XVID_VOP_FAST_MODEDECISION_RD (1<<12) /* use simplified R-D mode decision */
631    #define XVID_VOP_RD_BVOP              (1<<13) /* enable rate-distortion mode decision in b-frames */
632    
633  /* Only valid for vol_flags|=XVID_VOL_INTERLACING */  /* Only valid for vol_flags|=XVID_VOL_INTERLACING */
634  #define XVID_VOP_TOPFIELDFIRST        (1<< 9) /* set top-field-first flag  */  #define XVID_VOP_TOPFIELDFIRST        (1<< 9) /* set top-field-first flag  */
# Line 623  Line 636 
636    
637  /* only valid for vol_flags|=XVID_VOL_REDUCED_ENABLED */  /* only valid for vol_flags|=XVID_VOL_REDUCED_ENABLED */
638  #define XVID_VOP_REDUCED              (1<<11) /* reduced resolution vop */  #define XVID_VOP_REDUCED              (1<<11) /* reduced resolution vop */
639                                                                                              /* NOTE: reduced resolution feature is not supported anymore. This flag will have no effect! */
640    
641  /*----------------------------------------------------------------------------  /*----------------------------------------------------------------------------
642   * "Motion" flags   * "Motion" flags

Legend:
Removed from v.1.36  
changed lines
  Added in v.1.51.2.2

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