[FFmpeg-devel] [PATCH] h264: integrate clear_blocks calls with IDCT.

Michael Niedermayer michaelni at gmx.at
Tue Feb 19 03:33:55 CET 2013


On Mon, Feb 18, 2013 at 04:50:14PM -0800, Ronald S. Bultje wrote:
> From: "Ronald S. Bultje" <rsbultje at gmail.com>
> 
> The non-intra-pcm branch in hl_decode_mb (simple, 8bpp) goes from 700
> to 672 cycles, and the complete loop of decode_mb_cabac and hl_decode_mb
> (in the decode_slice loop) goes from 1759 to 1733 cycles on the clip
> tested (cathedral), i.e. almost 30 cycles per mb faster.
> ---
>  libavcodec/arm/h264idct_neon.S     |  25 ++++++---
>  libavcodec/h264.c                  |  14 ++---
>  libavcodec/h264_mb_template.c      |  11 +---
>  libavcodec/h264addpx_template.c    |   4 ++
>  libavcodec/h264dsp.c               |   4 +-
>  libavcodec/h264dsp.h               |   4 +-
>  libavcodec/h264idct_template.c     |  16 ++++--
>  libavcodec/h264pred.h              |   8 +--
>  libavcodec/h264pred_template.c     |  28 ++++++----
>  libavcodec/ppc/h264_altivec.c      |   3 ++
>  libavcodec/svq3.c                  |   4 +-
>  libavcodec/x86/h264_idct.asm       | 108 ++++++++++++++++++++++++++++---------
>  libavcodec/x86/h264_idct_10bit.asm |  53 ++++++++++++++++--
>  13 files changed, 205 insertions(+), 77 deletions(-)

on x86, svq3_watermark.mov still shows artifacts

on arm many h264 tests fail, random example below:
(i didnt spot any segfaults, but the tests didnt finish yet)

--- ffmpeg/tests/ref/fate/h264-conformance-frext-frext_mmco4_sony_b    2013-02-19 01:03:50.269711778 +0100
+++ tests/data/fate/h264-conformance-frext-frext_mmco4_sony_b   2013-02-19 03:25:34.873890947 +0100
@@ -1,61 +1,61 @@
 #tb 0: 1/25
-0,          0,          0,        1,   152064, 0x24846654
-0,          1,          1,        1,   152064, 0xd33945be
-0,          2,          2,        1,   152064, 0x961cbbfb
-0,          3,          3,        1,   152064, 0x91eb854d
-0,          4,          4,        1,   152064, 0x998351b4
-0,          5,          5,        1,   152064, 0xe7515c67
-0,          6,          6,        1,   152064, 0xd32058ae
-0,          7,          7,        1,   152064, 0x99cb5695
-0,          8,          8,        1,   152064, 0x281de175
-0,          9,          9,        1,   152064, 0xf4146f55
-0,         10,         10,        1,   152064, 0x63abbb61
-0,         11,         11,        1,   152064, 0xf44550c5
-0,         12,         12,        1,   152064, 0x5797a5c2
-0,         13,         13,        1,   152064, 0x13b15c60
-0,         14,         14,        1,   152064, 0x6521e682
-0,         15,         15,        1,   152064, 0x780c32a4
-0,         16,         16,        1,   152064, 0x6289f37c
-0,         17,         17,        1,   152064, 0x96d64d81
-0,         18,         18,        1,   152064, 0x12ac80ef
-0,         19,         19,        1,   152064, 0x470956e4
-0,         20,         20,        1,   152064, 0x3954f944
-0,         21,         21,        1,   152064, 0x2147f0db
-0,         22,         22,        1,   152064, 0xca7c9a39
-0,         23,         23,        1,   152064, 0x727e7772
-0,         24,         24,        1,   152064, 0xb3b0f8c8
-0,         25,         25,        1,   152064, 0x6d6eb7ba
-0,         26,         26,        1,   152064, 0x1eaf5734
-0,         27,         27,        1,   152064, 0xd7938056
-0,         28,         28,        1,   152064, 0xcae1ead3
-0,         29,         29,        1,   152064, 0x6411b82c
-0,         30,         30,        1,   152064, 0x6f001718
-0,         31,         31,        1,   152064, 0x3724d9b8
-0,         32,         32,        1,   152064, 0x04501fec
-0,         33,         33,        1,   152064, 0x3f4d13bb
-0,         34,         34,        1,   152064, 0x38f2510a
-0,         35,         35,        1,   152064, 0x5bb71106
-0,         36,         36,        1,   152064, 0xe888b09d
-0,         37,         37,        1,   152064, 0xca6f5f6a
-0,         38,         38,        1,   152064, 0x01c7d329
-0,         39,         39,        1,   152064, 0x4e670932
-0,         40,         40,        1,   152064, 0x651b4984
-0,         41,         41,        1,   152064, 0x76371fa3
-0,         42,         42,        1,   152064, 0x60574af0
-0,         43,         43,        1,   152064, 0xcc1f2080
-0,         44,         44,        1,   152064, 0xdbf29eb6
-0,         45,         45,        1,   152064, 0x8ff870be
-0,         46,         46,        1,   152064, 0x5d39ea56
-0,         47,         47,        1,   152064, 0xabb7c0a5
-0,         48,         48,        1,   152064, 0xecb15771
-0,         49,         49,        1,   152064, 0x571ab1ae
-0,         50,         50,        1,   152064, 0xc0f22bad
-0,         51,         51,        1,   152064, 0x22e7593f
-0,         52,         52,        1,   152064, 0x3c3dee75
-0,         53,         53,        1,   152064, 0x1c80b995
-0,         54,         54,        1,   152064, 0x5ba442fa
-0,         55,         55,        1,   152064, 0xe2291c05
-0,         56,         56,        1,   152064, 0xa780b11e
-0,         57,         57,        1,   152064, 0x15bf83fa
-0,         58,         58,        1,   152064, 0x60fb7c11
-0,         59,         59,        1,   152064, 0x3fb8cee5
+0,          0,          0,        1,   152064, 0x07ba97a3
+0,          1,          1,        1,   152064, 0x36d54b72
+0,          2,          2,        1,   152064, 0x71e68289
+0,          3,          3,        1,   152064, 0x4eddc5bc
+0,          4,          4,        1,   152064, 0x60510fa7
+0,          5,          5,        1,   152064, 0xb9b00e87
+0,          6,          6,        1,   152064, 0x93856465
+0,          7,          7,        1,   152064, 0xee2bfd9c
+0,          8,          8,        1,   152064, 0x359c4171
+0,          9,          9,        1,   152064, 0xab1d7f8e
+0,         10,         10,        1,   152064, 0x5ba19a95
+0,         11,         11,        1,   152064, 0xf9602415
+0,         12,         12,        1,   152064, 0x50bfb92e
+0,         13,         13,        1,   152064, 0xeab46e77
+0,         14,         14,        1,   152064, 0xcad19286
+0,         15,         15,        1,   152064, 0xf6977ca8
+0,         16,         16,        1,   152064, 0x7dd6dfb4
+0,         17,         17,        1,   152064, 0xc42d634d
+0,         18,         18,        1,   152064, 0x9b4a5e7c
+0,         19,         19,        1,   152064, 0xab8ae045
+0,         20,         20,        1,   152064, 0x2880c285
+0,         21,         21,        1,   152064, 0xb2799c00
+0,         22,         22,        1,   152064, 0x2bd360b3
+0,         23,         23,        1,   152064, 0xfbc3de30
+0,         24,         24,        1,   152064, 0x83651fa1
+0,         25,         25,        1,   152064, 0x235a2b0e
+0,         26,         26,        1,   152064, 0x46dd59de
+0,         27,         27,        1,   152064, 0xa65776ec
+0,         28,         28,        1,   152064, 0x4c2664e6
+0,         29,         29,        1,   152064, 0x61a08fdf
+0,         30,         30,        1,   152064, 0x039fd408
+0,         31,         31,        1,   152064, 0xeaf266d2
+0,         32,         32,        1,   152064, 0xd0064f4b
+0,         33,         33,        1,   152064, 0x585d3176
+0,         34,         34,        1,   152064, 0xd951e9e4
+0,         35,         35,        1,   152064, 0xf9fc8295
+0,         36,         36,        1,   152064, 0xddb31ca2
+0,         37,         37,        1,   152064, 0x3317b6e1
+0,         38,         38,        1,   152064, 0xfb353e5c
+0,         39,         39,        1,   152064, 0xdd1d47f3
+0,         40,         40,        1,   152064, 0x2826c3bf
+0,         41,         41,        1,   152064, 0xccde4ca0
+0,         42,         42,        1,   152064, 0x06430283
+0,         43,         43,        1,   152064, 0xd5579a9b
+0,         44,         44,        1,   152064, 0x0f99ad7b
+0,         45,         45,        1,   152064, 0xa21b8419
+0,         46,         46,        1,   152064, 0xd37b7cec
+0,         47,         47,        1,   152064, 0x22bbfd3f
+0,         48,         48,        1,   152064, 0x6df32b91
+0,         49,         49,        1,   152064, 0xd0753615
+0,         50,         50,        1,   152064, 0x5e26507e
+0,         51,         51,        1,   152064, 0x797aa7e6
+0,         52,         52,        1,   152064, 0xb924b517
+0,         53,         53,        1,   152064, 0xa77d0e9c
+0,         54,         54,        1,   152064, 0x3c8358a7
+0,         55,         55,        1,   152064, 0x2f9ce8d2
+0,         56,         56,        1,   152064, 0x612f3283
+0,         57,         57,        1,   152064, 0xf4985ba3
+0,         58,         58,        1,   152064, 0x1cd81827
+0,         59,         59,        1,   152064, 0x9b4a7f7b
Test h264-conformance-frext-frext_mmco4_sony_b failed. Look at tests/data/fate/h264-conformance-frext-frext_mmco4_sony_b.err for details.

[...]
-- 
Michael     GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB

DNS cache poisoning attacks, popular search engine, Google internet authority
dont be evil, please
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 198 bytes
Desc: Digital signature
URL: <http://ffmpeg.org/pipermail/ffmpeg-devel/attachments/20130219/51359e35/attachment.asc>


More information about the ffmpeg-devel mailing list