Mercurial > libavcodec.hg
diff avcodec.h @ 324:9c6f056f0e41 libavcodec
fixed mpeg4 time stuff on encoding
mpeg4 b-frame enoding support
removed old, out-commented ratecontrol
reuse motion compensation code between encoding & decoding
prefix newly added global functions with ff_ to reduce namespace polution
b-frame ME (unfinished, but working)
added some comments to mpegvideo.h
do MC on encoding only once if possible
bugs? ;)
author | michaelni |
---|---|
date | Wed, 17 Apr 2002 04:32:12 +0000 |
parents | ce35fd27bbb0 |
children | 025825084364 |
line wrap: on
line diff
--- a/avcodec.h Mon Apr 15 12:52:21 2002 +0000 +++ b/avcodec.h Wed Apr 17 04:32:12 2002 +0000 @@ -77,16 +77,20 @@ /* ME algos sorted by quality */ static const int Motion_Est_QTab[] = { 1, 4, 3, 6, 5, 2 }; +#define FF_MAX_B_FRAMES 4 + /* encoding support */ /* note not everything is supported yet */ #define CODEC_FLAG_HQ 0x0001 /* high quality (non real time) encoding */ #define CODEC_FLAG_QSCALE 0x0002 /* use fixed qscale */ #define CODEC_FLAG_4MV 0x0004 /* 4 MV per MB allowed */ -#define CODEC_FLAG_B 0x0008 /* use B frames */ #define CODEC_FLAG_QPEL 0x0010 /* use qpel MC */ #define CODEC_FLAG_GMC 0x0020 /* use GMC */ #define CODEC_FLAG_TYPE 0x0040 /* fixed I/P frame type, from avctx->key_frame */ +/* parent program gurantees that the input for b-frame containing streams is not written to + for at least s->max_b_frames+1 frames, if this is not set than the input will be copied */ +#define CODEC_FLAG_INPUT_PRESERVED 0x0100 /* codec capabilities */ @@ -141,7 +145,8 @@ int qmin; /* min qscale */ int qmax; /* max qscale */ int max_qdiff; /* max qscale difference between frames */ - + int max_b_frames; /* maximum b frames, the output will be delayed by max_b_frames+1 relative to the input */ + struct AVCodec *codec; void *priv_data;