summaryrefslogtreecommitdiff
path: root/vp9
AgeCommit message (Collapse)Author
2013-06-27Add Neon optimized loop filter functions.Frank Galligan
- Added vp9_loop_filter_horizontal_edge_neon and vp9_loop_filter_vertical_edge_neon. - The functions are based off the vp8 loopfilter functions. - Matches x86 md5 checksum. Change-Id: Id1c4dddb03584227e5ecd29f574a6ac27738fdd0
2013-06-27Merge "General cleanup in segmentation-related code."Dmitry Kovalev
2013-06-27Merge "Moving subexp encoding functions in separate vp9_dsubexp.c file."Dmitry Kovalev
2013-06-27Inline quantize so idiv instruction gets removed from inner loop.Ronald S. Bultje
Encoding time of first 50 frames of bus @ 1500kbps (speed 0) goes from 3min15.0 to 3min10.9, i.e. 2.1% faster overall. Change-Id: If592ee99be09bcd34a7c8498347f44e7305e982c
2013-06-27Merge "Auto adapt step size feature."Paul Wilkins
2013-06-27Merge "Start adaptive threshold for each mode at max."Paul Wilkins
2013-06-27Merge "Change meaning of cpi->sf.first_step and rename."Paul Wilkins
2013-06-26Merge "Make intra predictor reference buffer configurable"Jingning Han
2013-06-26Merge "Make update_partition_context faster"Jingning Han
2013-06-26Merge "Change to use LUT for mode-to-txfm conversion"Yaowu Xu
2013-06-26Make intra predictor reference buffer configurableJingning Han
This commit enables configurable reference buffer pointer for intra predictor. This allows later removal of spatial dependency between blocks inside a 64x64 superblock in the rate-distortion optimization loop. Change-Id: I02418c2077efe19adc86e046a6b49364a980f5b1
2013-06-26Merge "Remove empty function vp9_build_block_offsets"Jingning Han
2013-06-26Make update_partition_context fasterJingning Han
Use vpx_memset for updating the partition contexts. Thanks to Noah for pointing out the need of refactoring in this part. Change-Id: I67fb78429d632298f1cd8a0be346cc76f79392a6
2013-06-26Remove unused macro RDTRUNC_8x8 from encodemb.c.Ronald S. Bultje
Change-Id: I0c097567adab24215d807963ccb34810a2afe007
2013-06-26Remove empty function vp9_build_block_offsetsJingning Han
This function is empty, hence is removed. Change-Id: Ia9d01710806bffe0398a6dc9405f8a5a81b27d74
2013-06-26Change to use LUT for mode-to-txfm conversionYaowu Xu
Change-Id: Ieb989830f49e6708ee7728eddebf7a2144c37c6f
2013-06-26Merge "fixed a compiling problem with MSVC win32 build"Paul Wilkins
2013-06-26Auto adapt step size feature.Paul Wilkins
Also tweaks to other features and experiments with what is on and off at different speed settings. Change-Id: I3e1d0be0d195216bf17c2ac5df67f34ce0b306b2
2013-06-26General cleanup in segmentation-related code.Dmitry Kovalev
Using consistent function and variable names. Change-Id: I2deb3fded8797453a2081836c9ce2e79ade06eb7
2013-06-26Merge "Using get_plane_block_{width, height} instead of custom code."Dmitry Kovalev
2013-06-26fixed a compiling problem with MSVC win32 buildYaowu Xu
The aligned array in parameter list caused win32 build to report c2719 error. This commit fixed the issue by make the parameter type a pointer instead of an array. Change-Id: I4ed654ce4eba2db4995d9cdc136c68e9a6acc992
2013-06-26Start adaptive threshold for each mode at max.Paul Wilkins
Each frame we reset all adaptive thresholds to MAX rather than base. As modes are picked their thresholds drop down. Change-Id: Ia37f03a73003c2d9bfcda57edea07205e9a0e5e8
2013-06-26Change meaning of cpi->sf.first_step and rename.Paul Wilkins
Renamed cpi->sf.first_step to cpi->sf.reduce_first_step_size and changed its meaning such that it is a delta applied to reduce the default first step size (>> x) in the motion search rather than an absolute value. The default first step size is already changed according to the image dimensions (smaller for smaller images). cpi->sf.reduce_first_step_size now applies a further correction from the default. Change-Id: Ia94e08bc24c67b604831f980909af7e982fcd16d
2013-06-25Merge "Move vp9_counts_to_nmv_context to encoder"John Koleszar
2013-06-25Merge "Move vp9_full_to_model_counts to encoder"John Koleszar
2013-06-25Merge "Refactor intra predictor block"Jingning Han
2013-06-25Refactor intra predictor blockJingning Han
Remove vp9_intra4x4_predict(). Use the common intra prediction function for all block sizes. Change-Id: Ibd19d51dfa3da8bbdfb79ddeb81530b2e2089560
2013-06-25Renaming "nmv" to "mv".Dmitry Kovalev
Change-Id: I8299f55c3b930221e52c2237f2ddea65b94fd33b
2013-06-25Using get_plane_block_{width, height} instead of custom code.Dmitry Kovalev
Change-Id: I453ed11b965e857a14c18ea5c0f4a0a48e7dc0d9
2013-06-25Merge "Only do metrics on cropped (visible) area of picture."Ronald S. Bultje
2013-06-25Merge "Don't skip right/bottom border pixels in SSIM calculations."Ronald S. Bultje
2013-06-25Merge "Add averaging-SAD functions for 8-point comp-inter motion search."Ronald S. Bultje
2013-06-25Merge "Tune the rounding operations in 8x8 ADST/DCT sse2"Jingning Han
2013-06-25Only do metrics on cropped (visible) area of picture.Ronald S. Bultje
The part where we align it by 8 or 16 is an implementation detail that shouldn't matter to the outside world. Change-Id: I9edd6f08b51b31c839c0ea91f767640bccb08d53
2013-06-25Don't skip right/bottom border pixels in SSIM calculations.Ronald S. Bultje
Change-Id: I75acb55ade54bef6ad7703ed5e691581fa2f8fe1
2013-06-25Add averaging-SAD functions for 8-point comp-inter motion search.Ronald S. Bultje
Makes first 50 frames of bus @ 1500kbps encode from 3min22.7 to 3min18.2, i.e. 2.3% faster. In addition, use the sub_pixel_avg functions to calc the variance of the averaging predictor. This is slightly suboptimal because the function is subpixel-position-aware, but it will (at least for the SSE2 version) not actually use a bilinear filter for a full-pixel position, thus leading to approximately the same performance compared to if we implemented an actual average-aware full-pixel variance function. That gains another 0.3 seconds (i.e. encode time goes to 3min17.4), thus leading to a total gain of 2.7%. Change-Id: I3f059d2b04243921868cfed2568d4fa65d7b5acd
2013-06-25Tune the rounding operations in 8x8 ADST/DCT sse2Jingning Han
Improve the round-trip precision to meet the unit test setttings. Change-Id: I303febae56b4b990ea3798b8ebed94c0510ecf79
2013-06-25Merge "Don't re-allocate comp_pred buffers for each call to comp motion search."Ronald S. Bultje
2013-06-25Moving subexp encoding functions in separate vp9_dsubexp.c file.Dmitry Kovalev
Change-Id: Idbb2ea80f764fa830fe2ddcfc54ef7fe232f05a8
2013-06-25Merge "Removing unused code."Dmitry Kovalev
2013-06-25Merge "Add 8x8 dct/adst unit tests"Jingning Han
2013-06-25Merge "Changed size of mb_mode_context to 8 bits"Yaowu Xu
2013-06-25Merge "Small mode_info_context cleanup in filter_block_plane"Scott LaVarnway
2013-06-25Removing unused code.Dmitry Kovalev
Removing block index (ib) parameter from get_tx_type_{8x8, 16x16} functions. Change-Id: Ia213335aae7a7cb027f97b9cc9b04519840250f1
2013-06-25Merge "Removing find_seg_id and using vp9_get_pred_mi_segid instead."Dmitry Kovalev
2013-06-25Merge "Transforming scale_mv_component_q4 into scale_mv_q4 function."Dmitry Kovalev
2013-06-25Add 8x8 dct/adst unit testsJingning Han
This commit enables 8x8 DCT and hybrid transform unit tests. It also tunes the forward hybrid transform rounding opertions for more precise round-trip performance. Change-Id: If05c1ce59d75d641b9c6c91527d02d3a6ef498c3
2013-06-25Merge "Use aligned buffer operations in 8x8/16x16 2D-DCT"Jingning Han
2013-06-25Small mode_info_context cleanup in filter_block_planeScott LaVarnway
Unnecessary updates to xd->mode_info_context. Change-Id: I36d2d68ca48366f727548526726b1b5437f62968
2013-06-25Merge "Enable sse2 implmentation of 8x8 ADST/DCT"Yaowu Xu