--- xvid.h 2002/10/06 07:05:50 1.17.2.2 +++ xvid.h 2002/11/02 16:08:14 1.17.2.7 @@ -28,7 +28,7 @@ * ToDo ? : when BFRAMES is defined, the API_VERSION should not * be the same (3.0 ?) * -* $Id: xvid.h,v 1.17.2.2 2002/10/06 07:05:50 suxen_drol Exp $ +* $Id: xvid.h,v 1.17.2.7 2002/11/02 16:08:14 chl Exp $ * *****************************************************************************/ @@ -47,6 +47,19 @@ /* API Version : 2.1 */ #define API_VERSION ((2 << 16) | (1)) +/* Bitstream Version + * this will be writen into the bitstream to allow easy detection of xvid + * encoder bugs in the decoder, without this it might not possible to + * automatically distinquish between a file which has been encoded with an + * old & buggy XVID from a file which has been encoded with a bugfree version + * see the infamous interlacing bug ... + * + * this MUST be increased if an encoder bug is fixed, increasing it too often + * doesnt hurt but not increasing it could cause difficulty for decoders in the + * future + */ +#define XVID_BS_VERSION "0003" + /* Error codes */ #define XVID_ERR_FAIL -1 @@ -216,6 +229,7 @@ #define XVID_GREYSCALE 0x01000000 /* enable greyscale only mode (even for */ #define XVID_GRAYSCALE 0x01000000 /* color input material chroma is ignored) */ +#define XVID_GMC 0x20000000 /* Flags for XVID_ENC_FRAME.motion */ #define PMV_ADVANCEDDIAMOND8 0x00004000 @@ -258,7 +272,6 @@ #ifdef _SMP int num_threads; /* number of threads */ #endif -#ifdef BFRAMES int global; /* global/debug options */ int max_bframes; /* max sequential bframes (0=disable bframes) */ int bquant_ratio; /* bframe quantizer multipier (percentage). @@ -267,7 +280,6 @@ * quant = ((past_quant + future_quant) * bquant_ratio)/200 */ int frame_drop_ratio; /* frame dropping: 0=drop none... 100=drop all */ -#endif void *handle; /* [out] encoder instance handle */ } XVID_ENC_PARAM; @@ -322,9 +334,7 @@ */ HINTINFO hint; /* [in/out] mv hint information */ -#ifdef BFRAMES int bquant; /* [in] bframe quantizer */ -#endif } XVID_ENC_FRAME;