Mercurial > libavcodec.hg
comparison avcodec.h @ 460:2ae7a98300b7 libavcodec
single coefficient elimination
error concealment / error resilience
b_quant_offset (unfinished, should be 0 for now)
| author | michaelni |
|---|---|
| date | Sun, 02 Jun 2002 12:25:54 +0000 |
| parents | 5c8b3a717929 |
| children | 805714c0c10f |
comparison
equal
deleted
inserted
replaced
| 459:295ce90742ff | 460:2ae7a98300b7 |
|---|---|
| 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 4610 | 8 #define LIBAVCODEC_BUILD 4611 |
| 9 #define LIBAVCODEC_BUILD_STR "4610" | 9 #define LIBAVCODEC_BUILD_STR "4611" |
| 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, |
| 88 #define CODEC_FLAG_QSCALE 0x0002 /* use fixed qscale */ | 88 #define CODEC_FLAG_QSCALE 0x0002 /* use fixed qscale */ |
| 89 #define CODEC_FLAG_4MV 0x0004 /* 4 MV per MB allowed */ | 89 #define CODEC_FLAG_4MV 0x0004 /* 4 MV per MB allowed */ |
| 90 #define CODEC_FLAG_QPEL 0x0010 /* use qpel MC */ | 90 #define CODEC_FLAG_QPEL 0x0010 /* use qpel MC */ |
| 91 #define CODEC_FLAG_GMC 0x0020 /* use GMC */ | 91 #define CODEC_FLAG_GMC 0x0020 /* use GMC */ |
| 92 #define CODEC_FLAG_TYPE 0x0040 /* fixed I/P frame type, from avctx->key_frame */ | 92 #define CODEC_FLAG_TYPE 0x0040 /* fixed I/P frame type, from avctx->key_frame */ |
| 93 #define CODEC_FLAG_PART 0x0080 /* use data partitioning */ | |
| 93 /* parent program gurantees that the input for b-frame containing streams is not written to | 94 /* parent program gurantees that the input for b-frame containing streams is not written to |
| 94 for at least s->max_b_frames+1 frames, if this is not set than the input will be copied */ | 95 for at least s->max_b_frames+1 frames, if this is not set than the input will be copied */ |
| 95 #define CODEC_FLAG_INPUT_PRESERVED 0x0100 | 96 #define CODEC_FLAG_INPUT_PRESERVED 0x0100 |
| 96 #define CODEC_FLAG_PASS1 0x0200 /* use internal 2pass ratecontrol in first pass mode */ | 97 #define CODEC_FLAG_PASS1 0x0200 /* use internal 2pass ratecontrol in first pass mode */ |
| 97 #define CODEC_FLAG_PASS2 0x0400 /* use internal 2pass ratecontrol in second pass mode */ | 98 #define CODEC_FLAG_PASS2 0x0400 /* use internal 2pass ratecontrol in second pass mode */ |
| 186 | 187 |
| 187 struct AVCodec *codec; | 188 struct AVCodec *codec; |
| 188 void *priv_data; | 189 void *priv_data; |
| 189 | 190 |
| 190 /* The following data is for RTP friendly coding */ | 191 /* The following data is for RTP friendly coding */ |
| 191 /* By now only H.263/H.263+ coder honours this */ | 192 /* By now only H.263/H.263+/MPEG4 coder honours this */ |
| 192 int rtp_mode; /* 1 for activate RTP friendly-mode */ | 193 int rtp_mode; /* 1 for activate RTP friendly-mode */ |
| 193 /* highers numbers represent more error-prone */ | 194 /* highers numbers represent more error-prone */ |
| 194 /* enviroments, by now just "1" exist */ | 195 /* enviroments, by now just "1" exist */ |
| 195 | 196 |
| 196 int rtp_payload_size; /* The size of the RTP payload, the coder will */ | 197 int rtp_payload_size; /* The size of the RTP payload, the coder will */ |
| 231 enum CodecType codec_type; /* see CODEC_TYPE_xxx */ | 232 enum CodecType codec_type; /* see CODEC_TYPE_xxx */ |
| 232 enum CodecID codec_id; /* see CODEC_ID_xxx */ | 233 enum CodecID codec_id; /* see CODEC_ID_xxx */ |
| 233 unsigned int codec_tag; /* codec tag, only used if unknown codec */ | 234 unsigned int codec_tag; /* codec tag, only used if unknown codec */ |
| 234 | 235 |
| 235 int workaround_bugs; /* workaround bugs in encoders which cannot be detected automatically */ | 236 int workaround_bugs; /* workaround bugs in encoders which cannot be detected automatically */ |
| 237 int luma_elim_threshold; | |
| 238 int chroma_elim_threshold; | |
| 239 int strict_std_compliance; /* strictly follow the std (MPEG4, ...) */ | |
| 240 float b_quant_offset;/* qscale offset between ips and b frames, not implemented yet */ | |
| 241 int error_resilience; | |
| 242 | |
| 243 //FIXME this should be reordered after kabis API is finished ... | |
| 236 /* | 244 /* |
| 237 Note: Below are located reserved fields for further usage | 245 Note: Below are located reserved fields for further usage |
| 238 It requires for ABI !!! | 246 It requires for ABI !!! |
| 239 If you'll perform some changes then borrow new space from these fields | 247 If you'll perform some changes then borrow new space from these fields |
| 240 (void * can be safety replaced with struct * ;) | 248 (void * can be safety replaced with struct * ;) |
| 244 unsigned long long int | 252 unsigned long long int |
| 245 ull_res0,ull_res1,ull_res2,ull_res3,ull_res4,ull_res5, | 253 ull_res0,ull_res1,ull_res2,ull_res3,ull_res4,ull_res5, |
| 246 ull_res6,ull_res7,ull_res8,ull_res9,ull_res10,ull_res11,ull_res12; | 254 ull_res6,ull_res7,ull_res8,ull_res9,ull_res10,ull_res11,ull_res12; |
| 247 float | 255 float |
| 248 flt_res0,flt_res1,flt_res2,flt_res3,flt_res4,flt_res5, | 256 flt_res0,flt_res1,flt_res2,flt_res3,flt_res4,flt_res5, |
| 249 flt_res6,flt_res7,flt_res8,flt_res9,flt_res10,flt_res11,flt_res12; | 257 flt_res6,flt_res7,flt_res8,flt_res9,flt_res10,flt_res11; |
| 250 void | 258 void |
| 251 *ptr_res0,*ptr_res1,*ptr_res2,*ptr_res3,*ptr_res4,*ptr_res5, | 259 *ptr_res0,*ptr_res1,*ptr_res2,*ptr_res3,*ptr_res4,*ptr_res5, |
| 252 *ptr_res6,*ptr_res7,*ptr_res8,*ptr_res9,*ptr_res10,*ptr_res11,*ptr_res12; | 260 *ptr_res6,*ptr_res7,*ptr_res8,*ptr_res9,*ptr_res10,*ptr_res11,*ptr_res12; |
| 253 unsigned long int | 261 unsigned long int |
| 254 ul_res0,ul_res1,ul_res2,ul_res3,ul_res4,ul_res5, | 262 ul_res0,ul_res1,ul_res2,ul_res3,ul_res4,ul_res5, |
| 255 ul_res6,ul_res7,ul_res8,ul_res9,ul_res10,ul_res11,ul_res12; | 263 ul_res6,ul_res7,ul_res8,ul_res9,ul_res10,ul_res11,ul_res12; |
| 256 unsigned int | 264 unsigned int |
| 257 ui_res0,ui_res1,ui_res2,ui_res3,ui_res4,ui_res5, | 265 ui_res0,ui_res1,ui_res2,ui_res3,ui_res4,ui_res5, |
| 258 ui_res6,ui_res7,ui_res8,ui_res9,ui_res10,ui_res11; | 266 ui_res6,ui_res7; |
| 259 unsigned short int | 267 unsigned short int |
| 260 us_res0,us_res1,us_res2,us_res3,us_res4,us_res5, | 268 us_res0,us_res1,us_res2,us_res3,us_res4,us_res5, |
| 261 us_res6,us_res7,us_res8,us_res9,us_res10,us_res11,us_res12; | 269 us_res6,us_res7,us_res8,us_res9,us_res10,us_res11,us_res12; |
| 262 unsigned char | 270 unsigned char |
| 263 uc_res0,uc_res1,uc_res2,uc_res3,uc_res4,uc_res5, | 271 uc_res0,uc_res1,uc_res2,uc_res3,uc_res4,uc_res5, |
