Jingning Han
0b0eba728d
Add _dspr2 to local function names
...
It avoids symbol conflicts between function names of various
implementation versions.
Change-Id: Iad79ebcb8e289457801812a7745c8380b5b06a46
2015-08-02 20:21:59 -07:00
Jingning Han
44849516d4
Factor out mips/msa inverse transform implementations
...
Move mips/msa inverse transform implementations from vp9 folder to
vpx_dsp.
Change-Id: Ic4cf3f05247c3c63db7b532a0e5000017a962391
2015-08-01 09:25:12 -07:00
Jingning Han
b37494cfb5
Merge "Use precise header files in inverse transform msa implementations"
2015-08-01 16:20:43 +00:00
Jingning Han
b4c7d0523a
Merge "Factor inverse transform functions into vpx_dsp"
2015-08-01 16:20:24 +00:00
Jingning Han
4dc390b15d
Merge "Add dynamic range notes to vp9_vector_var_c"
2015-08-01 01:01:37 +00:00
Aℓex Converse
fd22c492f7
Merge "Turn off simple_model_rd_from_var at speed 4."
2015-07-31 23:51:01 +00:00
Jingning Han
36a9a33b90
Add dynamic range notes to vp9_vector_var_c
...
Change-Id: If536ad31046ecd9e2ecd9c21f52f8192c8153ad7
2015-07-31 16:42:09 -07:00
Jingning Han
56c2cb7553
Use precise header files in inverse transform msa implementations
...
Change-Id: Ie8a79d9e2837842c3f60776b661cd42782b108d5
2015-07-31 23:24:54 +00:00
Jingning Han
e8b133c79c
Factor inverse transform functions into vpx_dsp
...
This commit moves the module inverse transform functions from vp9
to vpx_dsp folder. The hybrid transform wrapper functions stay in
the vp9 folder, since it involves codec-specific data structures.
Change-Id: Ib066367c953d3d024c73ba65157bbd70a95c9ef8
2015-07-31 16:21:00 -07:00
Alex Converse
af6d2c7d42
Turn off simple_model_rd_from_var at speed 4.
...
This got erroneously changed during the refactor. This fixes
SvcTest.TwoPassEncode2TemporalLayersWithMultipleFrameContextsAndTiles.
Change-Id: Ifa5ab0e098396c5e2d10478db87df256eadfa4c7
2015-07-31 15:50:17 -07:00
Aℓex Converse
dd4b416412
Merge "Compute skippable inside the block_rd_txfm loop."
2015-07-31 21:19:11 +00:00
Aℓex Converse
90e563d91f
Merge changes Ic1ce346a,Ic0b4e92c
...
* changes:
Simplify model_rd_for_sb HBD ifdefs
Simplify dist_block HBD ifdefs
2015-07-31 19:05:54 +00:00
Alex Converse
ab20c98e84
Compute skippable inside the block_rd_txfm loop.
...
Change-Id: Iaa43aeeb7a2074495e00cdb83bb551c3f13d3ed2
2015-07-31 11:45:59 -07:00
Zoe Liu
7f8dd35329
Merge "Refactor mips/dspr2 on convolution."
2015-07-31 18:23:19 +00:00
Zoe Liu
873a158f14
Merge "Code refactor on InterpKernel"
2015-07-31 18:20:14 +00:00
Alex Converse
c62228f273
Simplify model_rd_for_sb HBD ifdefs
...
Change-Id: Ic1ce346a053800ae3b2d77178f46e6a388357f6d
2015-07-31 11:16:59 -07:00
Alex Converse
da9c73c293
Simplify dist_block HBD ifdefs
...
Change-Id: Ic0b4e92cbaf813bcca8a8e9052c936c2e025e114
2015-07-31 11:04:01 -07:00
Aℓex Converse
8abd0c2a12
Merge "Short circuit rate_block in block_rd_txfm."
2015-07-31 17:59:22 +00:00
Zoe Liu
7cfdc00337
Refactor mips/dspr2 on convolution.
...
Change-Id: If59a39d5a92c261537342726f94bb7f7f26dfff3
2015-07-31 10:27:42 -07:00
Zoe Liu
7186a2dd86
Code refactor on InterpKernel
...
It in essence refactors the code for both the interpolation
filtering and the convolution. This change includes the moving
of all the files as well as the changing of the code from vp9_
prefix to vpx_ prefix accordingly, for underneath architectures:
(1) x86;
(2) arm/neon; and
(3) mips/msa.
The work on mips/drsp2 will be done in a separate change list.
Change-Id: Ic3ce7fb7f81210db7628b373c73553db68793c46
2015-07-31 10:27:33 -07:00
Alex Converse
4ac5058afc
Give skip_txfm constants names.
...
This is using a define instead of an enum to keep byte packing.
Change-Id: I3abb07c8bfe377e19be4531b624af7b7b4207792
2015-07-31 10:08:08 -07:00
Alex Converse
73422d3b2d
Short circuit rate_block in block_rd_txfm.
...
Don't run rate_block (cost_coeffs) if distortion alone is enough to
surpass best_rd.
This decreases 2nd pass runtime on HD at speed 2 by about 2%. There is
zero effect on output if tx_cache is removed.
Change-Id: Ia3b1cc77bfbe6ee988c395fde06c0eb92940b784
2015-07-31 10:05:51 -07:00
Yunqing Wang
3b2e73b9a4
Remove tx cache and speed up tx size selection
...
1. The RD scores obtained during the tx size selection were stored in the
tx cache, and used to help make the tx decision for the following frames.
This wasn't used anymore in VP9 encoder. Recovered the related decision
making code from 1.5+ years ago, and borg tests didn't show any quality
gain. This patch removed it to lower the complexity.
2. An optimization was done after the above refactoring. If the tx_mode
is not TX_MODE_SELECT, we only need to test the chosen tx size instead
of all posible tx sizes. This gave a 1.5% average speed gain at speed 2,
and a 1% average speed gain at speed 3.
Change-Id: Id8cd650e066a8cef33829d8c15388a8138adc78c
2015-07-30 18:53:40 -07:00
Aℓex Converse
eb6b443bd2
Merge "Convert simple_model_rd_from_var from a speed check to a speed feature."
2015-07-30 23:04:28 +00:00
Alex Converse
c827c59eaf
Convert simple_model_rd_from_var from a speed check to a speed feature.
...
Change-Id: I8877025e172fff29bc4e270790211463b676b4d7
2015-07-30 13:53:26 -07:00
Alex Converse
b7f441a0bc
Cleanup rdcost_block_args
...
Change-Id: I9d613cbe9e76b5dd15e935878ef9fd04521690ba
2015-07-30 12:55:51 -07:00
Aℓex Converse
c0f0245e8a
Merge "Clean up some casts."
2015-07-30 19:37:28 +00:00
Alex Converse
dfe7fdae7d
Comment zcoeff_blk.
...
Change-Id: Iefc2eb78e71472ecf51802ec59ff32caef4bd0f4
2015-07-29 16:53:33 -07:00
Alex Converse
49e0673659
Clean up some casts.
...
Change-Id: I264ca534cd7d4755906e20aea47e7a2523bca611
2015-07-29 11:26:51 -07:00
James Zern
f42012e526
Merge "add vp9_block_error_fp_neon"
2015-07-29 00:47:09 +00:00
Hui Su
4cbf36b105
Merge "Replace prefix vp9_ with vpx_ for intra prediction functions"
2015-07-29 00:38:48 +00:00
Jingning Han
d12a4a825c
Merge "Replace vp9_ prefix in 2D-DCT functions with vpx_"
2015-07-29 00:07:31 +00:00
Jingning Han
39e3937c24
Merge "Remove vp9_dct.h file"
2015-07-29 00:06:56 +00:00
Jingning Han
fc18cf7a11
Merge "Move DC only forward 2D-DCT functions to vpx_dsp"
2015-07-29 00:06:37 +00:00
Jingning Han
4b5109cd73
Replace vp9_ prefix in 2D-DCT functions with vpx_
...
Clean up the forward 2D-DCT function names in vpx_dsp.
Change-Id: I3117978596d198b690036e7eb05fe429caf3bc25
2015-07-28 16:06:44 -07:00
Jingning Han
a7e9178d80
Remove vp9_dct.h file
...
The forward 32x32 2D-DCT functions are aligned in vpx_dsp folder.
The vp9_dct.h file is not effectively used now.
Change-Id: Ie7946b6fdd784b8e91496242337bc9002c75c281
2015-07-28 15:27:36 -07:00
Aℓex Converse
08d5cf226e
Merge "Remove branch in inner loop of foreach_transformed_block_in_plane()"
2015-07-28 21:59:33 +00:00
Aℓex Converse
8191ed8b63
Merge changes If196d9e5,Ib669d572
...
* changes:
Simplify is_skippable to point straight to eobs.
Don't initialize extra context tree buffers for 4x8 and 8x4.
2015-07-28 21:59:02 +00:00
Jingning Han
d19033fa4e
Move DC only forward 2D-DCT functions to vpx_dsp
...
This completes the forward transform functions layout refactoring.
Change-Id: I996fb0fb795f41e2040f7b21db985774098aedbd
2015-07-28 14:52:30 -07:00
Hui Su
fe7cabe8b6
Merge "Move intra prediction functions from vp9/common/ to vpx_dsp/"
2015-07-28 20:41:01 +00:00
Jingning Han
a73f0f4170
Merge "Factor 32x32 fwd DCT to vpx_dsp folder"
2015-07-28 20:36:59 +00:00
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
Frank Galligan
b1fb6e0365
Fix dspr2 build.
...
Change-Id: I18895c29d6db872d033b3874de9dcd9501d0c10e
2015-07-28 09:05:41 -07:00
James Zern
ea990af7f5
add vp9_block_error_fp_neon
...
~60-70% faster depending on the block size
Change-Id: Icdbaa9977a91a63cbcc6ead0cf19d5a2af7f27e1
2015-07-27 19:59:50 -07:00
Yunqing Wang
4f08d3d6c5
Merge "Remove tx_select_threshes"
2015-07-28 01:25:14 +00:00
Jingning Han
8eefb36ca9
Move forward dct sse2 header file to vpx_dsp
...
Change-Id: Iba03852ce778c956200818e3473cfb2b48cf8d8e
2015-07-27 14:59:57 -07:00
hui su
4013645353
Replace prefix vp9_ with vpx_ for intra prediction functions
...
Change-Id: I8ae6fb586f8d5d018ace228df11714f82b085076
2015-07-27 13:42:06 -07:00
hui su
7971846a5e
Move intra prediction functions from vp9/common/ to vpx_dsp/
...
Change-Id: I64edc26cf4aab050c83f2d393df6250628ad43b8
2015-07-27 13:38:16 -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
Yunqing Wang
b2446fb6be
Remove tx_select_threshes
...
Removed unused tx_select_threshes and tx_select_diff.
Change-Id: I5e9e7ad170056efe14b5f071e94d0c5a36e4a34c
2015-07-27 12:02:05 -07:00