summaryrefslogtreecommitdiff
path: root/vp9
AgeCommit message (Collapse)Author
2015-07-17Merge "Migrate loop filter functions from vp9/ to vpx_dsp/"Jingning Han
2015-07-16Migrate loop filter functions from vp9/ to vpx_dsp/Jingning Han
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
2015-07-16Merge "Dynamic resize for 1 pass: update of golden frame."Marco
2015-07-16Dynamic resize for 1 pass: update of golden frame.Marco
In aq-mode=3 under a resizing action (i.e., resize_pending != 0), force an update of the golden reference frame. Change-Id: I14806f6db71b5f8c827678cc5e1fc913c138a9a4
2015-07-16Merge "Add vp9_int_pro_col_neon."Frank Galligan
2015-07-15Merge "Add vpx_dsp_common.h file"Jingning Han
2015-07-15Merge "Remove redundant header files in vp9_loopfilter_filers.c"Jingning Han
2015-07-15Merge "Fix to resize logic for 1 pass mode."Marco
2015-07-15Add vpx_dsp_common.h fileJingning Han
Move the clamp functions to vpx_dsp_common.h file. Clear out the dependency of vp9_loopfilter_filters.c on vp9_common.h file. Change-Id: I9c4b928bcd7f597106b5aa96354356d3775a3431
2015-07-15Remove redundant header files in vp9_loopfilter_filers.cJingning Han
This cleans out the unnecessary dependency on vp9 codec-specific data structures. Change-Id: Iadbe431174a0f9bf9423f39ab854fc18be554bea
2015-07-15Adjust some logic for dynamic_resize 1 pass mode.Marco
Use drop_frames_water_mark for threshold on buffer underflow, and change threshold for resize down. Change-Id: I2de19adce50abe9bcdc0b107528cec8cc1857fcc
2015-07-15Add vp9_int_pro_col_neon.Frank Galligan
BUG=https://code.google.com/p/webm/issues/detail?id=1023 Change-Id: I212a1d67b23ce3b5ce08800de369b25b9e375e7d
2015-07-15Fix to source scaling for dynamic_resize.Marco
The fast scaling for 1 pass mode was being used only on the first frame after resizing event (because resize_scale_num/den is set to 1 and only changed for first frame following resize event). Change-Id: I723b63e21823eb858f25f5662d2bbe4f1842e61f
2015-07-14Fix to resize logic for 1 pass mode.Marco
Proper use/update of resize_state and resize_pending to constrain the total amount of downsizing to be at most one scale down, for now. Change-Id: Id18fc32499f2fbdbec16728dcdc9e4eac09098f0
2015-07-14Merge "Add an SSE2 version of vp9_iwht4x4_16_add"Alex Converse
2015-07-14Add an SSE2 version of vp9_iwht4x4_16_addAlex Converse
Roughly half as many cycles as plain C. Change-Id: I8c16c29940b76d54ee7e4fb874c328ce90bff5d4
2015-07-14Merge "Add extra resize trigger for frames above maximum allowed size."paulwilkins
2015-07-14Fixes part of merge regression from adding arf parameters.Debargha Mukherjee
From Change Ibf0c30b72074b3f71918ab278ccccc02a95a70a0 There is still an issue relating to one animated test clip with repeat patterns where this change effectively increase the default maximum arf interval by +1. This can be examined seperately. Change-Id: Idd01d5480fc45202d8a059a0c3afc0997cc5bdd1
2015-07-14Merge "Refactor intra block prediction and reconstruction process"Jingning Han
2015-07-14Merge "Refactor intra block prediction function"Jingning Han
2015-07-13Refactor intra block prediction and reconstruction processJingning Han
Flaten the intra block decoding process. It removes the legacy foreach_transformed_block use in the decoder. This saves cycles spent on retrieving the transform block position. Change-Id: I21969afa50bb0a8ca292ef72f3569f33f663ef00
2015-07-13Refactor intra block prediction functionJingning Han
This commit simplifies the intra block boundary condition logic. It removes the block index from the argument set. Change-Id: If00142512eb88992613d6609356dfd73ba390138
2015-07-13Merge "Dynamic resize for real-time: source scaling"Marco
2015-07-13Merge "Revert "Add an SSE2 version of vp9_iwht4x4_16_add.""Yaowu Xu
2015-07-13Revert "Add an SSE2 version of vp9_iwht4x4_16_add."Yaowu Xu
This reverts commit f8d35016408f3957c67945160d65be467ca97fdc. Change-Id: If8c7af403c091b7fb447a6f0c73fecdbccbc51b3
2015-07-13Merge "Revert "Fill buffer speed up""Jim Bankoski
2015-07-13Revert "Fill buffer speed up"Jim Bankoski
This reverts commit 9b4f9f45eee4d63cef3cd10f24923ed0bdd5ab7b. Change-Id: I23545ac8c7464127f7466fc6a58de517874fe0cf
2015-07-10Dynamic resize for real-time: source scalingMarco
Use faster scaling on source. Change-Id: I968df97239a86834c96126b86832d3d6d0875a53
2015-07-09Merge "Fill buffer speed up"Jim Bankoski
2015-07-09Fill buffer speed upJim Bankoski
Eliminates the byte by byte read from bool decoder, by reading in a size_t and then shifting it into place. Change-Id: Id89241977103fc3b973e4ed172a5cbf246998e5d
2015-07-09Merge "Changes to use of rectangular partitions."paulwilkins
2015-07-09Merge "Remove clamp operations."Yaowu Xu
2015-07-09Merge "Clean out more MSVC warnings"Yaowu Xu
2015-07-09Merge "Eliminate num_8x8 and num_4x4 width/height lookups"Scott LaVarnway
2015-07-09Merge "Add an SSE2 version of vp9_iwht4x4_16_add."Alex Converse
2015-07-09Merge "Change speed and rd features for formatting bars."paulwilkins
2015-07-09Eliminate num_8x8 and num_4x4 width/height lookupsScott LaVarnway
Also some log2 lookups. Pass in 8x8 block width/height and log2 num4x4s instead. Change-Id: I8ea9a1ec1e0bbab23f8ba556954a1b5433f4d613
2015-07-08Remove clamp operations.Yaowu Xu
The clamp calls with INT32_MIN and INT32_MAX have no effect at all on int values passed in, therefore this commit removes those effectless clamps and also adds more const intermediate results to make the code more readable. Change-Id: I66d8811f58bb74ec31cbec9a6c441983a662352e
2015-07-09Format fixes in vp9_encodeframe.c and vp9_encodemb.cJingning Han
Change-Id: Ib1303dac9043ab1b1f8fce54611cf4ea8a208038
2015-07-08Refactor transform block loop for inter mode decodingJingning Han
Rework the inter mode transform block decoding loop. Replace the block index with the row and col index as the input argument. It saves function call to compute the row and col index according to the block index and overall block size, and many if statements associated with the transform block position relative to the coding block. For the test bit-stream pedestrian_area 1080p at 5 Mbps, the decoding speed goes up from 81.13 fps to 81.92 fps. Note that the intra coded block decoding needs more refactoring work than the inter ones. So keep it using foreach_transforme_block as for now. Change-Id: I5622bdae7be28ed5af96693274057f55ba9b4fb4
2015-07-08Clean out more MSVC warningsYaowu Xu
Change-Id: I1bab0c104df2ec4825d050cd516e26ab635a7b3e
2015-07-08Add an SSE2 version of vp9_iwht4x4_16_add.Alex Converse
80% fewer cycles than C Change-Id: I841bde1e268ddd33ae2ee75eee94737a400e2cde
2015-07-08Merge "Don't allocate dqcoeff in MACROBLOCKD."Alex Converse
2015-07-08Don't allocate dqcoeff in MACROBLOCKD.Alex Converse
The encoder gets its dqcoeff from the context tree. In the decoder move it to directly after MACROBLOCKD. Change-Id: I46c9b76f26956a360d17de0b26ecb994dae34ecb
2015-07-08Merge "Refactor inverse_transform_block argument list"Jingning Han
2015-07-08Merge "Reset dqcoeff[0] only if eob is 1"Jingning Han
2015-07-08Merge "VP9_LPF_VERTICAL_16_DUAL_SSE2 optimization"Frank Galligan
2015-07-08Add extra resize trigger for frames above maximum allowed size.paulwilkins
Even if the recode loop is not enabled for the current frame type trap the case where the projected size of a a frame is above the maximum allowed in recode_loop_test() Change-Id: I453004694b8f8699e3c2a83252e9f83adccdda4e
2015-07-08Changes to use of rectangular partitions.paulwilkins
Changes to allow more use of rectangular partitions at speeds 1 and 2 for content classed by the first pass as animation and for blocks near the active image edge. This has quite a big impact in quality for the animated test sequence but also hurts encode speed for speed 2. For other content types the impact on both speed and quality is small. Added some plumbing for detection of internal vertical image edges. Change-Id: I3fc48de2349f8cb87946caaf0b06dbb0ea261a9a
2015-07-08Change speed and rd features for formatting bars.paulwilkins
Change speed features / behavior for split mode when there is an internal active edge (e.g. formatting bars). Remove some threshold constraints in rd code near the active edge of the image. Add some plumbing for left and right active edge detection. Patch set 5. Limit rd pass through for sub 8x8 to internal active edges. This takes away any speed penalty for most clips but keeps the enhanced edge coding for the more critical case of internal image edges Change-Id: If644e4762874de4fe9cbb0a66211953fa74c13a5