From 7f068d4e23f0e9717eae81ba7b97b1e29042395b Mon Sep 17 00:00:00 2001 From: banan Date: Fri, 18 Aug 2006 16:48:35 +0000 Subject: [PATCH] AVI tag reading and writing patch by David Conrad. umovimus at gmail dot com git-svn-id: file:///var/local/repositories/ffmpeg/trunk@6022 9553f0bf-9b14-0410-a0b8-cfaf0461ba5b --- libavformat/avidec.c | 24 ++++++++++++ libavformat/avienc.c | 31 +++++++++++++++ tests/ffmpeg.regression.ref | 88 +++++++++++++++++++++---------------------- tests/ffserver.regression.ref | 4 +- tests/libav.regression.ref | 4 +- tests/rotozoom.regression.ref | 88 +++++++++++++++++++++---------------------- 6 files changed, 147 insertions(+), 92 deletions(-) diff --git a/libavformat/avidec.c b/libavformat/avidec.c index 1c4ee6affe..fd50c86508 100644 --- a/libavformat/avidec.c +++ b/libavformat/avidec.c @@ -180,6 +180,15 @@ static void clean_index(AVFormatContext *s){ } } +static int avi_read_tag(ByteIOContext *pb, char *buf, int maxlen, unsigned int size) +{ + offset_t i = url_ftell(pb); + size += (size & 1); + get_strz(pb, buf, maxlen); + url_fseek(pb, i+size, SEEK_SET); + return 0; +} + static int avi_read_header(AVFormatContext *s, AVFormatParameters *ap) { AVIContext *avi = s->priv_data; @@ -438,6 +447,21 @@ static int avi_read_header(AVFormatContext *s, AVFormatParameters *ap) } url_fseek(pb, i+size, SEEK_SET); break; + case MKTAG('I', 'N', 'A', 'M'): + avi_read_tag(pb, s->title, sizeof(s->title), size); + break; + case MKTAG('I', 'A', 'R', 'T'): + avi_read_tag(pb, s->author, sizeof(s->author), size); + break; + case MKTAG('I', 'C', 'O', 'P'): + avi_read_tag(pb, s->copyright, sizeof(s->copyright), size); + break; + case MKTAG('I', 'C', 'M', 'T'): + avi_read_tag(pb, s->comment, sizeof(s->comment), size); + break; + case MKTAG('I', 'G', 'N', 'R'): + avi_read_tag(pb, s->genre, sizeof(s->genre), size); + break; default: /* skip tag */ size += (size & 1); diff --git a/libavformat/avienc.c b/libavformat/avienc.c index 98ce333cd9..fcbcd8b6a4 100644 --- a/libavformat/avienc.c +++ b/libavformat/avienc.c @@ -89,6 +89,19 @@ static unsigned char* avi_stream2fourcc(unsigned char* tag, int index, return tag; } +static void avi_write_info_tag(ByteIOContext *pb, const char *tag, const char *str) +{ + int len = strlen(str); + if (len > 0) { + len++; + put_tag(pb, tag); + put_le32(pb, len); + put_strz(pb, str); + if (len & 1) + put_byte(pb, 0); + } +} + static int avi_write_header(AVFormatContext *s) { AVIContext *avi = s->priv_data; @@ -258,6 +271,24 @@ static int avi_write_header(AVFormatContext *s) end_tag(pb, list1); + list2 = start_tag(pb, "LIST"); + put_tag(pb, "INFO"); + avi_write_info_tag(pb, "INAM", s->title); + avi_write_info_tag(pb, "IART", s->author); + avi_write_info_tag(pb, "ICOP", s->copyright); + avi_write_info_tag(pb, "ICMT", s->comment); + avi_write_info_tag(pb, "IPRD", s->album); + avi_write_info_tag(pb, "IGNR", s->genre); + if(!(s->streams[0]->codec->flags & CODEC_FLAG_BITEXACT)) + avi_write_info_tag(pb, "ISFT", LIBAVFORMAT_IDENT); + end_tag(pb, list2); + + /* some padding for easier tag editing */ + list2 = start_tag(pb, "JUNK"); + for (i = 0; i < 1016; i += 4) + put_le32(pb, 0); + end_tag(pb, list2); + avi->movi_list = start_tag(pb, "LIST"); put_tag(pb, "movi"); diff --git a/tests/ffmpeg.regression.ref b/tests/ffmpeg.regression.ref index e5f5a6f65e..037c748e3c 100644 --- a/tests/ffmpeg.regression.ref +++ b/tests/ffmpeg.regression.ref @@ -31,82 +31,82 @@ edb3e58ea66de2e9b32713daf9b5c3f1 *./data/a-mpeg2reuse.mpg 2119706 ./data/a-mpeg2reuse.mpg 1dab2eaca5320fe01afbe9596b2bd6cc *./data/out.yuv stddev: 7.68 PSNR:30.41 bytes:7602176 -09086e7b020e9425a8f7e05372dbcfcd *./data/a-msmpeg4v2.avi -642666 ./data/a-msmpeg4v2.avi +f24f317ad39c5f2d0195ce0675a828e7 *./data/a-msmpeg4v2.avi +643702 ./data/a-msmpeg4v2.avi 7646e5cc93452b5fb380c8c4c5f535f4 *./data/out.yuv stddev: 8.02 PSNR:30.03 bytes:7602176 -2a7548673b1fdddbb91e2a16698a6249 *./data/a-msmpeg4.avi -644964 ./data/a-msmpeg4.avi +605165d0beeea3a38525ff138256b5f6 *./data/a-msmpeg4.avi +646000 ./data/a-msmpeg4.avi cdc5d7403a16dc9450a2dbacb349dc70 *./data/out.yuv stddev: 8.01 PSNR:30.04 bytes:7602176 -199d97760f89a27406ab1c36eeb86045 *./data/a-wmv1.avi -648074 ./data/a-wmv1.avi +a9c47ab417361e6f9978b66d89861ad6 *./data/a-wmv1.avi +649110 ./data/a-wmv1.avi 09253222ab4eb95628c931a86006a2b1 *./data/out.yuv stddev: 8.02 PSNR:30.04 bytes:7602176 -1224b828b077ea06d07f60e2b5d65daa *./data/a-wmv2.avi -682132 ./data/a-wmv2.avi +6dfa7cbf42345a53fbb310ad9e6e215c *./data/a-wmv2.avi +683168 ./data/a-wmv2.avi 09253222ab4eb95628c931a86006a2b1 *./data/out.yuv stddev: 8.02 PSNR:30.04 bytes:7602176 -83aa4946c21cd3b2b053638302a6bc64 *./data/a-h261.avi -735098 ./data/a-h261.avi +6755ed0b90ce3a8a55d2f26bcbcaf402 *./data/a-h261.avi +736134 ./data/a-h261.avi 0a6e6dd4f09df9fe77ff29581c1a39c3 *./data/out.yuv stddev: 9.14 PSNR:28.90 bytes:7602176 -e73d7a4cad997f18587dff27094fb8f4 *./data/a-h263.avi -682226 ./data/a-h263.avi +6547e7e79d5ea7b8a35e347b18921327 *./data/a-h263.avi +683262 ./data/a-h263.avi f2b7fcff9de17f5aecfeb1090fe1963b *./data/out.yuv stddev: 8.08 PSNR:29.97 bytes:7602176 -fc01a5723a0d629bb73c74d64692120d *./data/a-h263p.avi -2414342 ./data/a-h263p.avi +0f2f8d438b292222d691418552995e43 *./data/a-h263p.avi +2415378 ./data/a-h263p.avi 28fd12ac0b168252d81df6f6e60a5d17 *./data/out.yuv stddev: 2.07 PSNR:41.76 bytes:7602176 0ff2951f72be3e62038b426f0ec12e1b *./data/a-odivx.mp4 554499 ./data/a-odivx.mp4 57aed19df5cbada4b05991527ee72ebe *./data/out.yuv stddev: 7.99 PSNR:30.06 bytes:7602176 -8a9a98678a2e9c2e857f741cbb8e9ccb *./data/a-huffyuv.avi -7932708 ./data/a-huffyuv.avi +6c58e5707afe056b072d2ce21b3b8e4f *./data/a-huffyuv.avi +7933744 ./data/a-huffyuv.avi 799d3db687f6cdd7a837ec156efc171f *./data/out.yuv stddev: 0.00 PSNR:99.99 bytes:7602176 -acf1fb041e2208742df6a083ee24f6bb *./data/a-mpeg4-rc.avi -822270 ./data/a-mpeg4-rc.avi +b6115b930e8087553d67a1efd0baedae *./data/a-mpeg4-rc.avi +823306 ./data/a-mpeg4-rc.avi 3ecd1afdaf2d691d01628737326dda35 *./data/out.yuv stddev: 10.41 PSNR:27.76 bytes:7602176 -b3060dfd7638093b92de96ccc4568409 *./data/a-mpeg4-adv.avi -600240 ./data/a-mpeg4-adv.avi +01665bbcc72ab95d6d5ac93e87ab672c *./data/a-mpeg4-adv.avi +601276 ./data/a-mpeg4-adv.avi 0b7935cee2070f3b838478cea6dc4b3c *./data/out.yuv stddev: 10.25 PSNR:27.90 bytes:7602176 -0ba8ddfbdf68c7b53b24da5915b6bbf1 *./data/a-mpeg4-thread.avi -764686 ./data/a-mpeg4-thread.avi +729af3941305c27ce330e2afaebb5592 *./data/a-mpeg4-thread.avi +765722 ./data/a-mpeg4-thread.avi 252d1e8cc1ee88eea693cebd6b4e7e53 *./data/out.yuv stddev: 12.32 PSNR:26.31 bytes:7602176 -a316960921c77d88817d857bbe19dccd *./data/a-mpeg4-Q.avi -899452 ./data/a-mpeg4-Q.avi +670f6e540bcf504ccc72d41952cc401e *./data/a-mpeg4-Q.avi +900488 ./data/a-mpeg4-Q.avi af59c063ed644c7dc4151a0a2debbddd *./data/out.yuv stddev: 5.69 PSNR:33.00 bytes:7602176 2ff870bf5e75d493072cc28ea8d51ab1 *./data/a-mpeg4-PSP.mp4 407313 ./data/a-mpeg4-PSP.mp4 -40f1b11c7c5c114af109ef4ea6a7097d *./data/a-error-mpeg4-adv.avi -766682 ./data/a-error-mpeg4-adv.avi +ef45e577219460332bed428106f638a6 *./data/a-error-mpeg4-adv.avi +767718 ./data/a-error-mpeg4-adv.avi e90b201e20563ec7817f5dc4276902ed *./data/out.yuv stddev: 15.90 PSNR:24.09 bytes:7602176 -994c604f7fafc77f50acc61df7c20cd2 *./data/a-mpeg4-nr.avi -689772 ./data/a-mpeg4-nr.avi +dc4b99dc8edd9026cb504950864c396d *./data/a-mpeg4-nr.avi +690808 ./data/a-mpeg4-nr.avi 79f4e8263e40822c0cbf35725f375b24 *./data/out.yuv stddev: 7.03 PSNR:31.18 bytes:7602176 9060d865a32d5c760ab51df013c0aece *./data/a-mpeg1b.mpg 1037617 ./data/a-mpeg1b.mpg cb5b972265599c17f01b96737947b482 *./data/out.yuv stddev: 6.35 PSNR:32.06 bytes:7602176 -f7562207c0e7490e570c91c2900b73f6 *./data/a-mjpeg.avi -1566544 ./data/a-mjpeg.avi +2f9cb2ede35f7d12f6b518c50e20d81c *./data/a-mjpeg.avi +1567580 ./data/a-mjpeg.avi 18c3a76f984e717dd886d21fa04355f6 *./data/out.yuv stddev: 7.93 PSNR:30.13 bytes:7602176 -7e434004d285155cf81ed206bb387870 *./data/a-ljpeg.avi -6263462 ./data/a-ljpeg.avi +5a662e3833d900b56cca79ba5ed5ec06 *./data/a-ljpeg.avi +6264498 ./data/a-ljpeg.avi 799d3db687f6cdd7a837ec156efc171f *./data/out.yuv stddev: 0.00 PSNR:99.99 bytes:7602176 -7b3010f595177b428cb909fa1a10ef83 *./data/a-jpegls.avi -9085658 ./data/a-jpegls.avi +8b9359781a7e87d09af1b1c9a536cb75 *./data/a-jpegls.avi +9086694 ./data/a-jpegls.avi 0f8637e9b861230aff9894825af83720 *./data/out.yuv stddev: 2.84 PSNR:39.04 bytes:7602176 49c87af74432890cadb28b93da1c653d *./data/a-rv10.rm @@ -117,28 +117,28 @@ a00fbb82c030fe41febe1d03eacb338e *./data/a-rv20.rm 652897 ./data/a-rv20.rm 203e9790cb25b1d308fd602275afbb0e *./data/out.yuv stddev: 8.27 PSNR:29.76 bytes:7602176 -98c310d768d0bee325424f6e1cd92548 *./data/a-asv1.avi -1487828 ./data/a-asv1.avi +d13292f4583618d1b7b525a9ee010dff *./data/a-asv1.avi +1488864 ./data/a-asv1.avi 925320b74c7dfda5dc8378dd879ae2c3 *./data/out.yuv stddev: 20.00 PSNR:22.10 bytes:7602176 -629fe6fdebcd295e0ad76f5bbaf3abec *./data/a-asv2.avi -1453500 ./data/a-asv2.avi +2e50b590f32bf98bde82dbfaf180007a *./data/a-asv2.avi +1454536 ./data/a-asv2.avi 0b310840a6d3970595983491687669df *./data/out.yuv stddev: 18.82 PSNR:22.63 bytes:7602176 fc2eaff78828dd0efd6483f754511f33 *./data/a-flv.flv 658142 ./data/a-flv.flv 4d9c04e7017dc68da7891048c46c1c37 *./data/out.yuv stddev: 8.08 PSNR:29.97 bytes:7602176 -a7ef4746f27be309138c188e327d3ebe *./data/a-ffv1.avi -2653642 ./data/a-ffv1.avi +f8f51fa737add17f7fecaefa118b57ed *./data/a-ffv1.avi +2654678 ./data/a-ffv1.avi 799d3db687f6cdd7a837ec156efc171f *./data/out.yuv stddev: 0.00 PSNR:99.99 bytes:7602176 -495ad3209021bb2bb98ab431965d27b9 *./data/a-snow.avi -155066 ./data/a-snow.avi +70ec217c2513f22f48e9b29aa059d902 *./data/a-snow.avi +156102 ./data/a-snow.avi 5aba44ff94d278a20c9cbfb19953e618 *./data/out.yuv stddev: 23.19 PSNR:20.81 bytes:7602176 -ef6b08e8e122c5d29aa7af9259098d3e *./data/a-snow53.avi -3533712 ./data/a-snow53.avi +f998347483cef957af497aa0055dca0c *./data/a-snow53.avi +3534748 ./data/a-snow53.avi 799d3db687f6cdd7a837ec156efc171f *./data/out.yuv stddev: 0.00 PSNR:99.99 bytes:7602176 85529d9838c5a8aef041445fa8ef3c85 *./data/a-dv.dv diff --git a/tests/ffserver.regression.ref b/tests/ffserver.regression.ref index 141d5faeb8..c4171a44ca 100644 --- a/tests/ffserver.regression.ref +++ b/tests/ffserver.regression.ref @@ -1,5 +1,5 @@ -8e431131485c2862672e040c662da43c ff-test_h.avi -159562fd980af62ff888d709fad7042a ff-test_l.avi +418d0c843a6605a7d48f285804a69df4 ff-test_h.avi +ad4605187044d5e169f32a2ea205f937 ff-test_l.avi 34f4f0c160efcdb37c0999680e07c41c ff-test.swf 1eb3fdf04c43c8b0cc59d8444c0f2af3 ff-test_h.asf ffa9d3708aa394fd3631c002fc6cc088 ff-test_l.asf diff --git a/tests/libav.regression.ref b/tests/libav.regression.ref index 5077cbd88f..8cedb09886 100644 --- a/tests/libav.regression.ref +++ b/tests/libav.regression.ref @@ -1,6 +1,6 @@ ffmpeg regression test -3175f33f01e7d0e1ee4bf7f7e4894393 *./data/b-libav.avi - 342282 ./data/b-libav.avi +5fb135845dbde3ce5208c468173ef2c2 *./data/b-libav.avi + 343318 ./data/b-libav.avi ./data/b-libav.avi CRC=0xccab3a27 6f4dca897d9a009009798e434fe5f651 *./data/b-libav.asf 342967 ./data/b-libav.asf diff --git a/tests/rotozoom.regression.ref b/tests/rotozoom.regression.ref index 62e4ccff55..441c951017 100644 --- a/tests/rotozoom.regression.ref +++ b/tests/rotozoom.regression.ref @@ -31,82 +31,82 @@ c9f6617461caee57ccb6d438761527c8 *./data/a-mpeg2reuse.mpg 396729 ./data/a-mpeg2reuse.mpg b10aec71132301cad001070e8ad46b7d *./data/out.yuv stddev: 4.77 PSNR:34.55 bytes:7602176 -dc68a5115d1bf1bb2eb2ce9bb237bd79 *./data/a-msmpeg4v2.avi -129504 ./data/a-msmpeg4v2.avi +7cab039142e9bda70c1551da7106860e *./data/a-msmpeg4v2.avi +130540 ./data/a-msmpeg4v2.avi 25b5ba0b024fcd4028e707ffbeb80f55 *./data/out.yuv stddev: 5.33 PSNR:33.57 bytes:7602176 -261326db3c2561889c53da3c395af4b2 *./data/a-msmpeg4.avi -127110 ./data/a-msmpeg4.avi +8c8de7842e308bb230a51ce64161d30e *./data/a-msmpeg4.avi +128146 ./data/a-msmpeg4.avi 638e64258f26330f3cd36d8d2bbc73f5 *./data/out.yuv stddev: 5.33 PSNR:33.57 bytes:7602176 -a931648e881765ff168239440b772842 *./data/a-wmv1.avi -128880 ./data/a-wmv1.avi +bfc02459aed0f533214fb53446326449 *./data/a-wmv1.avi +129916 ./data/a-wmv1.avi f80d2809e79af3ebcfe831deab9af03c *./data/out.yuv stddev: 5.33 PSNR:33.58 bytes:7602176 -38ad36644b4521607f56cb4f7fbb6114 *./data/a-wmv2.avi -129214 ./data/a-wmv2.avi +dd53a4f17be5113177048ad66dab4678 *./data/a-wmv2.avi +130250 ./data/a-wmv2.avi f80d2809e79af3ebcfe831deab9af03c *./data/out.yuv stddev: 5.33 PSNR:33.58 bytes:7602176 -0423035ddc9aeb8a0b2c29f1d202e0ad *./data/a-h261.avi -191124 ./data/a-h261.avi +08d4b8d62b34ef76286affc5db33fffb *./data/a-h261.avi +192160 ./data/a-h261.avi 452714d0883f555e831888de0be1fc49 *./data/out.yuv stddev: 6.39 PSNR:32.00 bytes:7602176 -f02f10a94fc39a7518141bef9e532bd2 *./data/a-h263.avi -159596 ./data/a-h263.avi +463d2eeafd6a583d8bedeb378dcfda6a *./data/a-h263.avi +160632 ./data/a-h263.avi 7ec66fb7dd4e5dddd3820c668d6636aa *./data/out.yuv stddev: 5.44 PSNR:33.41 bytes:7602176 -804a8facc831125842453fb3b7016735 *./data/a-h263p.avi -868164 ./data/a-h263p.avi +809b4da31640dbd5460db24d86c93d0c *./data/a-h263p.avi +869200 ./data/a-h263p.avi 80fb224bebbe2e04f228da7485b905c5 *./data/out.yuv stddev: 1.91 PSNR:42.49 bytes:7602176 58ca40c205c596abbd770ceb221df3ec *./data/a-odivx.mp4 120150 ./data/a-odivx.mp4 e8c90899c32e11e7e4d1354dab0b8f28 *./data/out.yuv stddev: 5.34 PSNR:33.56 bytes:7602176 -4a8912deb0182471aaaf4fc3ece39fb2 *./data/a-huffyuv.avi -6454196 ./data/a-huffyuv.avi +a1323da0c8b437cd6961f8c90451880b *./data/a-huffyuv.avi +6455232 ./data/a-huffyuv.avi dde5895817ad9d219f79a52d0bdfb001 *./data/out.yuv stddev: 0.00 PSNR:99.99 bytes:7602176 -b25c4fd396faddd829d8ef5a31a1cce3 *./data/a-mpeg4-rc.avi -227618 ./data/a-mpeg4-rc.avi +b06de4a277807e6e6ab117da3f9f97d5 *./data/a-mpeg4-rc.avi +228654 ./data/a-mpeg4-rc.avi addcb0b8e42d71c25a0590d10e8e41c6 *./data/out.yuv stddev: 4.27 PSNR:35.51 bytes:7602176 -390b43f0156d05f11489fe6cec2d7593 *./data/a-mpeg4-adv.avi -172526 ./data/a-mpeg4-adv.avi +6f51f9655b4c1bc974da345d70b5dea2 *./data/a-mpeg4-adv.avi +173562 ./data/a-mpeg4-adv.avi e3445dab9a3fa83a0f86457e24cb0cea *./data/out.yuv stddev: 4.84 PSNR:34.42 bytes:7602176 -c6c0c6884f4388bcb6eeba8046dd1e18 *./data/a-mpeg4-thread.avi -253268 ./data/a-mpeg4-thread.avi +4f94c18c6e69df74d026f4161f565059 *./data/a-mpeg4-thread.avi +254304 ./data/a-mpeg4-thread.avi d6f1714d6fe1f969fc4ca416c6f8ba6c *./data/out.yuv stddev: 4.04 PSNR:35.98 bytes:7602176 -e3297036902923727157b8d1b52cbc7e *./data/a-mpeg4-Q.avi -164998 ./data/a-mpeg4-Q.avi +1c73de943d89a2f6e8a6efead02492e2 *./data/a-mpeg4-Q.avi +166034 ./data/a-mpeg4-Q.avi b078f22c66083f0537bd3581509684d8 *./data/out.yuv stddev: 4.01 PSNR:36.05 bytes:7602176 30fa98177dad6bd40a1baf13c29c20d4 *./data/a-mpeg4-PSP.mp4 321886 ./data/a-mpeg4-PSP.mp4 -a2adfb70459e8b2218756bac5e67c4c7 *./data/a-error-mpeg4-adv.avi -177212 ./data/a-error-mpeg4-adv.avi +d93e3d53110437db55e954a14fdd7c3a *./data/a-error-mpeg4-adv.avi +178248 ./data/a-error-mpeg4-adv.avi 9fa0943825f364d6fb700dc75cf5d8bb *./data/out.yuv stddev: 9.71 PSNR:28.37 bytes:7602176 -b2722a6e5e7cce05665f221e15fd5202 *./data/a-mpeg4-nr.avi -154302 ./data/a-mpeg4-nr.avi +1ac8e7645c6c045e2afe2005737fe05e *./data/a-mpeg4-nr.avi +155338 ./data/a-mpeg4-nr.avi b69fc415185075bdb21bedeae03d20b8 *./data/out.yuv stddev: 4.73 PSNR:34.62 bytes:7602176 1286f6db500a739f724994991be211b0 *./data/a-mpeg1b.mpg 231292 ./data/a-mpeg1b.mpg a0eeed27d5123995b32210dc35052cfe *./data/out.yuv stddev: 4.13 PSNR:35.78 bytes:7602176 -213976bbab45a461e3334feb8fef38d9 *./data/a-mjpeg.avi -702528 ./data/a-mjpeg.avi +b179402bba391073b5f5f9324a834061 *./data/a-mjpeg.avi +703564 ./data/a-mjpeg.avi b1aa72cfb6f9cc3f525b27abc86a8f51 *./data/out.yuv stddev: 4.38 PSNR:35.28 bytes:7602176 -438065c90b5fbec7c670fbf4eb70f24d *./data/a-ljpeg.avi -4765522 ./data/a-ljpeg.avi +bc0d8c868c1a05db0ff03f41768f6c5e *./data/a-ljpeg.avi +4766558 ./data/a-ljpeg.avi dde5895817ad9d219f79a52d0bdfb001 *./data/out.yuv stddev: 0.00 PSNR:99.99 bytes:7602176 -315493c7e63139c47f0197831475c4da *./data/a-jpegls.avi -8333472 ./data/a-jpegls.avi +8a2f3984a27a7513545cf98bc05fd066 *./data/a-jpegls.avi +8334508 ./data/a-jpegls.avi a63d4e3ea1f0b0c0d44821da9e09b8f4 *./data/out.yuv stddev: 0.67 PSNR:51.57 bytes:7602176 2123b30d786e6e6e25caf337f24e7834 *./data/a-rv10.rm @@ -117,28 +117,28 @@ d4a6977b0162d8c1cfea5ffd0a3d5f56 *./data/a-rv20.rm 133224 ./data/a-rv20.rm fce5eda7118cbb0bd60da60e827842ee *./data/out.yuv stddev: 5.42 PSNR:33.43 bytes:7602176 -5e6ad8292d66d4aff3dfcbdc61696c94 *./data/a-asv1.avi -831476 ./data/a-asv1.avi +4eb34d2de25f67a2706456e999338fe9 *./data/a-asv1.avi +832512 ./data/a-asv1.avi c96ff7fd17c52f99ddb7922a4cb9168f *./data/out.yuv stddev: 10.47 PSNR:27.72 bytes:7602176 -f41877971145f58fae85c613ec570d66 *./data/a-asv2.avi -788036 ./data/a-asv2.avi +9649a4b68fb1107bad13e8a7574cc72d *./data/a-asv2.avi +789072 ./data/a-asv2.avi 74a78015b64b2cf8cb9da2e44f508a69 *./data/out.yuv stddev: 10.28 PSNR:27.88 bytes:7602176 e298764f4da4a76d937d9a92a8d3b10b *./data/a-flv.flv 131922 ./data/a-flv.flv e61cd1e7c5a292d396ae90f4d2fb3db7 *./data/out.yuv stddev: 5.33 PSNR:33.57 bytes:7602176 -d0831a8339491fd680b650f05262e5d9 *./data/a-ffv1.avi -3524768 ./data/a-ffv1.avi +d72b0960e162d4998b9acbabb07e99ab *./data/a-ffv1.avi +3525804 ./data/a-ffv1.avi dde5895817ad9d219f79a52d0bdfb001 *./data/out.yuv stddev: 0.00 PSNR:99.99 bytes:7602176 -b0bfe9be7082450d1c079d89a54527fb *./data/a-snow.avi -67464 ./data/a-snow.avi +f47f5987a30817f13dc650e52a80074b *./data/a-snow.avi +68500 ./data/a-snow.avi 8ab54d65f2edbc2255444a039b7bd06e *./data/out.yuv stddev: 10.93 PSNR:27.34 bytes:7602176 -1b4d88af4c8c1ac3fd092de0a69d5023 *./data/a-snow53.avi -2725570 ./data/a-snow53.avi +86d26b79acf02c34dc9eb09a31892633 *./data/a-snow53.avi +2726606 ./data/a-snow53.avi dde5895817ad9d219f79a52d0bdfb001 *./data/out.yuv stddev: 0.00 PSNR:99.99 bytes:7602176 6568326ee439099e8a0e1680336ed351 *./data/a-dv.dv -- 2.11.4.GIT