Mercurial > libavcodec.hg
diff msmpeg4.c @ 347:3c5266cda02d libavcodec
fixing msmpeg4v3 dc-scale for quantizers 24-31
author | michaelni |
---|---|
date | Tue, 30 Apr 2002 01:29:29 +0000 |
parents | ac677a84d5df |
children | fce0a2520551 |
line wrap: on
line diff
--- a/msmpeg4.c Sat Apr 27 14:10:47 2002 +0000 +++ b/msmpeg4.c Tue Apr 30 01:29:29 2002 +0000 @@ -411,7 +411,8 @@ } -/* strongly inspirated from MPEG4, but not exactly the same ! */ +#if 0 +/* identical to mpeg4 for msmpeg4v3 but not msmpeg4v2 */ void msmpeg4_dc_scale(MpegEncContext * s) { if (s->qscale < 5 || s->msmpeg4_version==2){ @@ -420,11 +421,15 @@ }else if (s->qscale < 9){ s->y_dc_scale = 2 * s->qscale; s->c_dc_scale = (s->qscale + 13)>>1; - }else{ + }else if(s->qscale < 25){ s->y_dc_scale = s->qscale + 8; s->c_dc_scale = (s->qscale + 13)>>1; + }else{ + s->y_dc_scale = 2 * s->qscale - 16; + s->c_dc_scale = s->qscale - 6; } } +#endif /* dir = 0: left, dir = 1: top prediction */ static int msmpeg4_pred_dc(MpegEncContext * s, int n,