aboutsummaryrefslogtreecommitdiffstats
path: root/libavcodec/mpegvideo.h
diff options
context:
space:
mode:
authorMichael Niedermayer <michaelni@gmx.at>2003-10-07 11:32:40 +0000
committerMichael Niedermayer <michaelni@gmx.at>2003-10-07 11:32:40 +0000
commit158c7f059c3906b0116ae73a7669a3bb7bc570bb (patch)
tree1dbb85c2164bec440148a818aeafd6c6197b80c6 /libavcodec/mpegvideo.h
parent72385798357e53f64ba5ac405fb1b227ddcffc6c (diff)
downloadffmpeg-158c7f059c3906b0116ae73a7669a3bb7bc570bb.tar.gz
use lagrange multipler instead of qp for ratecontrol, this may break some things, tell me ASAP if u notice anything broken
quality which was 1..31 float is now a 1..FF_LAMBDA_MAX int, and FF_QP2LAMBDA * qp can be used to convert to the new range Originally committed as revision 2348 to svn://svn.ffmpeg.org/ffmpeg/trunk
Diffstat (limited to 'libavcodec/mpegvideo.h')
-rw-r--r--libavcodec/mpegvideo.h4
1 files changed, 3 insertions, 1 deletions
diff --git a/libavcodec/mpegvideo.h b/libavcodec/mpegvideo.h
index d46d4b6a97..f1813f7568 100644
--- a/libavcodec/mpegvideo.h
+++ b/libavcodec/mpegvideo.h
@@ -354,7 +354,9 @@ typedef struct MpegEncContext {
uint8_t *edge_emu_buffer; ///< points into the middle of allocated_edge_emu_buffer
int qscale; ///< QP
- float frame_qscale; ///< qscale from the frame level rc FIXME remove
+ int lambda; ///< lagrange multipler used in rate distortion
+ int lambda2; ///< (lambda*lambda) >> FF_LAMBDA_SHIFT
+ int *lambda_table;
int adaptive_quant; ///< use adaptive quantization
int dquant; ///< qscale difference to prev qscale
int pict_type; ///< I_TYPE, P_TYPE, B_TYPE, ...