comparison avcodec.h @ 556:762c67fd4078 libavcodec

uvlinesize export has_b_frames mb_skip with more than 2 ip buffers
author michaelni
date Mon, 15 Jul 2002 14:15:10 +0000
parents 18ad513d92fe
children b0f52172f4c5
comparison
equal deleted inserted replaced
555:fe951e388d34 556:762c67fd4078
3 3
4 #include "common.h" 4 #include "common.h"
5 5
6 #define LIBAVCODEC_VERSION_INT 0x000406 6 #define LIBAVCODEC_VERSION_INT 0x000406
7 #define LIBAVCODEC_VERSION "0.4.6" 7 #define LIBAVCODEC_VERSION "0.4.6"
8 #define LIBAVCODEC_BUILD 4616 8 #define LIBAVCODEC_BUILD 4617
9 #define LIBAVCODEC_BUILD_STR "4616" 9 #define LIBAVCODEC_BUILD_STR "4617"
10 10
11 enum CodecID { 11 enum CodecID {
12 CODEC_ID_NONE, 12 CODEC_ID_NONE,
13 CODEC_ID_MPEG1VIDEO, 13 CODEC_ID_MPEG1VIDEO,
14 CODEC_ID_H263, 14 CODEC_ID_H263,
256 unsigned qstride; 256 unsigned qstride;
257 257
258 uint8_t *dr_buffer[3]; 258 uint8_t *dr_buffer[3];
259 int dr_stride; 259 int dr_stride;
260 void *dr_opaque_frame; 260 void *dr_opaque_frame;
261 void (*get_buffer_callback)(struct AVCodecContext *c, int width, int height, int pict_type); 261 void (*get_buffer_callback)(struct AVCodecContext *c, int width, int height, int pict_type);
262
263 int has_b_frames; // is 1 if the decoded stream contains b frames
264 int dr_uvstride;
265 int dr_ip_buffer_count;
262 266
263 //FIXME this should be reordered after kabis API is finished ... 267 //FIXME this should be reordered after kabis API is finished ...
264 /* 268 /*
265 Note: Below are located reserved fields for further usage 269 Note: Below are located reserved fields for further usage
266 It requires for ABI !!! 270 It requires for ABI !!!
280 *ptr_res6; 284 *ptr_res6;
281 unsigned long int 285 unsigned long int
282 ul_res0,ul_res1,ul_res2,ul_res3,ul_res4,ul_res5, 286 ul_res0,ul_res1,ul_res2,ul_res3,ul_res4,ul_res5,
283 ul_res6,ul_res7,ul_res8,ul_res9,ul_res10,ul_res11,ul_res12; 287 ul_res6,ul_res7,ul_res8,ul_res9,ul_res10,ul_res11,ul_res12;
284 unsigned int 288 unsigned int
285 ui_res0,ui_res1,ui_res2,ui_res3,ui_res4,ui_res5; 289 ui_res0,ui_res1,ui_res2;
286 unsigned short int 290 unsigned short int
287 us_res0,us_res1,us_res2,us_res3,us_res4,us_res5, 291 us_res0,us_res1,us_res2,us_res3,us_res4,us_res5,
288 us_res6,us_res7,us_res8,us_res9,us_res10,us_res11,us_res12; 292 us_res6,us_res7,us_res8,us_res9,us_res10,us_res11,us_res12;
289 unsigned char 293 unsigned char
290 uc_res0,uc_res1,uc_res2,uc_res3,uc_res4,uc_res5, 294 uc_res0,uc_res1,uc_res2,uc_res3,uc_res4,uc_res5,
291 uc_res6,uc_res7,uc_res8,uc_res9,uc_res10,uc_res11,uc_res12; 295 uc_res6,uc_res7,uc_res8,uc_res9,uc_res10,uc_res11,uc_res12;
292 } AVCodecContext; 296 } AVCodecContext;
293 297
294 typedef struct AVCodec { 298 typedef struct AVCodec {
295 char *name; 299 char *name;
296 int type; 300 int type;
297 int id; 301 int id;
298 int priv_data_size; 302 int priv_data_size;
299 int (*init)(AVCodecContext *); 303 int (*init)(AVCodecContext *);
300 int (*encode)(AVCodecContext *, UINT8 *buf, int buf_size, void *data); 304 int (*encode)(AVCodecContext *, UINT8 *buf, int buf_size, void *data);
301 int (*close)(AVCodecContext *); 305 int (*close)(AVCodecContext *);
302 int (*decode)(AVCodecContext *, void *outdata, int *outdata_size, 306 int (*decode)(AVCodecContext *, void *outdata, int *outdata_size,
303 UINT8 *buf, int buf_size); 307 UINT8 *buf, int buf_size);
304 int capabilities; 308 int capabilities;
305 struct AVCodec *next; 309 struct AVCodec *next;
306 /* 310 /*
307 Note: Below are located reserved fields for further usage 311 Note: Below are located reserved fields for further usage