summaryrefslogtreecommitdiff
path: root/vp9/common
AgeCommit message (Collapse)Author
2014-01-27Fix the vp9_tm_predictor_8x8_neon.hkuang
Change-Id: I832cf83871044bfee7b7e57dbd31bae05cbd53e9
2014-01-24Merge "Renaming INTERPOLATION_TYPE to INTERP_FILTER."Dmitry Kovalev
2014-01-24Merge "Optimize vp9_tm_predictor_8x8_neon function"Frank Galligan
2014-01-24Renaming INTERPOLATION_TYPE to INTERP_FILTER.Dmitry Kovalev
Corresponding renames: subpel_kernel => interp_kernel vp9_get_filter_kernel() => vp9_get_interp_kernel() pred_filter_type => pred_interp_filter adaptive_pred_filter_type => adaptive_pred_interp_filter mcomp_filter_type => interp_filter read_interp_filter_type() => read_interp_filter() write_interp_filter_type() => write_interp_filter() fix_mcomp_filter_type() => fix_interp_filter() Change-Id: I1fa61fa1dc81ebbf043457c3ee2d8d4515bee6d3
2014-01-24Merge "Removing MODE_STATS."Dmitry Kovalev
2014-01-24Merge "Revert external frame buffer code."Frank Galligan
2014-01-24Optimize vp9_tm_predictor_8x8_neon functionFrank Galligan
Change-Id: Ia12aae491202098ff66366145aa0c3da38dc97e5
2014-01-24Merge "Add vp9_tm_predictor_16x16 neon implementation which is 3.5 times ↵hkuang
faster than C."
2014-01-24Merge changes ↵James Zern
I826655a7,I5164df72,Iba9b198c,Ide9a6846,I4f51ce85,I0e6aa00f,Ic334da9a,I252f5f8a,I7865db2d,I13b434b1 * changes: test/: remove unnecessary extern "C"s top-level: add extern "C" to headers vpx_ports: add extern "C" to headers vpx: add extern "C" to headers vp9/encoder: add extern "C" to headers vp9/decoder: add extern "C" to headers vp9/common: add extern "C" to headers vp8/encoder: add extern "C" to headers vp8/decoder: add extern "C" to headers vp8/common: add extern "C" to headers
2014-01-24Add vp9_tm_predictor_16x16 neon implementationhkuang
which is 3.5 times faster than C. Change-Id: I24439ba7a2971829c11620f34848facf2c916678
2014-01-24Revert external frame buffer code.Frank Galligan
A future CL will add external frame buffers differently. Squash commit of four revert commits: Revert "Increase required number of external frame buffers" This reverts commit 9e41d569d7c84dd9ca8f0047c15377a883945685. Revert "Add external constants." This reverts commit bbf53047b03106e3c2e24b28cb836cc838db5ee8. Revert "Add frame buffer lru cache." This reverts commit fbada948fa345e67acf9aa41a8f9a78f5dfe8648. Conflicts: vpxdec.c Change-Id: I76fe42419923a6ea6c75d9997cbbf941d73d3005 Revert "Add support to pass in external frame buffers." This reverts commit 10f891696bc4c972c13cc9fde2c53470501a03e2. Conflicts: test/external_frame_buffer_test.cc vp9/common/vp9_alloccommon.c vp9/common/vp9_reconinter.c vp9/decoder/vp9_decodeframe.c vp9/encoder/vp9_onyx_if.c vp9/vp9_dx_iface.c vpx/vpx_decoder.h vpx/vpx_external_frame_buffer.h vpx_scale/generic/yv12config.c vpxdec.c Change-Id: I7434cf590f1c852b38569980e4247fad0d939c2e
2014-01-24Merge changes I24ad1f0f,I33be1366Adrian Grange
* changes: Reorder functions to avoid forward declaration Rename set_scale_factors as set_ref_ptrs
2014-01-23vp9/common: add extern "C" to headersJames Zern
Change-Id: Ic334da9aee968e33762c2b25d9fbad24c844b411
2014-01-22Merge "Cleaning up vp9_refining_search_sad() function."Dmitry Kovalev
2014-01-22Add tm_predictor_8x8 neon implementation.hkuang
Change-Id: I76c2720546b737cb63018a8ab6a3ff62a291786d
2014-01-22Rename set_scale_factors as set_ref_ptrsAdrian Grange
New name better describes what the function does. Change-Id: I33be1366a81f058a9854b804bcde211061187dc7
2014-01-22Merge "Match vp9_coefband_trans_* declarations"Johann
2014-01-21Match vp9_coefband_trans_* declarationsJohann
VS2013 Chromium builds failed with: warning C4742: 'vp9_coefband_trans_8x8plus' has different alignment in https://code.google.com/p/chromium/issues/detail?id=336620 Change-Id: I865f72bc23ae958531eeb5f497002c12e9a36fcd
2014-01-21Seperate the border size for encoder and decoder.hkuang
Encoder's boarder is still 160, while decoder's boarder will be 32. With on demand and separate boarder buffer for boarder extension. The decoder's boarder does not need to to 160 anymore. Change-Id: I93d5aaff15a33a2213e9761eaa37c5f2870747db
2014-01-17Removing MODE_STATS.Dmitry Kovalev
Change-Id: I7520e1cc82b749187c9445356dd7b54f3f3826cc
2014-01-17Deprecate best_mv from encoderJingning Han
This commit deprecates the use of best_mv from encoding and bit-stream writing stages. It hence removes the definition from MACROBLOCKD. Change-Id: I8e5302775a2aa4a18900726df407bff881f2dfb1
2014-01-17Merge "Use a temp buffer for reconstruction when reference buffer is out of ↵hkuang
boarder."
2014-01-17Use a temp buffer for reconstruction whenhkuang
reference buffer is out of boarder. Change-Id: Ic7ad136e54a4d68abe0fd4345146a86b0ba824e1
2014-01-17Cleaning up vp9_refining_search_sad() function.Dmitry Kovalev
Change-Id: I660b53da8ebf3049832ce8a10721051c4e0ebb00
2014-01-16Removing unused vp9_yv12_copy_partial_frame() function.Dmitry Kovalev
Change-Id: I3149e562fe9500914f67b6f908283edcdc381ac6
2014-01-16Revert "Revert "Revert "SSSE3 convolution optimization"""Yunqing Wang
This reverts commit f9404f240642222775a371acde8fc0721b3812df. This patch caused some ASAN error. Change-Id: If15b7e581310e19061d111c69f2931809662ed19
2014-01-16Merge "Add vp9_tm_predictor_4x4 neon implementation"hkuang
2014-01-15Merge "Cleaning up postproc code."Dmitry Kovalev
2014-01-15Merge "Revert "Revert "SSSE3 convolution optimization"""Yaowu Xu
2014-01-15Merge "Rearranges the END_USAGE typedef"Deb Mukherjee
2014-01-15Add vp9_tm_predictor_4x4 neon implementationhkuang
Change-Id: I10c423bde7ea5a3bac9f14f35c73b6bc31c8f3e3
2014-01-15Rearranges the END_USAGE typedefDeb Mukherjee
Rearranges the END_USAGE typedef to make it compatible with the vpx user input. Change-Id: Ic9fa9e9edbee7c0ad01e12e685b219582fcecd16
2014-01-15Delete outdated comment & tidy-up othersAdrian Grange
Change-Id: I83031180723ee59270ec8fb66b2f73c0796bee25
2014-01-14Cleaning up postproc code.Dmitry Kovalev
Change-Id: I7e53f6345a4cf89309262f50850c9ad08ed3c527
2014-01-13Revert "Revert "SSSE3 convolution optimization""Yunqing Wang
This reverts commit b645257121da20b422dbbebf02aae0fc6dff95d4. Change-Id: I60d1bf57ae8e9eb6127f42f2d5a780124ac51b45
2014-01-11Merge "cosmetics: vp9_reconinter.h: make some variables const"James Zern
2014-01-10Removing mi_height_log2_lookup table.Dmitry Kovalev
Change-Id: I1f0ae2edc3a96b33c0494d165ae756a8feba6184
2014-01-10Revert "SSSE3 convolution optimization"Paul Wilkins
This reverts commit 511d218c60b9b6c1ab9383db746815e907af0359. In current form intrinsics break borg build. Change-Id: Ied37936af841250ecff449802e69a3d3761c91b9
2014-01-09Merge "Optimze inv 16x16 DCT with 10 non-zero coeffs - P2"Jingning Han
2014-01-09Merge "Optimze inv 16x16 DCT with 10 non-zero coeffs - P1"Jingning Han
2014-01-09Merge "Renaming 'Sharpness' to 'sharpness'."Dmitry Kovalev
2014-01-09Optimze inv 16x16 DCT with 10 non-zero coeffs - P2Jingning Han
This commit further optimizes SSE2 operations in the second 1-D inverse 16x16 DCT, with (<10) non-zero coefficients. The average runtime of this module goes down from 779 cycles -> 725 cycles. Change-Id: Iac31b123640d9b1e8f906e770702936b71f0ba7f
2014-01-09Merge "SSSE3 convolution optimization"Yunqing Wang
2014-01-09SSSE3 convolution optimizationlevytamar82
Optimizing all SSSE3 assembly for convolution: 1. vp9_filter_block1d4_h8_sse2 2. vp9_filter_block1d8_h8_sse2 3. vp9_filter_block1d16_h8_sse2 4. vp9_filter_block1d4_v8_sse2 5. vp9_filter_block1d8_v8_sse2 6. vp9_filter_block1d16_v8_sse2 my optimization include: -processing 2x8 elements in one 128 bit register instead of processing 8 elements in one 128 bit register. -removing unecessary loads. This optimization gives between 2.4% user level gain for 480p input and 1.6% user level gain for 720p. This Optimization done only for 64bit. Change-Id: Icb586dc0c938b56699864fcee6c52fd43b36b969
2014-01-08Merge "Renaming 'Mode' to 'mode'."Dmitry Kovalev
2014-01-08Optimze inv 16x16 DCT with 10 non-zero coeffs - P1Jingning Han
This commit is the first patch optimizing SSE2 implementation of inverse 16x16 DCT with <10 non-zero coefficients. It focused on the first 1-D (row) transformation. It exploits the fact that only top-left 4x4 block contains non-zero coefficients, in a 2-D inverse 16x16 DCT with <10 coeffients. The average runtime of idct16x16_10 unit is reduced from 883 cycles -> 779 cycles (12% faster). For pedestrian_area_1080p 300 frames at 4000 kbps, the speed 2 runtime goes down from 310651 ms -> 305910 ms. The decoding speed goes up from 80.37 fps -> 80.87 fps. Change-Id: Ic6f3ac5a637a76c07ba73ddaafe318a699fea645
2014-01-08Merge "Add a C fallback for get_msb() and change inline to INLINE."Alex Converse
2014-01-08Merge "Add initial intra frame neon optimization. 1~2% gain."hkuang
2014-01-08Renaming 'Mode' to 'mode'.Dmitry Kovalev
Change-Id: I6cdd670d66288dbd66228f38bba6b30502d25362
2014-01-08Renaming 'Sharpness' to 'sharpness'.Dmitry Kovalev
Change-Id: I54513dc3b3321e0c0bb6b15ea5c34085ed80b4a4