diff options
author | Michael Niedermayer <michaelni@gmx.at> | 2011-12-28 21:46:57 +0100 |
---|---|---|
committer | Michael Niedermayer <michaelni@gmx.at> | 2011-12-28 22:05:24 +0100 |
commit | 7e5cbb3c2d96c27d526aa69cbdbd1ab23739d7e5 (patch) | |
tree | 799ac7d386a8a458b4fd4c3ab12d6a5c5f8886d0 | |
parent | 92e2b59dec8c0124a209ce24f23450df9607d9d8 (diff) | |
download | ffmpeg-7e5cbb3c2d96c27d526aa69cbdbd1ab23739d7e5.tar.gz |
cljrdec: improve scaling somewhat
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
-rw-r--r-- | libavcodec/cljr.c | 8 | ||||
-rw-r--r-- | tests/ref/fate/cljr | 72 | ||||
-rw-r--r-- | tests/ref/vsynth1/cljr | 4 | ||||
-rw-r--r-- | tests/ref/vsynth2/cljr | 4 |
4 files changed, 44 insertions, 44 deletions
diff --git a/libavcodec/cljr.c b/libavcodec/cljr.c index daa13e534a..4027cff4c7 100644 --- a/libavcodec/cljr.c +++ b/libavcodec/cljr.c @@ -87,10 +87,10 @@ static int decode_frame(AVCodecContext *avctx, uint8_t *cb = &a->picture.data[1][y * a->picture.linesize[1]]; uint8_t *cr = &a->picture.data[2][y * a->picture.linesize[2]]; for (x = 0; x < avctx->width; x += 4) { - luma[3] = get_bits(&gb, 5) << 3; - luma[2] = get_bits(&gb, 5) << 3; - luma[1] = get_bits(&gb, 5) << 3; - luma[0] = get_bits(&gb, 5) << 3; + luma[3] = (get_bits(&gb, 5)*33) >> 2; + luma[2] = (get_bits(&gb, 5)*33) >> 2; + luma[1] = (get_bits(&gb, 5)*33) >> 2; + luma[0] = (get_bits(&gb, 5)*33) >> 2; luma += 4; *(cb++) = get_bits(&gb, 6) << 2; *(cr++) = get_bits(&gb, 6) << 2; diff --git a/tests/ref/fate/cljr b/tests/ref/fate/cljr index 7221b9e4e6..208b9511be 100644 --- a/tests/ref/fate/cljr +++ b/tests/ref/fate/cljr @@ -1,36 +1,36 @@ -0, 0, 64800, 0x44a1c47c -0, 3169, 64800, 0x649cc3a4 -0, 6338, 64800, 0xcab1b88c -0, 9507, 64800, 0xf56cb788 -0, 12676, 64800, 0x5336b618 -0, 15845, 64800, 0x2704b438 -0, 19013, 64800, 0x04c7b8e4 -0, 22182, 64800, 0x3185b288 -0, 25351, 64800, 0xa537c410 -0, 28520, 64800, 0x6495c0f8 -0, 31689, 64800, 0x06a1ca14 -0, 34858, 64800, 0x69cdd2a0 -0, 38027, 64800, 0x4ad2d828 -0, 41196, 64800, 0x9604dea4 -0, 44365, 64800, 0x1c00e430 -0, 47534, 64800, 0x9afeefe0 -0, 50702, 64800, 0xc13fdd78 -0, 53871, 64800, 0x8438da7c -0, 57040, 64800, 0xa0ead278 -0, 60209, 64800, 0xbeced2d8 -0, 63378, 64800, 0x85bbd7dc -0, 66547, 64800, 0xbe59ce34 -0, 69716, 64800, 0xd76ecccc -0, 72885, 64800, 0xe182b474 -0, 76054, 64800, 0x916cc394 -0, 79223, 64800, 0x7efebd14 -0, 82391, 64800, 0x8d28c9f0 -0, 85560, 64800, 0x00a1c960 -0, 88729, 64800, 0xc164c400 -0, 91898, 64800, 0xfd4dc544 -0, 95067, 64800, 0x01bfbe38 -0, 98236, 64800, 0xff11b5d0 -0, 101405, 64800, 0x4876bb20 -0, 104574, 64800, 0x756ecb04 -0, 107743, 64800, 0x3b8cd540 -0, 110912, 64800, 0x063ed444 +0, 0, 64800, 0x63132a60 +0, 3169, 64800, 0xb3c729a3 +0, 6338, 64800, 0xa27b1e0e +0, 9507, 64800, 0xb9131d00 +0, 12676, 64800, 0xaf9a1bae +0, 15845, 64800, 0x11e319c5 +0, 19013, 64800, 0xee6e1e6b +0, 22182, 64800, 0x418417e9 +0, 25351, 64800, 0x339d29f4 +0, 28520, 64800, 0x198926c4 +0, 31689, 64800, 0x439a3044 +0, 34858, 64800, 0x0a4e38e1 +0, 38027, 64800, 0x6e043e7e +0, 41196, 64800, 0xde434533 +0, 44365, 64800, 0xb58a4ad1 +0, 47534, 64800, 0xaa105710 +0, 50702, 64800, 0x1723440c +0, 53871, 64800, 0x3b064116 +0, 57040, 64800, 0x853f38e4 +0, 60209, 64800, 0x52f53917 +0, 63378, 64800, 0xea363e5a +0, 66547, 64800, 0x4d0a344e +0, 69716, 64800, 0xe49232fc +0, 72885, 64800, 0x747b1a02 +0, 76054, 64800, 0xbaa82992 +0, 79223, 64800, 0x8e9322db +0, 82391, 64800, 0x029a2fcf +0, 85560, 64800, 0xb9a62f6a +0, 88729, 64800, 0x553329fe +0, 91898, 64800, 0x9a052b5b +0, 95067, 64800, 0xe2ff2404 +0, 98236, 64800, 0xaacd1b59 +0, 101405, 64800, 0x17d820de +0, 104574, 64800, 0x1c9e312c +0, 107743, 64800, 0x84df3b99 +0, 110912, 64800, 0xf7d13aa1 diff --git a/tests/ref/vsynth1/cljr b/tests/ref/vsynth1/cljr index 181f32f829..73dc6ba578 100644 --- a/tests/ref/vsynth1/cljr +++ b/tests/ref/vsynth1/cljr @@ -1,4 +1,4 @@ 041982e4fa83428c621a127647d47b3f *./tests/data/vsynth1/cljr.avi 5075660 ./tests/data/vsynth1/cljr.avi -f5173ae479fc104903b203260cadf507 *./tests/data/cljr.vsynth1.out.yuv -stddev: 30.71 PSNR: 18.38 MAXDIFF: 225 bytes: 7603200/ 7603200 +e1c4c96c74de3435d0f9f6118c5ed9b5 *./tests/data/cljr.vsynth1.out.yuv +stddev: 30.53 PSNR: 18.43 MAXDIFF: 225 bytes: 7603200/ 7603200 diff --git a/tests/ref/vsynth2/cljr b/tests/ref/vsynth2/cljr index 4a69a4c46e..75466437ff 100644 --- a/tests/ref/vsynth2/cljr +++ b/tests/ref/vsynth2/cljr @@ -1,4 +1,4 @@ fdc1926e0a599de94513f0a3472b598f *./tests/data/vsynth2/cljr.avi 5075660 ./tests/data/vsynth2/cljr.avi -3db163e55149786e7cf5499b3387bdb1 *./tests/data/cljr.vsynth2.out.yuv -stddev: 10.80 PSNR: 27.46 MAXDIFF: 65 bytes: 7603200/ 7603200 +7df03229ee6361ea11a0d83d4926cb10 *./tests/data/cljr.vsynth2.out.yuv +stddev: 10.30 PSNR: 27.87 MAXDIFF: 65 bytes: 7603200/ 7603200 |