--- xvid.h 2003/12/27 10:50:50 1.27.2.61 +++ xvid.h 2004/05/21 14:40:15 1.39 @@ -3,7 +3,7 @@ * XVID MPEG-4 VIDEO CODEC * - XviD Main header file - * - * Copyright(C) 2001-2003 Peter Ross + * Copyright(C) 2001-2004 Peter Ross * * This program is free software ; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -19,7 +19,7 @@ * along with this program ; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA * - * $Id: xvid.h,v 1.27.2.61 2003/12/27 10:50:50 edgomez Exp $ + * $Id: xvid.h,v 1.39 2004/05/21 14:40:15 edgomez Exp $ * ****************************************************************************/ @@ -57,7 +57,7 @@ #define XVID_API_MAJOR(a) (((a)>>16) & 0xff) #define XVID_API_MINOR(a) (((a)>> 0) & 0xff) -#define XVID_VERSION XVID_MAKE_VERSION(1,0,-126) +#define XVID_VERSION XVID_MAKE_VERSION(1,1,-127) #define XVID_API XVID_MAKE_API(4, 0) #define XVID_UNSTABLE @@ -73,8 +73,7 @@ * doesnt hurt but not increasing it could cause difficulty for decoders in the * future */ -#define XVID_BS_VERSION "0025" - +#define XVID_BS_VERSION 34 /***************************************************************************** * error codes @@ -96,7 +95,8 @@ /* colorspace values */ -#define XVID_CSP_USER (1<< 0) /* 4:2:0 planar (==I420, except for pointers/strides) */ +#define XVID_CSP_PLANAR (1<< 0) /* 4:2:0 planar (==I420, except for pointers/strides) */ +#define XVID_CSP_USER XVID_CSP_PLANAR #define XVID_CSP_I420 (1<< 1) /* 4:2:0 planar */ #define XVID_CSP_YV12 (1<< 2) /* 4:2:0 planar */ #define XVID_CSP_YUY2 (1<< 3) /* 4:2:2 packed */ @@ -250,6 +250,12 @@ #define XVID_DEBLOCKY (1<<2) /* perform luma deblocking */ #define XVID_DEBLOCKUV (1<<3) /* perform chroma deblocking */ #define XVID_FILMEFFECT (1<<4) /* adds film grain */ +#define XVID_DERINGUV (1<<5) /* perform chroma deringing, requires deblocking to work */ +#define XVID_DERINGY (1<<6) /* perform luma deringing, requires deblocking to work */ + +#define XVID_DEC_FAST (1<<29) /* disable postprocessing to decrease cpu usage *todo* */ +#define XVID_DEC_DROP (1<<30) /* drop bframes to decrease cpu usage *todo* */ +#define XVID_DEC_PREROLL (1<<31) /* decode as fast as you can, don't even show output *todo* */ typedef struct { int version; @@ -257,6 +263,8 @@ void *bitstream; /* [in] bitstream (read from)*/ int length; /* [in] bitstream length */ xvid_image_t output; /* [in] output image (written to) */ +/* ------- v1.1.0 ------- */ + int brightness; /* [in] brightness offset (0=none) */ } xvid_dec_frame_t; @@ -645,11 +653,11 @@ #define XVID_ME_EXTSEARCH8 (1<<11) /* use diamond/square for extended 8x8 search */ #define XVID_ME_CHROMA_PVOP (1<<12) /* also use chroma for P_VOP/S_VOP ME */ #define XVID_ME_CHROMA_BVOP (1<<13) /* also use chroma for B_VOP ME */ -#define XVID_ME_FASTREFINE16 (1<<25) /* use low-complexity refinement functions */ +#define XVID_ME_FASTREFINE16 (1<<25) /* use low-complexity refinement functions */ #define XVID_ME_FASTREFINE8 (1<<29) /* low-complexity 8x8 sub-block refinement */ /* Rate Distortion based flags - * Valid when XVID_VOP_MODEDECISION_BITS is enabled */ + * Valid when XVID_VOP_MODEDECISION_RD is enabled */ #define XVID_ME_HALFPELREFINE16_RD (1<<14) /* perform RD-based halfpel refinement */ #define XVID_ME_HALFPELREFINE8_RD (1<<15) /* perform RD-based halfpel refinement for 8x8 mode */ #define XVID_ME_QUARTERPELREFINE16_RD (1<<16) /* perform RD-based qpel refinement */