summaryrefslogtreecommitdiff
path: root/vp9/encoder
AgeCommit message (Collapse)Author
2014-04-07Moving {restore, save}_coding_context to vp9_onyx_if.cDmitry Kovalev
These functions do nothing about rate control. Change-Id: I714e80b1c1f4f9aa157a56df705247fce6db138d
2014-04-07Merge "Cleaning up vp9_refining_search_sadx4() function."Dmitry Kovalev
2014-04-07Merge "Moving all RATE_CONTROL initialization to init_rate_control()."Dmitry Kovalev
2014-04-06Merge "Set up early RD cost check for NEWMV in non-RD mode decision flow"Jingning Han
2014-04-04Set up early RD cost check for NEWMV in non-RD mode decision flowJingning Han
This commit estimates the motion vector rate cost right after full pixel motion search. It combines this and the mode cost and compares the corresponding rate-distortion cost. If it is already above the current best one, skip the rest sub-pixel motion search and modeling process. For pedestrian_area 1080p at 4000 kpbs, the speed -5 runtime goes down from 39425 ms -> 38399 ms. Change-Id: If4cd7119fd6c266798d5cf1d19d19ab425e52a26
2014-04-04Moving all RATE_CONTROL initialization to init_rate_control().Dmitry Kovalev
Change-Id: I4685706b816dd1c45500e1387c9f63edb2fa1962
2014-04-04Adding FAST_COEFF_UPDATE enum.Dmitry Kovalev
Change-Id: I75ad328c6d719df81cc24f3ae21c152af4ebdacc
2014-04-04Merge "Reinstating the DISABLE_RC_LONG_TERM_MEM macro"Paul Wilkins
2014-04-03Merge "Removing interp_kernel from MACROBLOCKD."Dmitry Kovalev
2014-04-03Merge "Add codec control function for enabling frame_periodic_boost."Marco Paniconi
2014-04-03Merge "Fix complexity Aq mode."Yaowu Xu
2014-04-03Merge "Replacing magic constants with expressions."Dmitry Kovalev
2014-04-03Add codec control function for enabling frame_periodic_boost.Marco Paniconi
Change-Id: I6371ef7301c6bc3138552bd349e9bd154dee3e08
2014-04-03Merge "Adjust key frame quantization index for rtc coding"Jingning Han
2014-04-03Removing interp_kernel from MACROBLOCKD.Dmitry Kovalev
Now interp_kernel is obtained when it is really required (based on mbmi->interp_filter value). Change-Id: I4c7a93c179d1045eba16e7526c293d02c9b8b47e
2014-04-03Remove full scale duplicates of bsize.Alex Converse
Change-Id: I28e45870a0e3b0de3b9e40fb044789ae1209c0f7
2014-04-03Reinstating the DISABLE_RC_LONG_TERM_MEM macroDeb Mukherjee
Reinstates this macro and truns it on in order to avoid issues due to some frames at the end starving in harder videos. A more acceptable solution is in the works. Change-Id: I3c46148e86fa6114e3fed245246fb3686a9e6700
2014-04-03Merge "Making frame_branch_ct a local array."Dmitry Kovalev
2014-04-03Fix complexity Aq mode.Paul Wilkins
This was broken by change Icc4b66f3935fad5ec4516a4d57e843d12c365e64 Change-Id: I49e3fc525664eb7a433f55f76b8f8628fe251eab
2014-04-03Merge "Fixing typo in cal_nmvjointsadcost()."Dmitry Kovalev
2014-04-02Adjust key frame quantization index for rtc codingJingning Han
This commit slightly increases the bit allocation for key frame. This improves speed -5 coding performance by 2.77% with aq-mode=0 and by 2.78% with aq-mode=3. Change-Id: Iaa3e777f80b9706306606af06e89852bac146659
2014-04-02Making frame_branch_ct a local array.Dmitry Kovalev
Change-Id: Id79ed3b87fd6055e96738af53eb964addd0b918b
2014-04-02Cleaning up vp9_refining_search_sadx4() function.Dmitry Kovalev
Change-Id: I47a7148bf746f61d0c4947f9b22624a8c071359f
2014-04-02Merge "Cleaning up vp9_pattern_search() function."Dmitry Kovalev
2014-04-02Merge "Set min_block_size for aq_mode=3 to 8x8."Marco Paniconi
2014-04-02Set min_block_size for aq_mode=3 to 8x8.Marco Paniconi
For real-time mode under cbr, this increases the gain (5-10%) for speed 5 (none/little change for 6), on vc-clips. Change-Id: I9b38beeb3c820de22c43a0ba53a9456168dd24ba
2014-04-02Merge "Rate ctrl changes to track target bitrates closer"Deb Mukherjee
2014-04-02Merge "Cleaning up vp9_get_mvpred_{av_,}var() functions."Dmitry Kovalev
2014-04-02Merge "Make frame level quantization change a parameter"Jingning Han
2014-04-02Merge "Adjust rate allocation in non-RD coding mode"Jingning Han
2014-04-02Merge "Add speed feature for recode tolerance."Paul Wilkins
2014-04-02Rate ctrl changes to track target bitrates closerDeb Mukherjee
Turns off the DISABLE_RC_LONG_TERM_MEM macro and makes other changes in the way the bits are updated, to make 2-pass rate control track target bitrates closer. Change-Id: I5f3be4b11c2908e6a9a9a1dd4fcf4e65531c44d8
2014-04-02Merge "Clearing all encoder counts with single vp9_zero() call."Dmitry Kovalev
2014-04-02Merge "Adding local pointer variables referencing REATE_CONTROL struct."Dmitry Kovalev
2014-04-02Merge "Remove the q division by 3 for first frame."Marco Paniconi
2014-04-02Make frame level quantization change a parameterJingning Han
Parameterize the frame level quantization index used in non-RD coding flow with cbr. Change-Id: I79cfbd9c32c0d0fc33ad720d2180432e910baf7a
2014-04-02Adjust rate allocation in non-RD coding modeJingning Han
This commit reduces the frequency of frames using finer quantizer in non-RD coding flow, and slightly tune up the quantizer resolution when used. It provides 1.7% compression gains in speed -5 at no speed difference. Change-Id: I430249a51260a841a0402666e5ec1566e4f7d5a6
2014-04-02Add speed feature for recode tolerance.Paul Wilkins
The new tolerance is a little higher than before (especially for kf/gf/arf) so this change gives an encode speed up for some clips up for speeds 0-2. Change-Id: I63f7d6c9cc11c7f58742f41e250dcd3eab1741eb
2014-04-02Merge "Speed setting correction to max q estimate."Paul Wilkins
2014-04-01Adding local pointer variables referencing REATE_CONTROL struct.Dmitry Kovalev
Change-Id: I1d8c312a599db505a023e5cd0cc4ba2b8f696a2e
2014-04-01Clearing all encoder counts with single vp9_zero() call.Dmitry Kovalev
Change-Id: I4341d16ef83acd1cc9e55f7c5eff4af921bf57d4
2014-04-01Remove the q division by 3 for first frame.Marco Paniconi
This code/setting was actually not used (since speed features were not set on first frame, until a recent change) and should be removed. In CBR mode, the q value for the first frame can be controlled by setting the target size via the parameters rc_buf_initial_sz (and max_intra_size_pct). Change-Id: I65afc64972b36c449bd5a8c25800e65da5389066
2014-04-01Renaming two members in MACROBLOCKD struct.Dmitry Kovalev
Renames: mi_8x8 -> mi mode_info_stride -> mi_stride Change-Id: I66f3e5fd1e7b7f46f108af5bb711c5fd9493c1be
2014-04-01Replacing magic constants with expressions.Dmitry Kovalev
Change-Id: I434682bbd4cb2089cd213d77ed5a5e06256dc45d
2014-04-01Merge "Moving encoder quantization parameters into separate struct."Dmitry Kovalev
2014-04-01Merge "Common configuration for MACROBLOCKD struct."Dmitry Kovalev
2014-04-01Merge "Make last frame source available in current frame encoding"Yunqing Wang
2014-04-01Make last frame source available in current frame encodingYunqing Wang
While encoding a frame, its last frame source can be used to give acurate motion information. This patch prevents last frame to be overwritten so that it is available during current frame encoding. The last source is scaled when it is necessary. cpi->Last_Source points to the last source frame. Change-Id: I0e1ef5e9e1d2badf9d0c7a1a44a7ed5b24c09425
2014-04-01Merge "Propagate active map state."Alex Converse
2014-04-01Common configuration for MACROBLOCKD struct.Dmitry Kovalev
Change-Id: Ie2ea9dd8bd338cc9fe12ca9033df64f7644c68b3