summaryrefslogtreecommitdiff
path: root/vp9
AgeCommit message (Collapse)Author
2014-10-10Revert "Add adaptation option for VBR."Alex Converse
This reverts commit 869d4ca51957614dcf5093ebb9e322cc8a8405ca. This breaks the build via conflict with e18edd5eb651f9b7563cbd829744807402bfe0d8. Change-Id: If544b99e367a449452834eb8cce600f58c34ec0d
2014-10-10Merge "Optimize the code to set the refernce frame right after reading the ↵hkuang
header."
2014-10-10Merge "Correct the code format."hkuang
2014-10-10Merge "Add adaptation option for VBR."Paul Wilkins
2014-10-10Merge "vp9/choose_partitioning: add missing clear_system_state"Yaowu Xu
2014-10-10vp9/choose_partitioning: add missing clear_system_stateJames Zern
set_vt_partitioning does double math Change-Id: I8e9d73d5c89b937a5326abf04164d24d9d88c5ef
2014-10-10Add adaptation option for VBR.Paul Wilkins
Allow min and maxQ to creep when the undershoot or overshoot exceeds thresholds controlled by the command line under_shoot_pct and over_shoot_pct values. Default is 100%,100% which ~disables adaptation. Derf results for example undershoot% / overshoot%:- Head:- Mean abs (%rate error) = 14.4% This check in:- 25%/25% - Mean abs (%rate error) = 6.7% PSNR hit -1% SSIM -0.1% 5% / 5% - Mean abs (%rate error) = 2.2% PSNR hit -3.3% SSIM - 1.1% Most of the remaining error and most of the quality hit is at extreme data rates. The adaptation code still has an exception for material that is in effect static so that we don't over adjust and over spend on YT slide show type content. Change-Id: If25a2449a415449c150acff23df713e9598d64c9
2014-10-10vp9_avg_intrin_sse2: correct intrinsics includeJames Zern
immintrin.h -> emmintrin.h fixes build where newer intrinsics are unavailable Change-Id: I79311b39bfa782fc2abeb45884ecb417050cb9f8
2014-10-09Correct the code format.hkuang
Change-Id: If2de420f8123a4e8bf635dd29205dd74ee174eee
2014-10-09Optimize the code to set the refernce frame right after reading the header.hkuang
Change-Id: I495cf4a366e06e3220ed132500b1ba1c8448f708
2014-10-09Merge "Remove unnecessary code."hkuang
2014-10-09Merge "Remove unnecessary scale check in set_ref."hkuang
2014-10-09Merge "Rename highbitdepth functions to use highbd prefix"Deb Mukherjee
2014-10-09Remove unnecessary code.hkuang
Function will jump to error handler when ref buffer is corrupted. So "xd->corrupted |= ref_buffer->buf->corrupted;" is useless. Change-Id: I35353a0637ad0dbb682454e040ef69fa68280bfa
2014-10-09Rename highbitdepth functions to use highbd prefixDeb Mukherjee
Uses highbd_ prefix convention consistently. Change-Id: I58f7f799a7ff8e32701bcd71c955bcf1cdd4581e
2014-10-09Remove unnecessary scale check in set_ref.hkuang
Scale check has been done in read_inter_block_mode_info. Change-Id: I6c86f93bd579109ed30ff13a04a30e35f5ae6fc5
2014-10-09Merge "Remove sub8x8 block index from rd_pick_partition argument"Jingning Han
2014-10-09Merge "Subpel search cleanups and enhancements"Deb Mukherjee
2014-10-09Merge "Move the high freq coeff check outside store_coding_context"Alex Converse
2014-10-09Remove sub8x8 block index from rd_pick_partition argumentJingning Han
This parameter is deprecated. Its function is replaced with other explicit condition check. Change-Id: I61337e350ba8ca9eb50382db8b4d4acbf45cb7eb
2014-10-09Merge "Fix src frame buffer copy and extend"Yaowu Xu
2014-10-09Merge "set_vt_partitioning: fix type conversion warning"James Zern
2014-10-09set_vt_partitioning: fix type conversion warningJames Zern
double -> int64 + make threshold_multiplier an int Change-Id: I6d3607fdf13d670f57c9d9b04a80acb2be1346a0
2014-10-09vp9_rtcd_defs: fix vp9_avg_8x8 declarationJames Zern
vp9_avg_8x8 does not depend on x86inc, fixes 32-bit OS X build Change-Id: I709b874ea84bf57c8cdb5ac7d43eecc6b8c1a2dd
2014-10-08Subpel search cleanups and enhancementsDeb Mukherjee
- Some fixes to surface fit. - Returns variance function as cost rather than sad in the pattern search and diamond search functions. Only vp9_pattern_search_sad function used in bigdia search uses sad as integer 1-away costs. - Deploys SUBPEL_TREE_PRUNED_MORE for speed 4+. Results: derf [Speed 3]: About +0.036% in coding efficiency without any discernible speed loss. derf [Speed 4]: About 2-3% faster at -0.199% loss in coding efficiency. derf [Speed 5]: About 3-4% faster at -0.149% loss in coding efficiency. Change-Id: I8462f94f6adb46966ca964f2bd0400977357fd63
2014-10-08Merge "Allow mode search breakout at very low prediction errors"Yunqing Wang
2014-10-08Allow mode search breakout at very low prediction errorsYunqing Wang
In model_rd_for_sb function, the spatial domain SSE and variance are checked to see if transform coefficients are quantized to 0. Besides that, this patch adds another set of thresholds that are much more strict. These thresholds are used to conduct a partition block level check to measure if all its TX blocks are skippable for YUV planes. If it is true, x->skip is set for this partition block, and thus its mode search is terminated. This speeds up the encoding at very low prediction error case, such as screen sharing application. This patch covers what rd_encode_breakout_test() does, so that function is removed. Borg test at speed 3 shows: For stdhd set, psnr: +0.008%, ssim: +0.014%; For derf set, psnr: +0.018%, ssim: +0.025%. No noticeable speed change. Change-Id: I4e5f15cf10016a282a68e35175ff854b28195944
2014-10-08Move the high freq coeff check outside store_coding_contextJingning Han
This fixes valgrind message issue 870. Change-Id: Ibbc2481923a2995029ab05de30c9e8a6e9f0f9a8
2014-10-08Use local variable in vp9_rd_pick_inter_mode_sbJingning Han
Change-Id: Ie35a965a6b8de536ccaf61ff61498620d22db205
2014-10-08Merge "Clean up header files in vp9_blockd.h and related files"Jingning Han
2014-10-08Merge "Use #define statement for MAX_MB_PLANE"Jingning Han
2014-10-08Fix src frame buffer copy and extendYaowu Xu
For input source with size that is not multiple of 8, the size is rounded to 8 and saved in width or height, the original source sizes are saved in crop_width and crop_height. This commit corrects the computation of bottom and right extension amounts to use the orignal sizes, hence crop_width and crop_height. In addition, this commit also adds the missed initialization for uv_crop_width and uv_crop_height. This addresses issue #834 Change-Id: I084543ca7645a4964b88f7cf8ff668f517d3a39b
2014-10-08Merge "experimental : partition using 1/8 x 1/8 image"Jim Bankoski
2014-10-08Merge "Force better lower quantizer keyframe in case of high quantizer."Jim Bankoski
2014-10-08Merge "Improve two pass VBR accuracy."Paul Wilkins
2014-10-08Merge "Two pass rc changes."Paul Wilkins
2014-10-07experimental : partition using 1/8 x 1/8 imageJim Bankoski
The concept: There's too much noise in source pixels for variance and at low bitrate the reconstructed looks nothing like the source so we have problems getting good partitionings with either. This skirts the issue by using a box blur scaled down version for variance calculations. To compare against source_var_ moved keyframe to be rd based like source_var. Change-Id: Ie3babdbfadae324b7b5a76bea192893af27f0624
2014-10-07Force better lower quantizer keyframe in case of high quantizer.Jim Bankoski
Change-Id: Ie69a164bc166b6a8819777038d65a7d9f9c3361f
2014-10-07Merge "Remove vp9_blockd.h from vp9_common_data.c"Jingning Han
2014-10-07Merge "Replace mi_width_log2() with mi_width_log2_lookup table"Jingning Han
2014-10-07Merge "Take out repeated block width/height lookup functions"Jingning Han
2014-10-07Clean up header files in vp9_blockd.h and related filesJingning Han
This commit breaks the overly broad header files into more targeted and smaller ones, to help better structure the system layout. Change-Id: I7b24559d3ea6e582cf5d9bbe8f71459f9824d71b
2014-10-07Merge "Fix skip_txfm issue in rdopt code"Yunqing Wang
2014-10-07Use #define statement for MAX_MB_PLANEJingning Han
Change-Id: I3a7f83ab1dbfcedc8a82fe798c2fa30dd9c7d696
2014-10-07Remove extra empty lineJingning Han
Change-Id: I6f2865bb8ba9295f5c45a4cad065aecbe1e63c32
2014-10-07Merge "Move inter filter defs to vp9_filter.h"Jingning Han
2014-10-07Merge "Reduce the scope of the header file used in vp9_context_tree.h"Jingning Han
2014-10-07Merge "Remove redundant header file from vp9_encoder.h"Jingning Han
2014-10-07Remove vp9_blockd.h from vp9_common_data.cJingning Han
The basic data defs should be above block operation level. Change-Id: I7dd9836d01120ab75e0c472baac9f15495ed0db5
2014-10-07Fix skip_txfm issue in rdopt codeYunqing Wang
Fixed an encoder crash. Set skip_txfm to 0 for cases that skip_txfm isn't calculated. Put memcpy of skip_txfm at right place. Change-Id: Ib3b6afc1b251a85b2a853c8138fb3393f48cfef6