Commit Graph

13849 Commits

Author SHA1 Message Date
Jingning Han
a6a4659bea Factor 32x32 fwd DCT to vpx_dsp folder
Move the 32x32 2D-DCT implementations from vp9/ to vpx_dsp/.

Change-Id: Id3980696f8b69906ff7a59ff9fb2b9013d60047d
2015-07-28 11:13:41 -07:00
Jingning Han
8eefb36ca9 Move forward dct sse2 header file to vpx_dsp
Change-Id: Iba03852ce778c956200818e3473cfb2b48cf8d8e
2015-07-27 14:59:57 -07:00
Jingning Han
5f214d6bca Use common coefficient definition in neon idct implementations
Replace the duplicate coefficient definition in neon implementations
of inverse transform with those from vpx_dsp/txfm_common.h

Change-Id: I4cd9bd9569ab1793dfdbb6f16d80bcb581599f0d
2015-07-27 12:12:31 -07:00
Jingning Han
a9a1d4e8e5 Replace vp9_idct.h for precise dependency
This commit replaces vp9_idct.h with txfm_common.h in many SIMD
implementation files for precise file dependency.

Change-Id: If73dd726bb16537e7494f28538b0a169810f9756
2015-07-27 11:55:31 -07:00
Jingning Han
5ebc8febdc Refactor vp9_idct.h file
Separate the common coefficient constant into vpx_dsp/txfm_common.h.
Move the SSE2 macro definitions to vpx_dsp/x86/txfm_common_sse2.h.
This clears the use case of vp9_idct.h in vpx_dsp folder.

Change-Id: I319735a2abf42888e5080ac14cfbcde34be7b121
2015-07-26 08:26:32 -07:00
Marco Paniconi
55c6a74bd4 Merge "Dynamic resize for real-time: reference scaling." 2015-07-24 22:23:10 +00:00
Jingning Han
48de07d882 Remove redundant function definitions in vp9_dct_sse2.h
Change-Id: I283d364a4e65ca9bf6ff581da1d0b498433c5402
2015-07-24 21:12:06 +00:00
Jingning Han
252ec59821 Remove vp9_dct.h from fwd_txfm_impl_sse2 header file
Change-Id: Ib3a4814fdb9d69cf6cc23bdd208f9bc9e7972edc
2015-07-24 21:11:44 +00:00
Jingning Han
c376fbc62e Merge "Move msa implementations of 2D-DCT to vpx_dsp" 2015-07-24 21:11:33 +00:00
Jingning Han
9aaf523ace Move msa implementations of 2D-DCT to vpx_dsp
Refactor and clean up the msa transform related code layout.

Change-Id: Ic5048bd3d62a6046589817da745370ea89448e44
2015-07-24 13:24:25 -07:00
Parag Salasakar
16dcf013d3 Merge "mips msa vp8 bilinear filter optimization" 2015-07-24 18:16:23 +00:00
Hui Su
a15edeb76d Merge "Code cleanup in vp9_encode_block_intra" 2015-07-24 17:40:37 +00:00
Aℓex Converse
a60e0c15bc Merge "Allocate four |zcoeff_blk| for sub8x8 contexts." 2015-07-24 17:38:45 +00:00
Aℓex Converse
b4297bb122 Merge "Allocate eobs array per txblock and not per pixel." 2015-07-24 17:38:32 +00:00
Parag Salasakar
fb73ceae85 mips msa vp8 bilinear filter optimization
average improvement ~3x-4x

Change-Id: I8c0b3d5c86c9eb4f802b87c971864d2cfceeb7cc
2015-07-24 09:21:35 +05:30
Parag Salasakar
fd660f0164 Merge "mips msa vp8 copy mem optimization" 2015-07-24 03:43:37 +00:00
Marco
f01c769dc6 Dynamic resize for real-time: reference scaling.
Avoid scaling the references if they have already been scaled.
Change only affects 1 pass non-svc mode for now.

Change-Id: I204f4079c026cba7adce7a7f855d072f6139ccec
2015-07-23 16:08:40 -07:00
Alex Converse
e905da6f9c Allocate four |zcoeff_blk| for sub8x8 contexts.
The RD and load save/code grabs it as groups of four. In practice there
is no change to physical allocations becaquse this is backed by a 16-byte
memalign.

Change-Id: I01e89769872300e23227e03dd24a6e229f482025
2015-07-23 15:43:48 -07:00
Alex Converse
fa84acb441 Allocate eobs array per txblock and not per pixel.
Change-Id: I5368f5fc7283420c38d5bd85e3077b761d94ace6
2015-07-23 15:19:43 -07:00
Jingning Han
d4657a7efb Merge "Add x86_64 flag to guard fwd_txfm_ssse3.asm in make file" 2015-07-23 21:21:07 +00:00
Jingning Han
e8c6c00d80 Merge "Fix vp9_psnrhvs.c build error" 2015-07-23 21:19:40 +00:00
Jingning Han
598b083342 Fix vp9_psnrhvs.c build error
Add vpx_dsp_rtcd.h to the header file list. The od_bin_fdct8x8()
here depends on forward 8x8 2D-DCT.

Change-Id: I1d71edc71f07069808823d2445c1cafd285e1b94
2015-07-23 13:00:15 -07:00
Jingning Han
5ddfa101c9 Add x86_64 flag to guard fwd_txfm_ssse3.asm in make file
This fixes a VS build error. Fix by @johannkoenig.

Change-Id: I6e71435d70ae56079db7328e4c7915416ece8fda
2015-07-23 12:55:50 -07:00
Jingning Han
d341f843e2 Refactor forward/inverse transform msa implementations
This commit factors out common macro definitions from the forward
and inverse transform implementations into vpx_dsp. It removes
the duplicate macro definitions from encoder and decoder folders.

Change-Id: I92301acbd3317075e9c5f03328a25abb123bca78
2015-07-23 11:20:30 -07:00
Parag Salasakar
509fb0bc9d mips msa vp8 copy mem optimization
average improvement ~2x-4x

Change-Id: I3af3ecced96c5b8e0cb811256e5089e28fe013a2
2015-07-23 10:29:40 +05:30
James Zern
33a9d53c10 Merge "mips/dspr2: fix vp9-highbitdepth build" 2015-07-23 02:08:50 +00:00
Jingning Han
2b4f49cb1a Merge "Take out VP9_ prefix from mips/msa macros" 2015-07-23 01:15:52 +00:00
Parag Salasakar
00a35fdeda Merge "mips msa vp8 sixtap filter optimization" 2015-07-23 01:03:39 +00:00
Yaowu Xu
963b9b8818 Merge "Added TODOs for two unused #defines" 2015-07-23 00:23:39 +00:00
Jingning Han
97ec51233d Take out VP9_ prefix from mips/msa macros
The msa macros are locally used and should not be named with VP9
prefix.

Change-Id: I2c9c746c4027383c16b9ab12b77b4e70e7e7d206
2015-07-22 16:47:42 -07:00
Jingning Han
f0f00251ea Merge "Factor forward 2D-DCT transforms into vpx_dsp" 2015-07-22 23:47:03 +00:00
Yaowu Xu
130c0ec71a Added TODOs for two unused #defines
Change-Id: I70407e9350147d6585667f157d9cfe78c6251d26
2015-07-22 15:54:56 -07:00
Jingning Han
b67821f37b Factor forward 2D-DCT transforms into vpx_dsp
This commit factors the 4x4, 8x8, and 16x16 2D-DCT forward
transform operations into vpx_dsp folder.

Change-Id: I084b117b79c0925edcbcabb93f62b9f4bf8dbe7d
2015-07-22 15:48:17 -07:00
James Zern
9a0a2193e4 mips/dspr2: fix vp9-highbitdepth build
vp9_itrans*_dspr2.c aren't necessary for high bitdepth builds and
notably vp9_itrans8_dspr2.c fails in various configurations using a
codesourcery toolchain:
vp9_itrans8_dspr2.c:31:5: can't find a register in class 'GR_REGS' while reloading 'asm'

Change-Id: I2ac76203e65cc643cb835ab50e95701896d92a1a
2015-07-22 11:54:39 -07:00
Scott LaVarnway
34c4e1d6f9 Merge "Delete ChangeFilterWorks test" 2015-07-22 18:39:11 +00:00
hui su
e298d650cb Code cleanup in vp9_encode_block_intra
Change-Id: Ie4d958b26e586db218f8ee95d5df4bf11f2345a1
2015-07-22 10:53:12 -07:00
Scott LaVarnway
1ec0853d17 Delete ChangeFilterWorks test
This test places 128 in positions that would not be found
in the VP9 filter tables.  The ssse3 code packs this table
into chars and uses the pmaddubsw instruction, which treats
the value as signed.  The ssse3 code checks for 128 in
position 3, skipping the ssse3 code if found, and calls
vp9_convolve8_c().  vp9_convolve8_c() is also used for scaling.
ChangeFilterWorks breaks the ssse3 scaling code found in other
commits.

Change-Id: I1f5a76834bc35180b9094c48f9421bdb19d3d1cb
2015-07-22 09:05:17 -07:00
Jim Bankoski
0fe589f21e Fill buffer speed up
Eliminates the byte by byte read from bool decoder,  by reading
in a size_t and then shifting it into place.

Change-Id: I0ed8c7b6f942847e79cc90105dc1d2b5b3deb0d6
2015-07-21 12:54:44 -07:00
Jingning Han
2726023fc1 Merge "Clean up vp9_dct32x32_sse2_impl.h header files" 2015-07-21 16:31:50 +00:00
Parag Salasakar
2cdd3beac9 Merge "mips msa vp9 avg subpel variance optimization rebased" 2015-07-21 06:07:01 +00:00
Jingning Han
aeee70f9dd Merge "Arrange 1D forward transform order in vp9_dct.c" 2015-07-21 04:59:14 +00:00
Jingning Han
fe39f6cc9f Merge "Remove redundant function definitions from vp9_dct.h" 2015-07-21 04:57:58 +00:00
Yaowu Xu
4110a27d66 Merge "vpx_dsp/bitwriter_buffer.h: vp9_ -> vpx_" 2015-07-21 04:10:23 +00:00
Yaowu Xu
987451d864 Merge "vpx_dsp/bitwriter.h: vp9_->vpx_" 2015-07-21 04:10:09 +00:00
Yaowu Xu
41c13ddbc9 Merge "vpx_dsp/prob.h: vp9_ -> vpx_" 2015-07-21 04:09:53 +00:00
Yaowu Xu
0fc4d4e1ef Merge "vpx_dsp/bitreader_buffer.h: vp9_->vpx_" 2015-07-21 04:09:38 +00:00
Yaowu Xu
ac1e1b698f Merge "vpx_dsp/bitreader.h: vp9_->vpx_" 2015-07-21 04:09:08 +00:00
Yaowu Xu
d41781560e Merge "Fix bug in setting sf->use_square_partition_only." 2015-07-21 01:24:53 +00:00
Yaowu Xu
5f5091636e vpx_dsp/bitwriter_buffer.h: vp9_ -> vpx_
Change-Id: I0ac7beaa160a6c2a60a019f6b8ce85e6537bed7d
2015-07-20 18:13:06 -07:00
Yaowu Xu
817be1d214 vpx_dsp/bitwriter.h: vp9_->vpx_
changes prefix vp9_ to vpx_ for non codec specific functions and
data structures.

Change-Id: I91a21548e39bd24d2c7caaaa223ae47240bb78c8
2015-07-20 18:13:05 -07:00