Age | Commit message (Collapse) | Author |
|
Unify coding style.
Change-Id: I5826f40c02c882df7353391e0c9dd6cef6bd4b97
|
|
Process 16 samples together.
Change-Id: If6ee8e3377aa2786417f2fc411ba7d87ea8b6799
|
|
Process 16 samples together.
Change-Id: I9cfbe04c9d25d8b89f63f48f519e812746db754d
|
|
Also expose the NEON intrinsics version.
BUG=webm:1261, webm:1266.
Change-Id: I8c4ae658467dcf66ebf7a75982b2ef712dbb4535
|
|
New NEON intrinsics functions:
vpx_lpf_horizontal_edge_8_neon()
vpx_lpf_horizontal_edge_16_neon()
vpx_lpf_vertical_16_neon()
vpx_lpf_vertical_16_dual_neon()
BUG=webm:1262, webm:1263, webm:1264, webm:1265.
Change-Id: I7a2aff2a358b22277429329adec606e08efbc8cb
|
|
* changes:
Use common transpose for vpx_idct32x32_1024_add_neon
Use common transpose for vpx_idct8x8_[12|64]_add_neon
Use common transpose for vp9_iht8x8_add_neon
Use common transpose for vpx_idct16x16_[10|256]_add_neon
|
|
|
|
Change-Id: I6ef7970206d588761ebe80005aecd35365ec50ff
|
|
Change-Id: Id332c641f05336ef9a45e17493ff149fd0a168f0
|
|
Change-Id: I84438013f483e82084d33ba9a63c33273d35fcaa
|
|
|
|
Change-Id: I1fa81cc9cabf362a185fc3a53f1e58de533a41e5
|
|
Change-Id: I5e1c7f4c80d1c6f7fd582ac468c6eaaa3603a06c
|
|
The code was expanding to Q registers so that vqrshn could be used, for
vector quad round shift and narrow. If 4 values are added together,
there is a shift by 2. If 8 values, a shift by 3. Since this accounts
for any possibility of overflow, we can skip the narrowing shift.
This allows keeping the values in D registers and casting the 16 bit
value to 8 bits.
Change-Id: I8d9cfa07176271f492c116ffa6a7b351af0b8751
|
|
Change-Id: I596567570580babb1a52925541d1fd1045c352f5
|
|
Change-Id: I3ea3e77364879928bd916f2b0a7838073ade5975
|
|
Runs about twice as fast as C
BUG=webm:1027
Change-Id: I6760d99f4e22259439ca35d746194b12a81bfa71
|
|
Runs about 30% faster than the C
BUG=webm:1021
Change-Id: I6809d6d84c3077ab619c53298296950e976bdaba
|
|
BUG=https://bugs.chromium.org/p/webm/issues/detail?id=1156
Change-Id: Ief0ad8d6255b0ef0f233cda153799e3c72d3dbc6
|
|
replace with vpx_lpf_horizontal_edge_16 and vpx_lpf_horizontal_edge_8 to
avoid passing a count parameter
Change-Id: I848c95c02a3c6ebaa6c2bdf0983dce05cd645271
|
|
Change-Id: Iec7d8eda343991f7d7d46931dca17af23c821d11
|
|
Change-Id: I48741e167a7b09b7c9ad3bfc1c4b88ef1029ae46
|
|
Change-Id: I43a191cb3d42e51e7bca266adfa11c6239a8064c
|
|
Change-Id: Ic69406da00afb0f06588e8c0deb2b043952b078c
|
|
Change-Id: I7bc991abea383db1f86c1bb0f2e849837b54d90f
|
|
The check is handled by the predictor table.
Change-Id: I42479f843e77a2d40cdcdfc9e2e6c48a05a36561
|
|
This commit clears the function naming convention in vpx_dsp. It
replaces vp9_ prefix of global functions with vpx_ prefix. It also
removes the vp9_ prefix from static functions.
Change-Id: I6394359a63b71a51dda01342eec6a3cc08dfeedf
|
|
Change-Id: I3df35a99900ef8ce549d315866849a10db1a4c7b
|
|
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
|
|
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
|
|
|
|
|
|
|
|
Clean up the forward 2D-DCT function names in vpx_dsp.
Change-Id: I3117978596d198b690036e7eb05fe429caf3bc25
|
|
This completes the forward transform functions layout refactoring.
Change-Id: I996fb0fb795f41e2040f7b21db985774098aedbd
|
|
|
|
Change-Id: I8ae6fb586f8d5d018ace228df11714f82b085076
|
|
Change-Id: I64edc26cf4aab050c83f2d393df6250628ad43b8
|
|
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
|
|
This commit factors the 4x4, 8x8, and 16x16 2D-DCT forward
transform operations into vpx_dsp folder.
Change-Id: I084b117b79c0925edcbcabb93f62b9f4bf8dbe7d
|
|
Change-Id: I6f424bb8daec26bf8482b5d75dd9b0e45c11a665
|
|
The various tap loop filter operations are common functions across
codec. This commit moves them along with SIMD optimizations to
vpx_dsp folder.
Change-Id: Ia5fa0b2e5289cdb98467502a549c380b9c60e92c
|
|
Change-Id: I66bf6720c396c89aa2d1fd26d5d52bf5d5e3dff1
|
|
Factor out the subtraction operator as common function.
Change-Id: I526e703477c6a290e0e3e3c8898f8bb1ca82779b
|
|
vpx_ports/mem.h is necessary for MSVC __builtin_prefetch compatibility
macro
Change-Id: I210fad6c6b4545df1874d028b31f42018490b029
|
|
On visual studio builds the 'END' directive aggressively signals the end
of file.
Change-Id: I28714da32762ef5abcbaeb5a109fb02b80dd13ec
|
|
subpel functions will be moved in another patch.
Change-Id: Idb2e049bad0b9b32ac42cc7731cd6903de2826ce
|
|
Create a new component, vpx_dsp, for code that can be shared
between codecs. Move the SAD code into the component.
This reduces the size of vpxenc/dec by 36k on x86_64 builds.
Change-Id: I73f837ddaecac6b350bf757af0cfe19c4ab9327a
|