10851 Commits

Author SHA1 Message Date
Scott LaVarnway
545be78136 Added vp9_sad8x8_neon()
Change-Id: I3be8911121ef9a5f39f6c1a2e28f9e00972e0624
2014-08-01 06:36:18 -07:00
Tom Finegan
3249f26ff8 Merge "vp9_spatial_svc_encoder.sh: Prevent failures when ssvc is unavailable." 2014-07-30 21:07:43 -07:00
James Zern
d6f3d7bdbb Merge "configure.sh: avoid test -a/-o for compatibility" 2014-07-30 17:49:01 -07:00
Tom Finegan
166b62346b vp9_spatial_svc_encoder.sh: Prevent failures when ssvc is unavailable.
Avoid running the tests when CONFIG_SPATIAL_SVC is 0.

Change-Id: I9b87ed206a9ba7de6827594fba275bd3f60faf2d
2014-07-30 15:27:08 -07:00
Jingning Han
a3b062c56f Merge "Chessboard pattern partition search" 2014-07-30 14:34:42 -07:00
Pengchong Jin
7f29d22e51 Merge "Early termination after partition NONE is done in RD." 2014-07-30 13:35:02 -07:00
Johann
f6bf5f55ba Merge "Remove copy frame neon" 2014-07-30 13:24:16 -07:00
Johann
5a0f11201b Merge "Remove unused copy src frame function" 2014-07-30 13:23:18 -07:00
Johann
a984c86a37 Merge "Add test for vp8 copy frame" 2014-07-30 13:22:50 -07:00
James Zern
d1403eafb5 Merge "vp9_cx_iface: defer compressed data buffer alloc" 2014-07-30 12:03:45 -07:00
Pengchong Jin
49866baae6 Early termination after partition NONE is done in RD.
This patch allows the encoder to skip the search for partition
SPLIT, HORZ, VERT after the search for partition NONE is done
in RD optimization. It uses the first pass block-wise statistics
to make the decision. If all 16x16 blocks in the current partition
have zero motions and small residues from the frist pass statistics,
and it has small difference variance, further partition search is
skipped.

For speed 2 setting, experiments on general youtube clips show that
the speedup varies from 1% - 10%, 5% on average. On the performance
side in PSNR, derf 0.004%, yt -0.059%, hd -0.106%, stdhd 0.032%.

For hard stdhd clips:
park_joy_1080p, 502952 ms -> 503307 ms (-0.07%)
pedestrian_area_1080p, 227049 ms -> 220531 ms (+3%)

This feature is under the compilation flag CONFIG_FP_MB_STATS and
it is off in current setting.

Change-Id: I554537e9242178263b65ebe14a04f9c221b58bae
2014-07-30 11:54:49 -07:00
Frank Galligan
81c2db591f Merge "Neon version of vp9_quantize_fp()" 2014-07-30 11:12:20 -07:00
James Zern
c71b8a72f2 Merge changes I3513ae17,Ia0b51165,I461d8b3d
* changes:
  make testdata: look for other variants of sha1sum
  make testdata: fail if a sha1 fails or is missing
  test-data.sha1: add missing checksums
2014-07-30 11:04:26 -07:00
James Zern
583ed8562b Merge "decode_to_md5.sh: fix local md5 variable assignment" 2014-07-30 10:55:11 -07:00
James Zern
c0348216c3 decode_to_md5.sh: fix local md5 variable assignment
extract only the md5 + quote the result
fixes:
test/examples.sh: 47: local: img-176x144-0029.i420: bad variable name

Change-Id: I81c6a83c8a4e792a520fd7046c8eedcbd4af9a0c
2014-07-30 10:50:01 -07:00
Marco Paniconi
347c8cf68f Merge "Fix to Visual Studio build error." 2014-07-30 10:33:35 -07:00
Jingning Han
ca2dcb7fed Chessboard pattern partition search
This commit enables a chessboard pattern constrained partition
search for 720p and above resolutions. The scheme applies stricter
partition search to alternative blocks based on its above/left
neighboring blocks' partition range, as well as that of the
collocated blocks in the previous frame. It is currently turned
on at 16x16 block size level. The chessboard pattern is flipped
per coding frame.

The speed 3 runtime is reduced:
park_joy_1080p, 652832 ms -> 607738 ms (7% speed-up)
pedestrian_area_1080p, 215998 ms -> 200589 ms (8% speed-up)

The compression performance is changed:
hd     -0.223%
stdhd  -0.295%

Change-Id: I2d4d123ae89f7171562f618febb4d81789575b19
2014-07-30 10:32:41 -07:00
Jingning Han
e9935a4ca0 Merge "Clean up max/min allowed block size in rd_pick_partition" 2014-07-30 10:05:26 -07:00
Jingning Han
22cf82a14c Merge "Use frame index directly in get_chessboard_index" 2014-07-30 10:05:03 -07:00
Jim Bankoski
e71adcd834 Merge "clear up cfg unused warning in vp9_pick_inter_mode" 2014-07-30 09:56:33 -07:00
Scott LaVarnway
d4a37db5b8 Neon version of vp9_quantize_fp()
On a Nexus 7, vpxenc (in realtime mode, speed -12)
reported a performance improvement of ~12.4%

Change-Id: Id29d215acf58bb108489e218a259adf74b4768d7
2014-07-30 09:33:46 -07:00
Marco Paniconi
fbaa4b84af Fix to Visual Studio build error.
signed/unsigned mismatch from commit: 918011.

Change-Id: I6b9bb3618f8e72ea4cc0e6ba8fb9b13676985ed0
2014-07-30 09:14:56 -07:00
Jim Bankoski
6647ca795d clear up cfg unused warning in vp9_pick_inter_mode
Change-Id: Iefcf0a25aaf5e44e8e791839aa82d876555025e0
2014-07-30 08:55:22 -07:00
Scott LaVarnway
521cf7e879 Neon version of vp9_sub_pixel_variance16x16(),
vp9_variance16x16(), and vp9_get16x16var().

On a Nexus 7, vpxenc (in realtime mode, speed -12)
reported a performance improvement of ~16.7%.

Change-Id: Ib163aa99f56e680194aabe00dacdd7f0899a4ecb
2014-07-30 08:17:32 -07:00
James Zern
8753f9c5e3 configure.sh: avoid test -a/-o for compatibility
Change-Id: I0bea5cbccd6938fb967299c1d903b60dd2096ccc
2014-07-29 23:25:15 -07:00
James Zern
d6fd2293ea make testdata: look for other variants of sha1sum
it's shasum / sha1 on osx, bsd variants

Change-Id: I3513ae1740adfb05e9b5777d27d445dafbd22413
2014-07-29 20:52:42 -07:00
James Zern
23fbef216d make testdata: fail if a sha1 fails or is missing
Change-Id: Ia0b51165d260e283f5338f290a39718e462aed55
2014-07-29 20:31:23 -07:00
James Zern
fff4e263f6 test-data.sha1: add missing checksums
Change-Id: I461d8b3d7cb8f5d787f189dac9032220b089f05f
2014-07-29 20:31:10 -07:00
James Zern
d6cf6eb570 Merge "Remove 'local' from configure and configure.sh" 2014-07-29 20:07:05 -07:00
James Zern
55f583f934 Merge "vpx_once: implement once() for OS/2" 2014-07-29 19:36:11 -07:00
James Zern
a7986315cc Merge "Makefile: add -mstackrealign to CFLAGS on OS/2 This prevents SIGSEGV of test_libvpx. Change-Id: I788743841469f4141bc8d29b1d1a8683cb00655c " 2014-07-29 19:21:24 -07:00
KO Myung-Hun
07fa6adfe1 Remove 'local' from configure and configure.sh
'local' is not posix.

Change-Id: I46d7acfa574cbef686cee1b35022f5781485c3fa
2014-07-29 18:41:52 -07:00
KO Myung-Hun
f9f996b3e2 vpx_once: implement once() for OS/2
Change-Id: I9f736f299490464bbdbb6cd24ee6f5b46ad45ec6
2014-07-29 17:36:39 -07:00
James Zern
c2c02510bd vp9_cx_iface: defer compressed data buffer alloc
currently the only way to know if multiple alt-refs are enabled is to
inspect the encoder instance.
this reduces the size of the allocation by 75% when not using multiple
alt-refs

Change-Id: Ie4baa240c2897e64b766c6ad229674884b5a65b6
2014-07-29 15:01:36 -07:00
Pengchong Jin
838b53b9fb Merge "Remove the redundant index computation in the first pass" 2014-07-29 14:27:24 -07:00
Marco Paniconi
1aa7a9dd2f Merge "vp8: Add an aggressive denoising mode." 2014-07-29 11:23:25 -07:00
Marco Paniconi
91801176fe vp8: Add an aggressive denoising mode.
Change-Id: Ie4686e1b15af6bcc8d59d585bbeb996f38224522
2014-07-29 11:16:45 -07:00
Jingning Han
6646ea73e2 Clean up max/min allowed block size in rd_pick_partition
This commit replace the repetitive retrieve of max and min allowed
partition from speed_feature with local variables max_size and
min_size.

Change-Id: Ib06f11f16615e4876e4dd5fb6a968c6bf5f7b216
2014-07-29 11:03:52 -07:00
Jingning Han
c36f78b054 Use frame index directly in get_chessboard_index
The get_chessboard_index() used to call the entire VP9_COMMON
struct pointer to retrieve the chessboard pattern index. This cl
makes it call the frame index directly.

Change-Id: I3cad9d209ea2e77a358085a04fe1ff0ddec5ba03
2014-07-29 10:55:56 -07:00
Scott LaVarnway
d19d222db6 Added vp9_fdct8x8_neon(), vp9_fdct8x8_1_neon()
On a Nexus 7, vpxenc (in realtime mode, speed -12)
reported a performance improvement of ~3.7%.

Change-Id: I428c72c40df82c6d537955e320a8debf99343004
2014-07-29 08:56:05 -07:00
KO Myung-Hun
2926d24478 Makefile: add -mstackrealign to CFLAGS on OS/2
This prevents SIGSEGV of test_libvpx.

Change-Id: I788743841469f4141bc8d29b1d1a8683cb00655c
2014-07-29 22:49:25 +09:00
Pengchong Jin
6491065775 Remove the redundant index computation in the first pass
Remove the redundant index computation when store the first
pass block-wise statistics. Currently, a single byte is
allocated for a 16x16 blocks, and all the frame statistics
saved during the first pass will be kept in memory for use
in the second pass. For a 1920x1080 300-frame clip, it will
take about 2.3 MB memory. This feature is off in current
setting.

Change-Id: I135a95b348ec093d54c6a07e1e8237626909e3bd
2014-07-28 18:31:36 -07:00
levytamar82
4ba92dc5ab Fix bug 805
Remove all the redundant dct functions (dct4x4, dct8x8)
in avx2 except dct32x32 those functions were copied originally from dct_sse2

Change-Id: I742576fbf5175f3ac09f2076976a9247b259323e
2014-07-28 15:46:01 -07:00
Pengchong Jin
c580428928 Merge "Store block-wise statistics obtained in the first pass" 2014-07-28 14:49:05 -07:00
Jim Bankoski
6865af6378 Merge "Fix reference frame size restrictions." 2014-07-28 09:47:57 -07:00
Pengchong Jin
bae652245d Store block-wise statistics obtained in the first pass
Change-Id: I9956db2ba2f7d28f484daaf5022d8d1ef5db473c
2014-07-28 09:12:40 -07:00
Jim Bankoski
899585ebe9 Fix reference frame size restrictions.
The issue was introduced by commit g9f37d14 with adding explicit
restrictions on reference-frame scale factors. The restriction
is checked against aligned-by-8 frame dimensions, not against
original ones. So, for example, frame of 35×35 actually can refer
to frame of 70×70, but the new check won't allow this. It will
compare 35 vs 72 (not 70), so 2x downscale limit will be exceeded.

Change-Id: Ic663693034440f64ac8312cbff9e1e773a921060
2014-07-28 08:37:25 -07:00
Jim Bankoski
9bbcc20b57 Merge "This removes a test that fails on 32 bit" 2014-07-28 07:17:27 -07:00
Johann
a7ba80f4cb Remove copy frame neon
No performance benefit

Change-Id: I7f0cfa98ac2bb5b823d0972827b45f32cd3f6b4c
2014-07-25 20:06:30 -07:00
Johann
c7e1d25b00 Remove unused copy src frame function
Change-Id: I03798e387a656473b6ec004246e2b882c8c6bb84
2014-07-25 20:06:29 -07:00