diff options
author | Michael Niedermayer <michaelni@gmx.at> | 2003-01-15 18:05:23 +0000 |
---|---|---|
committer | Michael Niedermayer <michaelni@gmx.at> | 2003-01-15 18:05:23 +0000 |
commit | 3a87ac948f0cd95218e62d5a98b8b8d5e4c11366 (patch) | |
tree | dd38bc234a7063a95908cad07144019af0c2d670 /libavcodec/motion_est.c | |
parent | aaa1e4cd48968131fa02d470f61a7aef7ddc7eea (diff) | |
download | ffmpeg-3a87ac948f0cd95218e62d5a98b8b8d5e4c11366.tar.gz |
more compare functions (rd & bit)
Originally committed as revision 1461 to svn://svn.ffmpeg.org/ffmpeg/trunk
Diffstat (limited to 'libavcodec/motion_est.c')
-rw-r--r-- | libavcodec/motion_est.c | 15 |
1 files changed, 13 insertions, 2 deletions
diff --git a/libavcodec/motion_est.c b/libavcodec/motion_est.c index 8310db8d5a..4dcc08d596 100644 --- a/libavcodec/motion_est.c +++ b/libavcodec/motion_est.c @@ -286,6 +286,14 @@ static void set_cmp(MpegEncContext *s, me_cmp_func *cmp, int type){ cmp[0]= c->quant_psnr[0]; cmp[1]= c->quant_psnr[1]; break; + case FF_CMP_BIT: + cmp[0]= c->bit[0]; + cmp[1]= c->bit[1]; + break; + case FF_CMP_RD: + cmp[0]= c->rd[0]; + cmp[1]= c->rd[1]; + break; case FF_CMP_ZERO: for(i=0; i<7; i++){ cmp[i]= zero_cmp; @@ -302,11 +310,14 @@ static inline int get_penalty_factor(MpegEncContext *s, int type){ default: case FF_CMP_SAD: return s->qscale; - case FF_CMP_SSE: -// return s->qscale*8; case FF_CMP_DCT: case FF_CMP_SATD: + case FF_CMP_SSE: return s->qscale*8; + case FF_CMP_BIT: + return 1; + case FF_CMP_RD: + return (s->qscale*s->qscale*105 + 64)>>7; } } |