19 |
* along with this program ; if not, write to the Free Software |
* along with this program ; if not, write to the Free Software |
20 |
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA |
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA |
21 |
* |
* |
22 |
* $Id: xvid.h,v 1.27.2.55 2003-12-18 02:02:08 Isibaar Exp $ |
* $Id: xvid.h,v 1.27.2.64 2004-01-30 18:53:50 chl Exp $ |
23 |
* |
* |
24 |
****************************************************************************/ |
****************************************************************************/ |
25 |
|
|
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,0,-126) |
#define XVID_VERSION XVID_MAKE_VERSION(1,0,-125) |
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 |
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 "0024" |
#define XVID_BS_VERSION "0027" |
77 |
|
|
78 |
|
|
79 |
/***************************************************************************** |
/***************************************************************************** |
96 |
|
|
97 |
/* colorspace values */ |
/* colorspace values */ |
98 |
|
|
99 |
#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) */ |
100 |
|
#define XVID_CSP_USER XVID_CSP_PLANAR |
101 |
#define XVID_CSP_I420 (1<< 1) /* 4:2:0 planar */ |
#define XVID_CSP_I420 (1<< 1) /* 4:2:0 planar */ |
102 |
#define XVID_CSP_YV12 (1<< 2) /* 4:2:0 planar */ |
#define XVID_CSP_YV12 (1<< 2) /* 4:2:0 planar */ |
103 |
#define XVID_CSP_YUY2 (1<< 3) /* 4:2:2 packed */ |
#define XVID_CSP_YUY2 (1<< 3) /* 4:2:2 packed */ |
106 |
#define XVID_CSP_BGRA (1<< 6) /* 32-bit bgra packed */ |
#define XVID_CSP_BGRA (1<< 6) /* 32-bit bgra packed */ |
107 |
#define XVID_CSP_ABGR (1<< 7) /* 32-bit abgr packed */ |
#define XVID_CSP_ABGR (1<< 7) /* 32-bit abgr packed */ |
108 |
#define XVID_CSP_RGBA (1<< 8) /* 32-bit rgba packed */ |
#define XVID_CSP_RGBA (1<< 8) /* 32-bit rgba packed */ |
109 |
|
#define XVID_CSP_ARGB (1<<15) /* 32-bit argb packed */ |
110 |
#define XVID_CSP_BGR (1<< 9) /* 24-bit bgr packed */ |
#define XVID_CSP_BGR (1<< 9) /* 24-bit bgr packed */ |
111 |
#define XVID_CSP_RGB555 (1<<10) /* 16-bit rgb555 packed */ |
#define XVID_CSP_RGB555 (1<<10) /* 16-bit rgb555 packed */ |
112 |
#define XVID_CSP_RGB565 (1<<11) /* 16-bit rgb565 packed */ |
#define XVID_CSP_RGB565 (1<<11) /* 16-bit rgb565 packed */ |
647 |
#define XVID_ME_CHROMA_PVOP (1<<12) /* also use chroma for P_VOP/S_VOP ME */ |
#define XVID_ME_CHROMA_PVOP (1<<12) /* also use chroma for P_VOP/S_VOP ME */ |
648 |
#define XVID_ME_CHROMA_BVOP (1<<13) /* also use chroma for B_VOP ME */ |
#define XVID_ME_CHROMA_BVOP (1<<13) /* also use chroma for B_VOP ME */ |
649 |
#define XVID_ME_FASTREFINE16 (1<<25) /* use low-complexity refinement functions */ |
#define XVID_ME_FASTREFINE16 (1<<25) /* use low-complexity refinement functions */ |
650 |
|
#define XVID_ME_FASTREFINE8 (1<<29) /* low-complexity 8x8 sub-block refinement */ |
651 |
|
|
652 |
/* Rate Distortion based flags |
/* Rate Distortion based flags |
653 |
* Valid when XVID_VOP_MODEDECISION_BITS is enabled */ |
* Valid when XVID_VOP_MODEDECISION_RD is enabled */ |
654 |
#define XVID_ME_HALFPELREFINE16_RD (1<<14) /* perform RD-based halfpel refinement */ |
#define XVID_ME_HALFPELREFINE16_RD (1<<14) /* perform RD-based halfpel refinement */ |
655 |
#define XVID_ME_HALFPELREFINE8_RD (1<<15) /* perform RD-based halfpel refinement for 8x8 mode */ |
#define XVID_ME_HALFPELREFINE8_RD (1<<15) /* perform RD-based halfpel refinement for 8x8 mode */ |
656 |
#define XVID_ME_QUARTERPELREFINE16_RD (1<<16) /* perform RD-based qpel refinement */ |
#define XVID_ME_QUARTERPELREFINE16_RD (1<<16) /* perform RD-based qpel refinement */ |
661 |
/* Other */ |
/* Other */ |
662 |
#define XVID_ME_DETECT_STATIC_MOTION (1<<24) /* speed-up ME by detecting stationary scenes */ |
#define XVID_ME_DETECT_STATIC_MOTION (1<<24) /* speed-up ME by detecting stationary scenes */ |
663 |
#define XVID_ME_SKIP_DELTASEARCH (1<<26) /* speed-up by skipping b-frame delta search */ |
#define XVID_ME_SKIP_DELTASEARCH (1<<26) /* speed-up by skipping b-frame delta search */ |
664 |
|
#define XVID_ME_FAST_MODEINTERPOLATE (1<<27) /* speed-up by partly skipping interpolate mode */ |
665 |
|
#define XVID_ME_BFRAME_EARLYSTOP (1<<28) /* speed-up by early exiting b-search */ |
666 |
|
|
667 |
/* Unused */ |
/* Unused */ |
668 |
#define XVID_ME_UNRESTRICTED16 (1<<20) /* unrestricted ME, not implemented */ |
#define XVID_ME_UNRESTRICTED16 (1<<20) /* unrestricted ME, not implemented */ |