From b6bffc46b8e6d77e9514a986564519d947c3f5c1 Mon Sep 17 00:00:00 2001 From: Michael Niedermayer Date: Mon, 25 Feb 2008 22:43:42 +0000 Subject: [PATCH] Fix trellis quant + AAN DCT. Originally committed as revision 12221 to svn://svn.ffmpeg.org/ffmpeg/trunk --- libavcodec/mpegvideo_enc.c | 25 ++++- tests/ffmpeg.regression.ref | 40 +++---- tests/rotozoom.regression.ref | 40 +++---- tests/seek.regression.ref | 200 +++++++++++++++++----------------- 4 files changed, 162 insertions(+), 143 deletions(-) diff --git a/libavcodec/mpegvideo_enc.c b/libavcodec/mpegvideo_enc.c index 36be455f21..bebdf71f3b 100644 --- a/libavcodec/mpegvideo_enc.c +++ b/libavcodec/mpegvideo_enc.c @@ -61,6 +61,17 @@ static const uint16_t aanscales[64] = { 4520 , 6270, 5906, 5315, 4520, 3552, 2446, 1247 }; +static const uint16_t inv_aanscales[64] = { + 4096, 2953, 3135, 3483, 4096, 5213, 7568, 14846, + 2953, 2129, 2260, 2511, 2953, 3759, 5457, 10703, + 3135, 2260, 2399, 2666, 3135, 3990, 5793, 11363, + 3483, 2511, 2666, 2962, 3483, 4433, 6436, 12625, + 4096, 2953, 3135, 3483, 4096, 5213, 7568, 14846, + 5213, 3759, 3990, 4433, 5213, 6635, 9633, 18895, + 7568, 5457, 5793, 6436, 7568, 9633, 13985, 27432, + 14846, 10703, 11363, 12625, 14846, 18895, 27432, 53809, +}; + static uint8_t default_mv_penalty[MAX_FCODE+1][MAX_MV*2+1]; static uint8_t default_fcode_tab[MAX_MV*2+1]; @@ -3067,10 +3078,18 @@ int dct_quantize_trellis_c(MpegEncContext *s, survivor_count= 1; for(i=start_i; i<=last_non_zero; i++){ - int level_index, j; - const int dct_coeff= FFABS(block[ scantable[i] ]); - const int zero_distoration= dct_coeff*dct_coeff; + int level_index, j, zero_distoration; + int dct_coeff= FFABS(block[ scantable[i] ]); int best_score=256*256*256*120; + + if ( s->dsp.fdct == fdct_ifast +#ifndef FAAN_POSTSCALE + || s->dsp.fdct == ff_faandct +#endif + ) + dct_coeff= (dct_coeff*inv_aanscales[ scantable[i] ]) >> 12; + zero_distoration= dct_coeff*dct_coeff; + for(level_index=0; level_index < coeff_count[i]; level_index++){ int distoration; int level= coeff[level_index][i]; diff --git a/tests/ffmpeg.regression.ref b/tests/ffmpeg.regression.ref index 7002926d1e..1ff9ecd5a0 100644 --- a/tests/ffmpeg.regression.ref +++ b/tests/ffmpeg.regression.ref @@ -6,10 +6,10 @@ f3b008355f68394b6cad694f3488ea2b *./tests/data/a-mpeg2.mpg 736978 ./tests/data/a-mpeg2.mpg 9f364a477987c3b14412e303b94377ca *./tests/data/mpeg2.vsynth.out.yuv stddev: 7.68 PSNR:30.41 bytes:7602176 -3236c7550f66fe1f0a1526b02b72c0df *./tests/data/a-mpeg2ivlc-qprd.mpg -707911 ./tests/data/a-mpeg2ivlc-qprd.mpg -8a0112b8a26301ccaca49c28b30d387b *./tests/data/mpeg2.vsynth.out.yuv -stddev: 12.21 PSNR:26.38 bytes:7602176 +103f4b5f90feaec3c04e200409501982 *./tests/data/a-mpeg2ivlc-qprd.mpg +787469 ./tests/data/a-mpeg2ivlc-qprd.mpg +985170ca0ab1ec1edbb37c44d8cfde90 *./tests/data/mpeg2.vsynth.out.yuv +stddev: 10.09 PSNR:28.04 bytes:7602176 2566ea5760247a9485c8281cb52291a8 *./tests/data/a-mpeg2.mpg 735853 ./tests/data/a-mpeg2.mpg 55c22a09e4924977ee2cc4180078d3ae *./tests/data/mpeg2.vsynth.out.yuv @@ -70,26 +70,26 @@ b27e911f1563455700c93e6ae39715ca *./tests/data/a-mpeg4-rc.avi 813988 ./tests/data/a-mpeg4-rc.avi f57311745de96b6551c175679b138efc *./tests/data/rc.vsynth.out.yuv stddev: 10.40 PSNR:27.78 bytes:7602176 -85e2456a673041d528b242d78318fb65 *./tests/data/a-mpeg4-adv.avi -600188 ./tests/data/a-mpeg4-adv.avi -60edc5a67271e425d0a2a52981895b81 *./tests/data/mpeg4adv.vsynth.out.yuv -stddev: 10.25 PSNR:27.91 bytes:7602176 -6ae74b04d5265132837eb32a5e03a98a *./tests/data/a-mpeg4-qprd.avi -657854 ./tests/data/a-mpeg4-qprd.avi -c2c3c675bd1ffdc0b92dd0f27a83f37a *./tests/data/mpeg4adv.vsynth.out.yuv -stddev: 12.12 PSNR:26.45 bytes:7602176 -69a0f715145536849413e30e950e9cc2 *./tests/data/a-mpeg4-adap.avi -399984 ./tests/data/a-mpeg4-adap.avi -f3e2093420cd44101da2f708f19fcbd1 *./tests/data/mpeg4adv.vsynth.out.yuv -stddev: 14.66 PSNR:24.80 bytes:7602176 +76d3b26ef7e51146e1194956cb0275e6 *./tests/data/a-mpeg4-adv.avi +604580 ./tests/data/a-mpeg4-adv.avi +ee7f2a0be286f09e20372e127364d690 *./tests/data/mpeg4adv.vsynth.out.yuv +stddev: 6.99 PSNR:31.23 bytes:7602176 +13bc53ae93709323b8989cc4f8ea4b1e *./tests/data/a-mpeg4-qprd.avi +736920 ./tests/data/a-mpeg4-qprd.avi +745ccd9185f579cde533c1500fc4adc7 *./tests/data/mpeg4adv.vsynth.out.yuv +stddev: 10.04 PSNR:28.08 bytes:7602176 +5b105ca591f94fa1c2b420cd74b290a1 *./tests/data/a-mpeg4-adap.avi +409360 ./tests/data/a-mpeg4-adap.avi +6ae220d766c44af3bd58e3d2f5aefa8d *./tests/data/mpeg4adv.vsynth.out.yuv +stddev: 14.15 PSNR:25.10 bytes:7602176 41b27141442f773eca9ef3d48d8d555a *./tests/data/a-mpeg4-Q.avi 878264 ./tests/data/a-mpeg4-Q.avi 8995abbcc97ed4767fcbc0bf46accd01 *./tests/data/mpeg4adv.vsynth.out.yuv stddev: 5.61 PSNR:33.13 bytes:7602176 -a20b1d73bb0671dbd2012494c31719a6 *./tests/data/a-mpeg4-thread.avi -761506 ./tests/data/a-mpeg4-thread.avi -a9835b5b6a34a3fd70c168dc60fb9687 *./tests/data/mpeg4thread.vsynth.out.yuv -stddev: 12.31 PSNR:26.31 bytes:7602176 +6271c9f3b8a6ec3a78315699952d9a99 *./tests/data/a-mpeg4-thread.avi +778604 ./tests/data/a-mpeg4-thread.avi +152d46da2a9d7fa3c22c56767c1760db *./tests/data/mpeg4thread.vsynth.out.yuv +stddev: 10.26 PSNR:27.89 bytes:7602176 743cf18c1e8941591f8ab41350247c42 *./tests/data/a-mpeg4-PSP.mp4 406441 ./tests/data/a-mpeg4-PSP.mp4 7315281e07830456208dff61337c982b *./tests/data/a-error-mpeg4-adv.avi diff --git a/tests/rotozoom.regression.ref b/tests/rotozoom.regression.ref index ffc9daf0cd..68cc3e7202 100644 --- a/tests/rotozoom.regression.ref +++ b/tests/rotozoom.regression.ref @@ -6,10 +6,10 @@ stddev: 4.95 PSNR:34.21 bytes:7602176 198667 ./tests/data/a-mpeg2.mpg b7cae8a1f751b821cddcbe4d5dbc518c *./tests/data/mpeg2.rotozoom.out.yuv stddev: 4.96 PSNR:34.19 bytes:7602176 -9e7542fb0dfea5ffa9de6bfee3d26fdb *./tests/data/a-mpeg2ivlc-qprd.mpg -248055 ./tests/data/a-mpeg2ivlc-qprd.mpg -610ec1a25a3f823bf083d8bf20348ebb *./tests/data/mpeg2.rotozoom.out.yuv -stddev: 4.44 PSNR:35.16 bytes:7602176 +788b83a7c8c6c1e648c05076dd40dc30 *./tests/data/a-mpeg2ivlc-qprd.mpg +247161 ./tests/data/a-mpeg2ivlc-qprd.mpg +cc6f08c1a24b58c19de325e79cfa40a3 *./tests/data/mpeg2.rotozoom.out.yuv +stddev: 4.25 PSNR:35.55 bytes:7602176 f979bcca866e6e4cad5dc6cb06e56cfb *./tests/data/a-mpeg2.mpg 198041 ./tests/data/a-mpeg2.mpg f6d9bf24ff8676a7f6076c05cd2c81a3 *./tests/data/mpeg2.rotozoom.out.yuv @@ -70,26 +70,26 @@ b517389e425d3065ab26ef4cc0658237 *./tests/data/a-mpeg4-rc.avi 227762 ./tests/data/a-mpeg4-rc.avi cc947bbac9187bf08d3e2d425556aaa5 *./tests/data/rc.rotozoom.out.yuv stddev: 4.26 PSNR:35.53 bytes:7602176 -9001cf571eb7f26fa5592bdec6538583 *./tests/data/a-mpeg4-adv.avi -173590 ./tests/data/a-mpeg4-adv.avi -699edf05648fdc42196b7bebef9be269 *./tests/data/mpeg4adv.rotozoom.out.yuv -stddev: 4.84 PSNR:34.41 bytes:7602176 -23a44888361723e233e25147e42aa8d8 *./tests/data/a-mpeg4-qprd.avi -233288 ./tests/data/a-mpeg4-qprd.avi -4c8bebe5ceec416d84d99f3afd5fac19 *./tests/data/mpeg4adv.rotozoom.out.yuv -stddev: 4.26 PSNR:35.52 bytes:7602176 -3921cc04f007f2ba73ca8a8ccbaf42eb *./tests/data/a-mpeg4-adap.avi -202438 ./tests/data/a-mpeg4-adap.avi -82379c0cb726088fc4de7546ae696fa8 *./tests/data/mpeg4adv.rotozoom.out.yuv -stddev: 4.05 PSNR:35.95 bytes:7602176 +dee7be19486a76d96c88d18eefba8f86 *./tests/data/a-mpeg4-adv.avi +141546 ./tests/data/a-mpeg4-adv.avi +3f3a21e9db85a9c0f7022f557a5374c1 *./tests/data/mpeg4adv.rotozoom.out.yuv +stddev: 4.94 PSNR:34.24 bytes:7602176 +1b1a692e11969deb1fe3c7144f8cb103 *./tests/data/a-mpeg4-qprd.avi +233604 ./tests/data/a-mpeg4-qprd.avi +95860ad446ca0665d873ae6781736095 *./tests/data/mpeg4adv.rotozoom.out.yuv +stddev: 4.01 PSNR:36.05 bytes:7602176 +78c93c522b23bcc7f84f8b592b0191b6 *./tests/data/a-mpeg4-adap.avi +200120 ./tests/data/a-mpeg4-adap.avi +fd7db0b14fa76d0734bbfa36dbb513f8 *./tests/data/mpeg4adv.rotozoom.out.yuv +stddev: 3.78 PSNR:36.57 bytes:7602176 a5150067914ee1dee50f8fc8dcaee841 *./tests/data/a-mpeg4-Q.avi 165802 ./tests/data/a-mpeg4-Q.avi 4dcc71ad79bee90777cf5299044be362 *./tests/data/mpeg4adv.rotozoom.out.yuv stddev: 4.00 PSNR:36.08 bytes:7602176 -b4c8104d9fd36db9ea5c74f231107d70 *./tests/data/a-mpeg4-thread.avi -251520 ./tests/data/a-mpeg4-thread.avi -dbe9a74a4ca34f263900002c333eb342 *./tests/data/mpeg4thread.rotozoom.out.yuv -stddev: 4.07 PSNR:35.91 bytes:7602176 +8496ffe953dc3398c657d99e962e4d77 *./tests/data/a-mpeg4-thread.avi +250162 ./tests/data/a-mpeg4-thread.avi +58165c879707aedeab460bab86dae4ef *./tests/data/mpeg4thread.rotozoom.out.yuv +stddev: 3.73 PSNR:36.67 bytes:7602176 6cd200bf844fd1c0e48c23d542a860e8 *./tests/data/a-mpeg4-PSP.mp4 324998 ./tests/data/a-mpeg4-PSP.mp4 90e65096aa9ebafa3fe3f44a5a47cdc4 *./tests/data/a-error-mpeg4-adv.avi diff --git a/tests/seek.regression.ref b/tests/seek.regression.ref index 9e39ef2580..715a1a0080 100644 --- a/tests/seek.regression.ref +++ b/tests/seek.regression.ref @@ -1322,51 +1322,51 @@ ret: 0 st: 0 dts:0.480000 pts:-102481911520608.625000 pos:49762 size:10045 flags ret:-1 st:-1 ts:-0.645825 flags:1 ---------------- tests/data/a-mpeg2ivlc-qprd.mpg -ret: 0 st: 0 dts:0.000000 pts:-102481911520608.625000 pos:16384 size:16533 flags:1 +ret: 0 st: 0 dts:0.000000 pts:-102481911520608.625000 pos:15360 size:16239 flags:1 ret: 0 st:-1 ts:-1.000000 flags:0 -ret: 0 st: 0 dts:0.000000 pts:-102481911520608.625000 pos:16384 size:16533 flags:1 +ret: 0 st: 0 dts:0.000000 pts:-102481911520608.625000 pos:15360 size:16239 flags:1 ret: 0 st:-1 ts:1.894167 flags:1 -ret: 0 st: 0 dts:1.840000 pts:-102481911520608.625000 pos:243886 size:13417 flags:1 +ret: 0 st: 0 dts:1.840000 pts:-102481911520608.625000 pos:241597 size:12278 flags:1 ret: 0 st: 0 ts:0.788333 flags:0 -ret: 0 st: 0 dts:0.880000 pts:-102481911520608.625000 pos:180160 size:14675 flags:1 +ret: 0 st: 0 dts:0.880000 pts:-102481911520608.625000 pos:181240 size:13625 flags:1 ret:-1 st: 0 ts:-0.317500 flags:1 ret:-1 st:-1 ts:2.576668 flags:0 ret: 0 st:-1 ts:1.470835 flags:1 -ret: 0 st: 0 dts:1.360000 pts:-102481911520608.625000 pos:212709 size:13700 flags:1 +ret: 0 st: 0 dts:1.360000 pts:-102481911520608.625000 pos:212338 size:12777 flags:1 ret: 0 st: 0 ts:0.365000 flags:0 -ret: 0 st: 0 dts:0.400000 pts:-102481911520608.625000 pos:126798 size:28382 flags:1 +ret: 0 st: 0 dts:0.400000 pts:-102481911520608.625000 pos:130237 size:29165 flags:1 ret:-1 st: 0 ts:-0.740833 flags:1 ret:-1 st:-1 ts:2.153336 flags:0 ret: 0 st:-1 ts:1.047503 flags:1 -ret: 0 st: 0 dts:0.880000 pts:-102481911520608.625000 pos:180160 size:14675 flags:1 +ret: 0 st: 0 dts:0.880000 pts:-102481911520608.625000 pos:181240 size:13625 flags:1 ret: 0 st: 0 ts:-0.058333 flags:0 -ret: 0 st: 0 dts:0.000000 pts:-102481911520608.625000 pos:16384 size:16533 flags:1 +ret: 0 st: 0 dts:0.000000 pts:-102481911520608.625000 pos:15360 size:16239 flags:1 ret: 0 st: 0 ts:2.835833 flags:1 -ret: 0 st: 0 dts:1.840000 pts:-102481911520608.625000 pos:243886 size:13417 flags:1 +ret: 0 st: 0 dts:1.840000 pts:-102481911520608.625000 pos:241597 size:12278 flags:1 ret: 0 st:-1 ts:1.730004 flags:0 -ret: 0 st: 0 dts:1.840000 pts:-102481911520608.625000 pos:243886 size:13417 flags:1 +ret: 0 st: 0 dts:1.840000 pts:-102481911520608.625000 pos:241597 size:12278 flags:1 ret: 0 st:-1 ts:0.624171 flags:1 -ret: 0 st: 0 dts:0.400000 pts:-102481911520608.625000 pos:126798 size:28382 flags:1 +ret: 0 st: 0 dts:0.400000 pts:-102481911520608.625000 pos:130237 size:29165 flags:1 ret: 0 st: 0 ts:-0.481667 flags:0 -ret: 0 st: 0 dts:0.000000 pts:-102481911520608.625000 pos:16384 size:16533 flags:1 +ret: 0 st: 0 dts:0.000000 pts:-102481911520608.625000 pos:15360 size:16239 flags:1 ret: 0 st: 0 ts:2.412500 flags:1 -ret: 0 st: 0 dts:1.840000 pts:-102481911520608.625000 pos:243886 size:13417 flags:1 +ret: 0 st: 0 dts:1.840000 pts:-102481911520608.625000 pos:241597 size:12278 flags:1 ret: 0 st:-1 ts:1.306672 flags:0 -ret: 0 st: 0 dts:1.360000 pts:-102481911520608.625000 pos:212709 size:13700 flags:1 +ret: 0 st: 0 dts:1.360000 pts:-102481911520608.625000 pos:212338 size:12777 flags:1 ret: 0 st:-1 ts:0.200839 flags:1 -ret: 0 st: 0 dts:0.000000 pts:-102481911520608.625000 pos:16384 size:16533 flags:1 +ret: 0 st: 0 dts:0.000000 pts:-102481911520608.625000 pos:15360 size:16239 flags:1 ret: 0 st: 0 ts:-0.904989 flags:0 -ret: 0 st: 0 dts:0.000000 pts:-102481911520608.625000 pos:16384 size:16533 flags:1 +ret: 0 st: 0 dts:0.000000 pts:-102481911520608.625000 pos:15360 size:16239 flags:1 ret: 0 st: 0 ts:1.989178 flags:1 -ret: 0 st: 0 dts:1.840000 pts:-102481911520608.625000 pos:243886 size:13417 flags:1 +ret: 0 st: 0 dts:1.840000 pts:-102481911520608.625000 pos:241597 size:12278 flags:1 ret: 0 st:-1 ts:0.883340 flags:0 -ret: 0 st: 0 dts:1.360000 pts:-102481911520608.625000 pos:212709 size:13700 flags:1 +ret: 0 st: 0 dts:1.360000 pts:-102481911520608.625000 pos:212338 size:12777 flags:1 ret:-1 st:-1 ts:-0.222493 flags:1 ret:-1 st: 0 ts:2.671678 flags:0 ret: 0 st: 0 ts:1.565844 flags:1 -ret: 0 st: 0 dts:1.360000 pts:-102481911520608.625000 pos:212709 size:13700 flags:1 +ret: 0 st: 0 dts:1.360000 pts:-102481911520608.625000 pos:212338 size:12777 flags:1 ret: 0 st:-1 ts:0.460008 flags:0 -ret: 0 st: 0 dts:0.880000 pts:-102481911520608.625000 pos:180160 size:14675 flags:1 +ret: 0 st: 0 dts:0.880000 pts:-102481911520608.625000 pos:181240 size:13625 flags:1 ret:-1 st:-1 ts:-0.645825 flags:1 ---------------- tests/data/a-mpeg2reuse.mpg @@ -1610,99 +1610,99 @@ ret: 0 st: 0 dts:0.880000 pts:0.880000 pos:64442 size:13382 flags:1 ret:-1 st:-1 ts:-0.645825 flags:1 ---------------- tests/data/a-mpeg4-adap.avi -ret: 0 st: 0 dts:0.000000 pts:0.000000 pos:5660 size:7585 flags:1 +ret: 0 st: 0 dts:0.000000 pts:0.000000 pos:5660 size:6855 flags:1 ret: 0 st:-1 ts:-1.000000 flags:0 -ret: 0 st: 0 dts:0.000000 pts:0.000000 pos:5660 size:7585 flags:1 +ret: 0 st: 0 dts:0.000000 pts:0.000000 pos:5660 size:6855 flags:1 ret: 0 st:-1 ts:1.894167 flags:1 -ret: 0 st: 0 dts:1.840000 pts:1.840000 pos:179806 size:15026 flags:1 +ret: 0 st: 0 dts:1.840000 pts:1.840000 pos:175668 size:16884 flags:1 ret: 0 st: 0 ts:0.800000 flags:0 -ret: 0 st: 0 dts:0.880000 pts:0.880000 pos:105940 size:15707 flags:1 +ret: 0 st: 0 dts:0.880000 pts:0.880000 pos:99006 size:16933 flags:1 ret:-1 st: 0 ts:-0.320000 flags:1 ret:-1 st:-1 ts:2.576668 flags:0 ret: 0 st:-1 ts:1.470835 flags:1 -ret: 0 st: 0 dts:1.360000 pts:1.360000 pos:143198 size:15479 flags:1 +ret: 0 st: 0 dts:1.360000 pts:1.360000 pos:136592 size:17435 flags:1 ret: 0 st: 0 ts:0.360000 flags:0 -ret: 0 st: 0 dts:0.400000 pts:0.400000 pos:65180 size:17617 flags:1 +ret: 0 st: 0 dts:0.400000 pts:0.400000 pos:59872 size:17261 flags:1 ret:-1 st: 0 ts:-0.760000 flags:1 ret:-1 st:-1 ts:2.153336 flags:0 ret: 0 st:-1 ts:1.047503 flags:1 -ret: 0 st: 0 dts:0.880000 pts:0.880000 pos:105940 size:15707 flags:1 +ret: 0 st: 0 dts:0.880000 pts:0.880000 pos:99006 size:16933 flags:1 ret: 0 st: 0 ts:-0.040000 flags:0 -ret: 0 st: 0 dts:0.000000 pts:0.000000 pos:5660 size:7585 flags:1 +ret: 0 st: 0 dts:0.000000 pts:0.000000 pos:5660 size:6855 flags:1 ret: 0 st: 0 ts:2.840000 flags:1 -ret: 0 st: 0 dts:1.840000 pts:1.840000 pos:179806 size:15026 flags:1 +ret: 0 st: 0 dts:1.840000 pts:1.840000 pos:175668 size:16884 flags:1 ret: 0 st:-1 ts:1.730004 flags:0 -ret: 0 st: 0 dts:1.840000 pts:1.840000 pos:179806 size:15026 flags:1 +ret: 0 st: 0 dts:1.840000 pts:1.840000 pos:175668 size:16884 flags:1 ret: 0 st:-1 ts:0.624171 flags:1 -ret: 0 st: 0 dts:0.400000 pts:0.400000 pos:65180 size:17617 flags:1 +ret: 0 st: 0 dts:0.400000 pts:0.400000 pos:59872 size:17261 flags:1 ret: 0 st: 0 ts:-0.480000 flags:0 -ret: 0 st: 0 dts:0.000000 pts:0.000000 pos:5660 size:7585 flags:1 +ret: 0 st: 0 dts:0.000000 pts:0.000000 pos:5660 size:6855 flags:1 ret: 0 st: 0 ts:2.400000 flags:1 -ret: 0 st: 0 dts:1.840000 pts:1.840000 pos:179806 size:15026 flags:1 +ret: 0 st: 0 dts:1.840000 pts:1.840000 pos:175668 size:16884 flags:1 ret: 0 st:-1 ts:1.306672 flags:0 -ret: 0 st: 0 dts:1.360000 pts:1.360000 pos:143198 size:15479 flags:1 +ret: 0 st: 0 dts:1.360000 pts:1.360000 pos:136592 size:17435 flags:1 ret: 0 st:-1 ts:0.200839 flags:1 -ret: 0 st: 0 dts:0.000000 pts:0.000000 pos:5660 size:7585 flags:1 +ret: 0 st: 0 dts:0.000000 pts:0.000000 pos:5660 size:6855 flags:1 ret: 0 st: 0 ts:-0.920000 flags:0 -ret: 0 st: 0 dts:0.000000 pts:0.000000 pos:5660 size:7585 flags:1 +ret: 0 st: 0 dts:0.000000 pts:0.000000 pos:5660 size:6855 flags:1 ret: 0 st: 0 ts:2.000000 flags:1 -ret: 0 st: 0 dts:1.840000 pts:1.840000 pos:179806 size:15026 flags:1 +ret: 0 st: 0 dts:1.840000 pts:1.840000 pos:175668 size:16884 flags:1 ret: 0 st:-1 ts:0.883340 flags:0 -ret: 0 st: 0 dts:0.880000 pts:0.880000 pos:105940 size:15707 flags:1 +ret: 0 st: 0 dts:0.880000 pts:0.880000 pos:99006 size:16933 flags:1 ret:-1 st:-1 ts:-0.222493 flags:1 ret:-1 st: 0 ts:2.680000 flags:0 ret: 0 st: 0 ts:1.560000 flags:1 -ret: 0 st: 0 dts:1.360000 pts:1.360000 pos:143198 size:15479 flags:1 +ret: 0 st: 0 dts:1.360000 pts:1.360000 pos:136592 size:17435 flags:1 ret: 0 st:-1 ts:0.460008 flags:0 -ret: 0 st: 0 dts:0.880000 pts:0.880000 pos:105940 size:15707 flags:1 +ret: 0 st: 0 dts:0.880000 pts:0.880000 pos:99006 size:16933 flags:1 ret:-1 st:-1 ts:-0.645825 flags:1 ---------------- tests/data/a-mpeg4-adv.avi -ret: 0 st: 0 dts:0.000000 pts:0.000000 pos:5660 size:9113 flags:1 +ret: 0 st: 0 dts:0.000000 pts:0.000000 pos:5660 size:8653 flags:1 ret: 0 st:-1 ts:-1.000000 flags:0 -ret: 0 st: 0 dts:0.000000 pts:0.000000 pos:5660 size:9113 flags:1 +ret: 0 st: 0 dts:0.000000 pts:0.000000 pos:5660 size:8653 flags:1 ret: 0 st:-1 ts:1.894167 flags:1 -ret: 0 st: 0 dts:1.440000 pts:1.440000 pos:113792 size:11823 flags:1 +ret: 0 st: 0 dts:1.440000 pts:1.440000 pos:91730 size:11013 flags:1 ret: 0 st: 0 ts:0.800000 flags:0 -ret: 0 st: 0 dts:0.960000 pts:0.960000 pos:73412 size:10675 flags:1 +ret: 0 st: 0 dts:0.960000 pts:0.960000 pos:59504 size:9815 flags:1 ret:-1 st: 0 ts:-0.320000 flags:1 ret:-1 st:-1 ts:2.576668 flags:0 ret: 0 st:-1 ts:1.470835 flags:1 -ret: 0 st: 0 dts:1.440000 pts:1.440000 pos:113792 size:11823 flags:1 +ret: 0 st: 0 dts:1.440000 pts:1.440000 pos:91730 size:11013 flags:1 ret: 0 st: 0 ts:0.360000 flags:0 -ret: 0 st: 0 dts:0.480000 pts:0.480000 pos:38332 size:9635 flags:1 +ret: 0 st: 0 dts:0.480000 pts:0.480000 pos:31944 size:8753 flags:1 ret:-1 st: 0 ts:-0.760000 flags:1 ret:-1 st:-1 ts:2.153336 flags:0 ret: 0 st:-1 ts:1.047503 flags:1 -ret: 0 st: 0 dts:0.960000 pts:0.960000 pos:73412 size:10675 flags:1 +ret: 0 st: 0 dts:0.960000 pts:0.960000 pos:59504 size:9815 flags:1 ret: 0 st: 0 ts:-0.040000 flags:0 -ret: 0 st: 0 dts:0.000000 pts:0.000000 pos:5660 size:9113 flags:1 +ret: 0 st: 0 dts:0.000000 pts:0.000000 pos:5660 size:8653 flags:1 ret: 0 st: 0 ts:2.840000 flags:1 -ret: 0 st: 0 dts:1.920000 pts:1.920000 pos:157906 size:12122 flags:1 +ret: 0 st: 0 dts:1.920000 pts:1.920000 pos:127624 size:11279 flags:1 ret: 0 st:-1 ts:1.730004 flags:0 -ret: 0 st: 0 dts:1.920000 pts:1.920000 pos:157906 size:12122 flags:1 +ret: 0 st: 0 dts:1.920000 pts:1.920000 pos:127624 size:11279 flags:1 ret: 0 st:-1 ts:0.624171 flags:1 -ret: 0 st: 0 dts:0.480000 pts:0.480000 pos:38332 size:9635 flags:1 +ret: 0 st: 0 dts:0.480000 pts:0.480000 pos:31944 size:8753 flags:1 ret: 0 st: 0 ts:-0.480000 flags:0 -ret: 0 st: 0 dts:0.000000 pts:0.000000 pos:5660 size:9113 flags:1 +ret: 0 st: 0 dts:0.000000 pts:0.000000 pos:5660 size:8653 flags:1 ret: 0 st: 0 ts:2.400000 flags:1 -ret: 0 st: 0 dts:1.920000 pts:1.920000 pos:157906 size:12122 flags:1 +ret: 0 st: 0 dts:1.920000 pts:1.920000 pos:127624 size:11279 flags:1 ret: 0 st:-1 ts:1.306672 flags:0 -ret: 0 st: 0 dts:1.440000 pts:1.440000 pos:113792 size:11823 flags:1 +ret: 0 st: 0 dts:1.440000 pts:1.440000 pos:91730 size:11013 flags:1 ret: 0 st:-1 ts:0.200839 flags:1 -ret: 0 st: 0 dts:0.000000 pts:0.000000 pos:5660 size:9113 flags:1 +ret: 0 st: 0 dts:0.000000 pts:0.000000 pos:5660 size:8653 flags:1 ret: 0 st: 0 ts:-0.920000 flags:0 -ret: 0 st: 0 dts:0.000000 pts:0.000000 pos:5660 size:9113 flags:1 +ret: 0 st: 0 dts:0.000000 pts:0.000000 pos:5660 size:8653 flags:1 ret: 0 st: 0 ts:2.000000 flags:1 -ret: 0 st: 0 dts:1.920000 pts:1.920000 pos:157906 size:12122 flags:1 +ret: 0 st: 0 dts:1.920000 pts:1.920000 pos:127624 size:11279 flags:1 ret: 0 st:-1 ts:0.883340 flags:0 -ret: 0 st: 0 dts:0.960000 pts:0.960000 pos:73412 size:10675 flags:1 +ret: 0 st: 0 dts:0.960000 pts:0.960000 pos:59504 size:9815 flags:1 ret:-1 st:-1 ts:-0.222493 flags:1 ret:-1 st: 0 ts:2.680000 flags:0 ret: 0 st: 0 ts:1.560000 flags:1 -ret: 0 st: 0 dts:1.440000 pts:1.440000 pos:113792 size:11823 flags:1 +ret: 0 st: 0 dts:1.440000 pts:1.440000 pos:91730 size:11013 flags:1 ret: 0 st:-1 ts:0.460008 flags:0 -ret: 0 st: 0 dts:0.480000 pts:0.480000 pos:38332 size:9635 flags:1 +ret: 0 st: 0 dts:0.480000 pts:0.480000 pos:31944 size:8753 flags:1 ret:-1 st:-1 ts:-0.645825 flags:1 ---------------- tests/data/a-mpeg4-nr.avi @@ -1754,51 +1754,51 @@ ret: 0 st: 0 dts:0.480000 pts:0.480000 pos:35312 size:9987 flags:1 ret:-1 st:-1 ts:-0.645825 flags:1 ---------------- tests/data/a-mpeg4-qprd.avi -ret: 0 st: 0 dts:0.000000 pts:0.000000 pos:5660 size:14733 flags:1 +ret: 0 st: 0 dts:0.000000 pts:0.000000 pos:5660 size:14873 flags:1 ret: 0 st:-1 ts:-1.000000 flags:0 -ret: 0 st: 0 dts:0.000000 pts:0.000000 pos:5660 size:14733 flags:1 +ret: 0 st: 0 dts:0.000000 pts:0.000000 pos:5660 size:14873 flags:1 ret: 0 st:-1 ts:1.894167 flags:1 -ret: 0 st: 0 dts:1.840000 pts:1.840000 pos:215682 size:13021 flags:1 +ret: 0 st: 0 dts:1.840000 pts:1.840000 pos:215220 size:13087 flags:1 ret: 0 st: 0 ts:0.800000 flags:0 -ret: 0 st: 0 dts:0.880000 pts:0.880000 pos:159178 size:12966 flags:1 +ret: 0 st: 0 dts:0.880000 pts:0.880000 pos:159706 size:12679 flags:1 ret:-1 st: 0 ts:-0.320000 flags:1 ret:-1 st:-1 ts:2.576668 flags:0 ret: 0 st:-1 ts:1.470835 flags:1 -ret: 0 st: 0 dts:1.360000 pts:1.360000 pos:187456 size:12719 flags:1 +ret: 0 st: 0 dts:1.360000 pts:1.360000 pos:187334 size:12986 flags:1 ret: 0 st: 0 ts:0.360000 flags:0 -ret: 0 st: 0 dts:0.400000 pts:0.400000 pos:99344 size:27633 flags:1 +ret: 0 st: 0 dts:0.400000 pts:0.400000 pos:99648 size:29366 flags:1 ret:-1 st: 0 ts:-0.760000 flags:1 ret:-1 st:-1 ts:2.153336 flags:0 ret: 0 st:-1 ts:1.047503 flags:1 -ret: 0 st: 0 dts:0.880000 pts:0.880000 pos:159178 size:12966 flags:1 +ret: 0 st: 0 dts:0.880000 pts:0.880000 pos:159706 size:12679 flags:1 ret: 0 st: 0 ts:-0.040000 flags:0 -ret: 0 st: 0 dts:0.000000 pts:0.000000 pos:5660 size:14733 flags:1 +ret: 0 st: 0 dts:0.000000 pts:0.000000 pos:5660 size:14873 flags:1 ret: 0 st: 0 ts:2.840000 flags:1 -ret: 0 st: 0 dts:1.840000 pts:1.840000 pos:215682 size:13021 flags:1 +ret: 0 st: 0 dts:1.840000 pts:1.840000 pos:215220 size:13087 flags:1 ret: 0 st:-1 ts:1.730004 flags:0 -ret: 0 st: 0 dts:1.840000 pts:1.840000 pos:215682 size:13021 flags:1 +ret: 0 st: 0 dts:1.840000 pts:1.840000 pos:215220 size:13087 flags:1 ret: 0 st:-1 ts:0.624171 flags:1 -ret: 0 st: 0 dts:0.400000 pts:0.400000 pos:99344 size:27633 flags:1 +ret: 0 st: 0 dts:0.400000 pts:0.400000 pos:99648 size:29366 flags:1 ret: 0 st: 0 ts:-0.480000 flags:0 -ret: 0 st: 0 dts:0.000000 pts:0.000000 pos:5660 size:14733 flags:1 +ret: 0 st: 0 dts:0.000000 pts:0.000000 pos:5660 size:14873 flags:1 ret: 0 st: 0 ts:2.400000 flags:1 -ret: 0 st: 0 dts:1.840000 pts:1.840000 pos:215682 size:13021 flags:1 +ret: 0 st: 0 dts:1.840000 pts:1.840000 pos:215220 size:13087 flags:1 ret: 0 st:-1 ts:1.306672 flags:0 -ret: 0 st: 0 dts:1.360000 pts:1.360000 pos:187456 size:12719 flags:1 +ret: 0 st: 0 dts:1.360000 pts:1.360000 pos:187334 size:12986 flags:1 ret: 0 st:-1 ts:0.200839 flags:1 -ret: 0 st: 0 dts:0.000000 pts:0.000000 pos:5660 size:14733 flags:1 +ret: 0 st: 0 dts:0.000000 pts:0.000000 pos:5660 size:14873 flags:1 ret: 0 st: 0 ts:-0.920000 flags:0 -ret: 0 st: 0 dts:0.000000 pts:0.000000 pos:5660 size:14733 flags:1 +ret: 0 st: 0 dts:0.000000 pts:0.000000 pos:5660 size:14873 flags:1 ret: 0 st: 0 ts:2.000000 flags:1 -ret: 0 st: 0 dts:1.840000 pts:1.840000 pos:215682 size:13021 flags:1 +ret: 0 st: 0 dts:1.840000 pts:1.840000 pos:215220 size:13087 flags:1 ret: 0 st:-1 ts:0.883340 flags:0 -ret: 0 st: 0 dts:0.880000 pts:0.880000 pos:159178 size:12966 flags:1 +ret: 0 st: 0 dts:0.880000 pts:0.880000 pos:159706 size:12679 flags:1 ret:-1 st:-1 ts:-0.222493 flags:1 ret:-1 st: 0 ts:2.680000 flags:0 ret: 0 st: 0 ts:1.560000 flags:1 -ret: 0 st: 0 dts:1.360000 pts:1.360000 pos:187456 size:12719 flags:1 +ret: 0 st: 0 dts:1.360000 pts:1.360000 pos:187334 size:12986 flags:1 ret: 0 st:-1 ts:0.460008 flags:0 -ret: 0 st: 0 dts:0.880000 pts:0.880000 pos:159178 size:12966 flags:1 +ret: 0 st: 0 dts:0.880000 pts:0.880000 pos:159706 size:12679 flags:1 ret:-1 st:-1 ts:-0.645825 flags:1 ---------------- tests/data/a-mpeg4-rc.avi @@ -1850,51 +1850,51 @@ ret: 0 st: 0 dts:0.880000 pts:0.880000 pos:154792 size:13382 flags:1 ret:-1 st:-1 ts:-0.645825 flags:1 ---------------- tests/data/a-mpeg4-thread.avi -ret: 0 st: 0 dts:0.000000 pts:0.000000 pos:5660 size:14645 flags:1 +ret: 0 st: 0 dts:0.000000 pts:0.000000 pos:5660 size:14874 flags:1 ret: 0 st:-1 ts:-1.000000 flags:0 -ret: 0 st: 0 dts:0.000000 pts:0.000000 pos:5660 size:14645 flags:1 +ret: 0 st: 0 dts:0.000000 pts:0.000000 pos:5660 size:14874 flags:1 ret: 0 st:-1 ts:1.894167 flags:1 -ret: 0 st: 0 dts:1.840000 pts:1.840000 pos:231720 size:13475 flags:1 +ret: 0 st: 0 dts:1.840000 pts:1.840000 pos:229568 size:14638 flags:1 ret: 0 st: 0 ts:0.800000 flags:0 -ret: 0 st: 0 dts:0.880000 pts:0.880000 pos:167150 size:15185 flags:1 +ret: 0 st: 0 dts:0.880000 pts:0.880000 pos:163772 size:16380 flags:1 ret:-1 st: 0 ts:-0.320000 flags:1 ret:-1 st:-1 ts:2.576668 flags:0 ret: 0 st:-1 ts:1.470835 flags:1 -ret: 0 st: 0 dts:1.360000 pts:1.360000 pos:201000 size:13196 flags:1 +ret: 0 st: 0 dts:1.360000 pts:1.360000 pos:196664 size:16051 flags:1 ret: 0 st: 0 ts:0.360000 flags:0 -ret: 0 st: 0 dts:0.400000 pts:0.400000 pos:101456 size:30636 flags:1 +ret: 0 st: 0 dts:0.400000 pts:0.400000 pos:98760 size:33020 flags:1 ret:-1 st: 0 ts:-0.760000 flags:1 ret:-1 st:-1 ts:2.153336 flags:0 ret: 0 st:-1 ts:1.047503 flags:1 -ret: 0 st: 0 dts:0.880000 pts:0.880000 pos:167150 size:15185 flags:1 +ret: 0 st: 0 dts:0.880000 pts:0.880000 pos:163772 size:16380 flags:1 ret: 0 st: 0 ts:-0.040000 flags:0 -ret: 0 st: 0 dts:0.000000 pts:0.000000 pos:5660 size:14645 flags:1 +ret: 0 st: 0 dts:0.000000 pts:0.000000 pos:5660 size:14874 flags:1 ret: 0 st: 0 ts:2.840000 flags:1 -ret: 0 st: 0 dts:1.840000 pts:1.840000 pos:231720 size:13475 flags:1 +ret: 0 st: 0 dts:1.840000 pts:1.840000 pos:229568 size:14638 flags:1 ret: 0 st:-1 ts:1.730004 flags:0 -ret: 0 st: 0 dts:1.840000 pts:1.840000 pos:231720 size:13475 flags:1 +ret: 0 st: 0 dts:1.840000 pts:1.840000 pos:229568 size:14638 flags:1 ret: 0 st:-1 ts:0.624171 flags:1 -ret: 0 st: 0 dts:0.400000 pts:0.400000 pos:101456 size:30636 flags:1 +ret: 0 st: 0 dts:0.400000 pts:0.400000 pos:98760 size:33020 flags:1 ret: 0 st: 0 ts:-0.480000 flags:0 -ret: 0 st: 0 dts:0.000000 pts:0.000000 pos:5660 size:14645 flags:1 +ret: 0 st: 0 dts:0.000000 pts:0.000000 pos:5660 size:14874 flags:1 ret: 0 st: 0 ts:2.400000 flags:1 -ret: 0 st: 0 dts:1.840000 pts:1.840000 pos:231720 size:13475 flags:1 +ret: 0 st: 0 dts:1.840000 pts:1.840000 pos:229568 size:14638 flags:1 ret: 0 st:-1 ts:1.306672 flags:0 -ret: 0 st: 0 dts:1.360000 pts:1.360000 pos:201000 size:13196 flags:1 +ret: 0 st: 0 dts:1.360000 pts:1.360000 pos:196664 size:16051 flags:1 ret: 0 st:-1 ts:0.200839 flags:1 -ret: 0 st: 0 dts:0.000000 pts:0.000000 pos:5660 size:14645 flags:1 +ret: 0 st: 0 dts:0.000000 pts:0.000000 pos:5660 size:14874 flags:1 ret: 0 st: 0 ts:-0.920000 flags:0 -ret: 0 st: 0 dts:0.000000 pts:0.000000 pos:5660 size:14645 flags:1 +ret: 0 st: 0 dts:0.000000 pts:0.000000 pos:5660 size:14874 flags:1 ret: 0 st: 0 ts:2.000000 flags:1 -ret: 0 st: 0 dts:1.840000 pts:1.840000 pos:231720 size:13475 flags:1 +ret: 0 st: 0 dts:1.840000 pts:1.840000 pos:229568 size:14638 flags:1 ret: 0 st:-1 ts:0.883340 flags:0 -ret: 0 st: 0 dts:0.880000 pts:0.880000 pos:167150 size:15185 flags:1 +ret: 0 st: 0 dts:0.880000 pts:0.880000 pos:163772 size:16380 flags:1 ret:-1 st:-1 ts:-0.222493 flags:1 ret:-1 st: 0 ts:2.680000 flags:0 ret: 0 st: 0 ts:1.560000 flags:1 -ret: 0 st: 0 dts:1.360000 pts:1.360000 pos:201000 size:13196 flags:1 +ret: 0 st: 0 dts:1.360000 pts:1.360000 pos:196664 size:16051 flags:1 ret: 0 st:-1 ts:0.460008 flags:0 -ret: 0 st: 0 dts:0.880000 pts:0.880000 pos:167150 size:15185 flags:1 +ret: 0 st: 0 dts:0.880000 pts:0.880000 pos:163772 size:16380 flags:1 ret:-1 st:-1 ts:-0.645825 flags:1 ---------------- tests/data/a-msmpeg4.avi