--- trunk/xvidcore/src/xvid.h 2008/11/26 02:36:37 1800 +++ trunk/xvidcore/src/xvid.h 2010/08/10 14:17:40 1890 @@ -1,7 +1,7 @@ /***************************************************************************** * * XVID MPEG-4 VIDEO CODEC - * - XviD Main header file - + * - Xvid Main header file - * * Copyright(C) 2001-2004 Peter Ross * @@ -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.62 2008-11-26 02:36:37 Isibaar Exp $ + * $Id: xvid.h,v 1.67 2010-08-10 14:17:23 Isibaar Exp $ * ****************************************************************************/ @@ -57,8 +57,8 @@ #define XVID_API_MAJOR(a) (((a)>>16) & 0xff) #define XVID_API_MINOR(a) (((a)>> 0) & 0xff) -#define XVID_VERSION XVID_MAKE_VERSION(1,2,-127) -#define XVID_API XVID_MAKE_API(4, 1) +#define XVID_VERSION XVID_MAKE_VERSION(1,3,-127) +#define XVID_API XVID_MAKE_API(4, 3) #define XVID_UNSTABLE @@ -73,7 +73,7 @@ * doesnt hurt but not increasing it could cause difficulty for decoders in the * future */ -#define XVID_BS_VERSION 48 +#define XVID_BS_VERSION 57 /***************************************************************************** * error codes @@ -236,13 +236,14 @@ extern int xvid_decore(void *handle, int opt, void *param1, void *param2); /* XVID_DEC_CREATE param 1 - image width & height may be specified here when the dimensions are - known in advance. */ + image width & height as well as FourCC code may be specified + here when known in advance (e.g. being read from container) */ typedef struct { int version; - int width; /* [in:opt] image width */ - int height; /* [in:opt] image width */ - void * handle; /* [out] decore context handle */ + int width; /* [in:opt] image width */ + int height; /* [in:opt] image width */ + void * handle; /* [out] decore context handle */ + int fourcc; /* [in:opt] fourcc of the video */ } xvid_dec_create_t; @@ -555,8 +556,16 @@ /*accuracy 0 very accurate 4 very fast*/ int acc; + int cpu_flags; /* XVID_CPU_XXX flags */ + } xvid_plugin_ssim_t; +typedef struct { + int version; + + int method; /* [in] masking method to apply. 0 for luminance masking, 1 for variance masking */ +} xvid_plugin_lumimasking_t; + /***************************************************************************** * ENCODER API ****************************************************************************/ @@ -754,6 +763,9 @@ /* ---------------------------------------------- */ void *handle; /* [out] encoder instance handle */ + + /* ------- v1.3.x ------- */ + int start_frame_num; /* [in:opt] frame number of start frame relative to zones definitions. allows to encode sub-sequences */ } xvid_enc_create_t;