summaryrefslogtreecommitdiff
path: root/vp9/common
AgeCommit message (Collapse)Author
2014-03-01Remove dec_build_inter_predictors() parametersYaowu Xu
There were two parameters not in use, this commit removed them. Change-Id: Ia03a73b9a2521400bed539df45574e34214ed93a
2014-03-01Remove vp9_create_common()Yaowu Xu
The function has evolved over time, now only calls vp9_rtcd(), so this commit removes the function and changes to call vp9_rtcd() directly. Change-Id: I8cfa6190daa4b28f6f3d1e11bb3a07f9c95322bf
2014-02-28Merge "Adding get_y_mode() function."Dmitry Kovalev
2014-02-28Merge "Adding consts to arguments of vp9_block_error()."Dmitry Kovalev
2014-02-28Merge "Moving get_tx_eob() from common to encoder."Dmitry Kovalev
2014-02-28Merge "Fix a bug in neon that has not save and restore q4-q7 registers."hkuang
2014-02-27Moving get_tx_eob() from common to encoder.Dmitry Kovalev
Change-Id: I7d11c6ae259aff6560710d16fea3032c661e5b02
2014-02-27Adding consts to arguments of vp9_block_error().Dmitry Kovalev
Change-Id: Id145da99259866109cfee8b47a1d8f309944b937
2014-02-27Adding get_y_mode() function.Dmitry Kovalev
Change-Id: Iaac57b24f79cd205a8c62bc1177412d22f5787a8
2014-02-27Fix a bug in neon that has not save and restore q4-q7 registers.hkuang
Change-Id: Ie21b5ae89100389b80f919710839084f935a8545
2014-02-27Merge "[svc] Add target bitrate settings for each layers."Minghai Shang
2014-02-26Removing vp9_systemdependent.c.Dmitry Kovalev
Change-Id: I7b9738a7113c0c4687e5d320581ff69d98a8b271
2014-02-26[svc] Add target bitrate settings for each layers.Minghai Shang
Change-Id: Ia7677fb436667bc4f76db71f65e4784f433f7826
2014-02-26Merge "Fix a bug in intra prediction due to change in ↵hkuang
25e55526301eba7d6e5c68e25402e9b2102976d8."
2014-02-25Fix a bug in intra prediction due to change inhkuang
25e55526301eba7d6e5c68e25402e9b2102976d8. Change-Id: I17ac67c3ced91ad4f057b296f7e8dc86a3389f26
2014-02-25Merge "Changing vp9_full_search_sad{, x3, x8} signatures."Dmitry Kovalev
2014-02-24added clamp of segment loop filter levelYaowu Xu
for ABSDATA mode, so segment loop filter level always fall in valid range for both Absolute and delta modes. Change-Id: If90df3411479533dbdab63f8ae088d2f5dd174a9
2014-02-24Merge "Added clamp of qindex to valid range"Yaowu Xu
2014-02-23Merge "Cleaning up vp9_mvref_common.{h, c}."Dmitry Kovalev
2014-02-22Added clamp of qindex to valid rangeYaowu Xu
The qindex for a segment was not clamped in ABSDATA mode, which may cause invalid memory access if an ill-formed stream has a negative value in ABSDATA mode. This commit added clamp to make sure qindex for a segment always fall into valid range. Change-Id: I0a74d00f4ef40aec7edaeca1d03c8645e23ab08c
2014-02-21Merge "Remove an unused variable"Yaowu Xu
2014-02-21Stop gating non420 features with a configure flag.Alex Converse
Change-Id: I8cc38fdef6a2a0968af8dfe15e7c2b3c46c531ea
2014-02-20Merge "vp9_subpixel_8t_intrin_ssse3.c: make some tables static"James Zern
2014-02-20Merge "vp9_subpixel_8t_intrin_avx2.c: make some tables static"James Zern
2014-02-20Remove an unused variableYaowu Xu
Change-Id: I8eeec70a7d4403243762f14d0b560792801645e8
2014-02-19Merge "vp9: normalize DECLARE_ALIGNED use on global tables"James Zern
2014-02-19Cleaning up vp9_mvref_common.{h, c}.Dmitry Kovalev
Hiding vp9_find_mv_refs_idx() inside vp9_mvref_common.c, moving definition of vp9_find_mv_refs() to vp9_mvref_common.c. Change-Id: I0c9f34b03648785a7d18edf6d4fddd34e55dfcc5
2014-02-19Merge "Cleaning up pack_inter_mode_mvs() function."Dmitry Kovalev
2014-02-18vp9: normalize DECLARE_ALIGNED use on global tablesJames Zern
- place extern within the macro - use in the header only Change-Id: I4274b345d8af9ef329c0eb9553a3ddaad70d1d26
2014-02-18vp9_subpixel_8t_intrin_ssse3.c: make some tables staticJames Zern
+ fix formatting Change-Id: I344d4de089d03e403f0c7b3e64aeb7086cce86ac
2014-02-18vp9_subpixel_8t_intrin_avx2.c: make some tables staticJames Zern
+ fix formatting Change-Id: Ia62610bff3d63855104366d7860749b6a3cf4577
2014-02-18Merge "vp9_filter: move table alignment decl's to header"James Zern
2014-02-18Merge "SSSE3 convolution optimization"Yunqing Wang
2014-02-18Merge "AVX2 SubPixel Variance Optimization"Yunqing Wang
2014-02-17Changing vp9_full_search_sad{, x3, x8} signatures.Dmitry Kovalev
Passing block MV pointer instead of block index into vp9_full_search_sad{, x3, x8} functions. Change-Id: Ica07356633471c2c8f81b583a7aeba85a436bafb
2014-02-15vp9_filter: move table alignment decl's to headerJames Zern
avoids mismatched alignment warnings in visual studio builds Change-Id: I2cedb8042fd47e708bde3f7168a6fb4bd9aaa569
2014-02-14Replace vqshrun by vqmovun if shift #0 bitJames Yu
Change-Id: Ifabb8c7ec0c327fea9d6739cab10addb060ff435 Signed-off-by: James Yu <james.yu@linaro.org>
2014-02-14Merge "Remove redundant arm neon instructions."Johann
2014-02-14AVX2 SubPixel Variance Optimizationlevytamar82
Optimizing 2 functions to process 32 elements in parallel instead of 16: 1. vp9_sub_pixel_variance64x64 2. vp9_sub_pixel_variance32x32 both of those function were calling vp9_sub_pixel_variance16xh_ssse3 instead of calling that function, it calls vp9_sub_pixel_variance32xh_avx2 that is written in avx2 and process 32 elements in parallel. This Optimization gave 70% function level gain and 2% user level gain Change-Id: I4f5cb386b346ff6c878a094e1c3b37e418e50bde
2014-02-14Cleanup some comments.Adrian Grange
Change-Id: I568861ba1d43620865ad9a98a97eef37a51fd856
2014-02-14Merge "minor spelling cleanup in comments"Yaowu Xu
2014-02-14SSSE3 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 is done only for 64 bit Change-Id: Ic07fce2f9360329b4f2d956efda1480ae958766b
2014-02-13Cleaning up pack_inter_mode_mvs() function.Dmitry Kovalev
Change-Id: I48ad06e3e1ae9720a0683022621f4504e3bebce6
2014-02-13Merge "Removed the reset of mode_info from previous frame"Yaowu Xu
2014-02-13Merge "Add VP9 decoder support for external frame buffers"Frank Galligan
2014-02-13Add VP9 decoder support for external frame buffersFrank Galligan
Added support for external frame buffers to libvpx's VP9 decoder. If the external frame buffer functions are set then libvpx will call the get function whenever it needs a new frame buffer to decode a frame into. And it will call the release function whenever there are no more references to that buffer. Change-Id: Id2934d005f606af6e052fb6db0d5b7c02f567522
2014-02-13Removed the reset of mode_info from previous frameYaowu Xu
Prior to this commit, both encoder and decoder reset mode/mv info from previous frame in error resilient mode to ensure bitstreams are able to decode when there is loss of frame in decoder side. However, this is not necessary. This commit changed to remove the reset, so encoder can continue to use mode/mv/partition information from previously encoded frame without affecting decodeablilty under loss of frame. Change-Id: I0279f862900dc647fb471ae3389770bb1b9f454f
2014-02-13Merge "Renaming skip_coeff to skip for consistency."Dmitry Kovalev
2014-02-13Merge "Fix neon wide loopfilter for filter8 only branch"Frank Galligan
2014-02-13Merge "AVX2 Convolve Optimization"Yunqing Wang