summaryrefslogtreecommitdiff
path: root/vp9/common
AgeCommit message (Collapse)Author
2013-08-15Merge "vp9: neon: add vp9_convolve_copy_neon"Johann
2013-08-15Unify luma and chroma rd-cost estimationJingning Han
This commit unifies the rate-distortion cost calculation process of luma and chroma components. It allows early termination to be enabled later in the rd search loop of chroma components, in consistent with luma pixels. Change-Id: I2e52a7c6496176bf2a5e3ef338d34ceb8aad9b3d
2013-08-15Merge "Renaming in MB_MODE_INFO"Paul Wilkins
2013-08-14Merge "Add neon optimize vp9_short_idct16x16_add."hkuang
2013-08-14Add neon optimize vp9_short_idct16x16_add.hkuang
Change-Id: I27134b9a5cace2bdad53534562c91d829b48838d
2013-08-14foreach_transformed_block_in_plane cleanup, explicit tx_size var.Dmitry Kovalev
Making foreach_transformed_block_in_plane more clear (it's not finished yet). Using explicit tx_size variable consistently instead of (ss_txfrm_size / 2) or (ss_txfrm_size >> 1) expression. Change-Id: I1b9bba2c0a9f817fca72c88324bbe6004766fb7d
2013-08-14Adding const to arguments of intra prediction functions.Dmitry Kovalev
Adding const to above and left pointers. Cleanup. Change-Id: I51e195fa2e2923048043fe68b4e38a47ee82cda1
2013-08-14vp9: neon: add vp9_convolve_copy_neonMans Rullgard
Change-Id: I15adbbda15d1842e9f15f21878a5ffbb75c3c0c9
2013-08-14Renaming in MB_MODE_INFOPaul Wilkins
The macro block mode info context originally contained an entry for each 16x16 macroblock. In VP9 each entry refers to an 8x8 region not a macro block, so the naming is misleading. This first stage clean up changes the names of 3 entries in the structure to remove the mb_ prefix. TODO clean up the nomenclature more widely in respect of mbmi and bmi. Change-Id: Ia7305c6d0cb805dfe8cdc98dad21338f502e49c6
2013-08-13Merge "Using is_inter_block() instead of repetitive code."Dmitry Kovalev
2013-08-12Merge "SSE2 high precision 32x32 forward DCT"Jingning Han
2013-08-12Merge "vp9: neon: optimise convolve8_vert functions"Johann
2013-08-12Merge "vp9: neon: optimise convolve8_horiz functions"Johann
2013-08-12Using is_inter_block() instead of repetitive code.Dmitry Kovalev
Change-Id: If0b04c476c34fb8c102c9f750d7fe5669a86a532
2013-08-12SSE2 high precision 32x32 forward DCTJingning Han
Enable SSE2 implementation of high precision 32x32 forward DCT. The intermediate stacks are of 32-bits. The run-time goes down from 32126 cycles to 13442 cycles. Change-Id: Ib5ccafe3176c65bd6f2dbdef790bd47bbc880e56
2013-08-12Merge "Simplifying vp9_mvref_common.c."Dmitry Kovalev
2013-08-12Merge "Removing foreach_predicted_block_uv function."Dmitry Kovalev
2013-08-12Simplifying vp9_mvref_common.c.Dmitry Kovalev
Change-Id: I272df2e33fa05310466acf06c179728514dd7494
2013-08-12Merge "Entropy context related cleanups."Dmitry Kovalev
2013-08-12Merge "Making scaling code more clear."Dmitry Kovalev
2013-08-12Removing unused convolve_avg_c function + cleanup.Dmitry Kovalev
Change-Id: Id2b126c6456627c25e4041a82e304d0151d951ba
2013-08-12Removing foreach_predicted_block_uv function.Dmitry Kovalev
Adding function build_inter_predictors_for_planes to build inter predictors for specified planes. This function allows to remove condition "#if CONFIG_ALPHA" and use MAX_MB_PLANE for general case. Renaming 'which_mv' local var to 'ref', and 'weight' argument to 'ref'. Change-Id: I1a97160c9263006929d38953f266bc68e9c56c7d
2013-08-12Making scaling code more clear.Dmitry Kovalev
Reusing existing functions, using constants instead of magic numbers. Change-Id: Idc689ffba52c9a8b203fcf26bd67110ecb5635f9
2013-08-12Entropy context related cleanups.Dmitry Kovalev
Adding set_skip_context() function used from both encoder and decoder. Change-Id: Ia22cfad3211a00a63eb294f64f857b78f4aa9b85
2013-08-12vp9: neon: optimise convolve8_vert functionsMans Rullgard
Invert loops to operate vertically in the inner loop. This allows removing redundant loads. Also add preloading of data. Change-Id: I4fa85c0ab1735bcb1dd6ea58937efac949172bdc
2013-08-11Merge "Removing redundant code and function arguments."Dmitry Kovalev
2013-08-11vp9: neon: optimise convolve8_horiz functionsMans Rullgard
Each iteration of the horizontal loop reuses 7 of the 11 source values. Loading only the 4 new values saves some time. Also add preload for source data. Overall 4% faster on Chromebook. Change-Id: I8f69e749f2b7f79e9734620dcee51dbfcd716b44
2013-08-09Renaming BLOCK_SIZE_TYPES constant to BLOCK_SIZES.Dmitry Kovalev
There will be another change set to rename BLOCK_SIZE_TYPE enum to BLOCK_SIZE. Change-Id: I8d1dfc873d6186fa5e554262f5169e929978085e
2013-08-09Removing redundant code and function arguments.Dmitry Kovalev
Change-Id: Ia5cdda0f755befcd1e64397452c42cb7031ca574
2013-08-09Inlining 16 as a stride for BLOCK_OFFSET macro.Dmitry Kovalev
Change-Id: I7f23d174eb089e5500f268a10db09648634c1b82
2013-08-09Merge "Using MV struct instead of int[2] array."Dmitry Kovalev
2013-08-09Merge "Removing plane_block_{width, height}_log2by4 functions."Dmitry Kovalev
2013-08-09Merge "Moving loopfilter struct to VP9_COMMON."Dmitry Kovalev
2013-08-09Moving loopfilter struct to VP9_COMMON.Dmitry Kovalev
Loop filter configuration doesn't belong to macroblock, so moving it from MACROBLOCKD to VP9_COMMON. Also moving the declaration of loopfilter struct from vp9_blockd.h to vp9_loopfilter.h. Change-Id: I4b3e34be9623b47cda35f9b1f9951f8c5b1d5d28
2013-08-09Moving scale_factors and related code to separate files.Dmitry Kovalev
Change-Id: I531829e5aee2a4a7a112d528ecccbddf052d0e74
2013-08-09Merge "Using buf_2d struct instead of separate buffer and stride vars."Dmitry Kovalev
2013-08-09Merge "Correct bug in loopfilter initialization"Adrian Grange
2013-08-09Correct bug in loopfilter initializationAdrian Grange
The memset sets 16 bytes rather than the correct size of the final array dimension (MAX_MODE_LF_DELTAS). (In response to bug posted by Manjit Hota to codec-devel and webm-discuss lists) Change-Id: I8980f5aa71ddc9d7ef57c5b4700bc28ddf8651c7
2013-08-09Added lpf level picking using partial frameYaowu Xu
Change-Id: I599ab1bd22b5f3f10d5962c609952abdef8ff67a
2013-08-08Using buf_2d struct instead of separate buffer and stride vars.Dmitry Kovalev
Change-Id: Id5cc3566cc16d1e3030ddb4d1c58459320321dca
2013-08-08General code cleanup.Dmitry Kovalev
Removing redundant parenthesis and curly braces. Combining declarations with initializations. Adding useful intermediate variables instead of recalculating expressions every time. Change-Id: I00106f404afd60bfc189905b0fded881684f941a
2013-08-08Merge "Cleanup inside vp9_reconinter.c."Dmitry Kovalev
2013-08-08Using MV struct instead of int[2] array.Dmitry Kovalev
Change-Id: Iab951c555037e36b154f319f351c5e67f9abb931
2013-08-08Removing unneeded intermediate entropy_nodes_adapt var.Dmitry Kovalev
Change-Id: I541a178d997b4541e0e2d4d5b854e2ed6b113c3a
2013-08-07Removing plane_block_{width, height}_log2by4 functions.Dmitry Kovalev
Change-Id: I040b82b8e32aee272d10cbb021c7ba1c76343d7a
2013-08-07Cleanup inside vp9_reconinter.c.Dmitry Kovalev
Using block width and block height instead of their logarithms. Using SUBPEL_BITS and SUBPEL_SHIFTS constants instead of magic numbers. Change-Id: I4e10e93c907c8a5e1cb27dfe74d1fcdcc4995448
2013-08-07Merge "Using only one scale function in scale_factors struct."Dmitry Kovalev
2013-08-07Adding ss_size_lookup table.Dmitry Kovalev
Removing the old one bsize_from_dim_lookup. Now we have a way to determine block size for plane using its subsampling values (ss_size_lookup). And then we can find the number of pixels in the block (num_pels_log2_lookup). Change-Id: I6fc981da2ae093de81741d3d78eaefed11015db9
2013-08-06Neon version of vp9_short_idct4x4_add.Christian Duvivier
Change-Id: Idec4cae0cb9b3a29835fd2750d354c1393d47aa4
2013-08-06Merge "Motion vector code cleanup."Dmitry Kovalev