--- trunk/vfw/src/xvid.h 2002/07/12 12:26:55 295 +++ trunk/vfw/src/xvid.h 2002/08/01 12:56:29 355 @@ -37,7 +37,7 @@ * ToDo ? : when BFRAMES is defined, the API_VERSION should not * be the same (3.0 ?) * -* $Id: xvid.h,v 1.6 2002-07-12 12:26:55 suxen_drol Exp $ +* $Id: xvid.h,v 1.8 2002-08-01 12:56:28 chl Exp $ * *****************************************************************************/ @@ -73,6 +73,7 @@ #define XVID_CSP_RGB555 10 #define XVID_CSP_RGB565 11 #define XVID_CSP_USER 12 +#define XVID_CSP_EXTERN 1004 // per slice rendering #define XVID_CSP_YVYU 1002 #define XVID_CSP_RGB32 1000 #define XVID_CSP_NULL 9999 @@ -156,6 +157,14 @@ XVID_DEC_FRAME; + // This struct is used for per slice rendering + typedef struct + { + void *y,*u,*v; + int stride_y, stride_u,stride_v; + } XVID_DEC_PICTURE; + + /***************************************************************************** * Decoder entry point ****************************************************************************/ @@ -207,6 +216,10 @@ #define XVID_ME_EPZS 0x00100000 +#define XVID_GREYSCALE 0x01000000 /* enable greyscale only mode (even for */ +#define XVID_GRAYSCALE 0x01000000 /* color input material chroma is ignored) */ + + /* Flags for XVID_ENC_FRAME.motion */ #define PMV_ADVANCEDDIAMOND8 0x00004000 #define PMV_ADVANCEDDIAMOND16 0x00008000 @@ -256,6 +269,7 @@ * eg. 200 = x2 multiplier * 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 */ }