# HG changeset patch # User rtognimp # Date 1068240024 0 # Node ID a1ac8e675b95235fee6bd4a076c658bcae50e266 # Parent 2fb583cb00134a73b1479a72d62d0d884f068cfa Add cr codec capability and buffer hints diff -r 2fb583cb0013 -r a1ac8e675b95 avcodec.h --- a/avcodec.h Thu Nov 06 22:05:22 2003 +0000 +++ b/avcodec.h Fri Nov 07 21:20:24 2003 +0000 @@ -16,7 +16,7 @@ #define FFMPEG_VERSION_INT 0x000408 #define FFMPEG_VERSION "0.4.8" -#define LIBAVCODEC_BUILD 4690 +#define LIBAVCODEC_BUILD 4691 #define LIBAVCODEC_VERSION_INT FFMPEG_VERSION_INT #define LIBAVCODEC_VERSION FFMPEG_VERSION @@ -275,6 +275,10 @@ used */ #define CODEC_CAP_PARSE_ONLY 0x0004 #define CODEC_CAP_TRUNCATED 0x0008 +/* + * Codec can use conditional replenishment if available. + */ +#define CODEC_CAP_CR 0x0010 /** * Pan Scan area. @@ -460,6 +464,13 @@ * - decoding: set by lavc (default 0)\ */\ int palette_has_changed;\ + \ + /**\ + * Codec suggestion on buffer type if != 0\ + * - encoding: unused\ + * - decoding: set by lavc (before get_buffer() call))\ + */\ + int buffer_hints;\ #define FF_QSCALE_TYPE_MPEG1 0 #define FF_QSCALE_TYPE_MPEG2 1 @@ -477,6 +488,11 @@ #define FF_SI_TYPE 5 #define FF_SP_TYPE 6 +#define FF_BUFFER_HINTS_VALID 0x01 // Buffer hints value is meaningful (if 0 ignore) +#define FF_BUFFER_HINTS_READABLE 0x02 // Codec will read from buffer +#define FF_BUFFER_HINTS_PRESERVE 0x04 // User must not alter buffer content +#define FF_BUFFER_HINTS_REUSABLE 0x08 // Codec will reuse the buffer (update) + /** * Audio Video Frame. */ @@ -1366,6 +1382,13 @@ */ int noise_reduction; + /** + * Conditional replenishment support + * - encoding: unused + * - decoding: set by user, if 1 user can allocate reusable buffers + */ + int cr_available; + } AVCodecContext; diff -r 2fb583cb0013 -r a1ac8e675b95 utils.c --- a/utils.c Thu Nov 06 22:05:22 2003 +0000 +++ b/utils.c Fri Nov 07 21:20:24 2003 +0000 @@ -326,6 +326,7 @@ s->intra_quant_bias= FF_DEFAULT_QUANT_BIAS; s->inter_quant_bias= FF_DEFAULT_QUANT_BIAS; s->palctrl = NULL; + s->cr_available = 0; } /**