summaryrefslogtreecommitdiff
path: root/vp9/encoder
AgeCommit message (Collapse)Author
2014-01-15Merge "Removing unused calc_partial_ssl_err() function."Dmitry Kovalev
2014-01-15Merge "As you go mbmi->skip_coeff"Jim Bankoski
2014-01-15Merge "Removing intra_mode_stats."Dmitry Kovalev
2014-01-15Merge "Save ~30% off tokenize_b"Jim Bankoski
2014-01-15Merge "Cleaning up vp9_rdopt.c."Dmitry Kovalev
2014-01-14As you go mbmi->skip_coeffJim Bankoski
Calculate the skip_coeff as part of the encode process, rather than checking the eobs after the fact with another pass. Change-Id: Ib41b139e96a97dee30e4b993b4cc53d86337128d
2014-01-14Fixing invalid block width/height calculation.Dmitry Kovalev
Change-Id: Ieaeb53902ce0ffd5b1b27a92583e98abfa791433
2014-01-14Cleaning up vp9_rdopt.c.Dmitry Kovalev
Change-Id: I5200bf68b43578eaadc4ea47b37f2633fa96d7bd
2014-01-14Save ~30% off tokenize_bJim Bankoski
Refactoring for speed in the same vein as detokenize_b... Change-Id: I90779aa46e3b13c22ddce9a42b60e1920ad97142
2014-01-14Merge "Making motion search code more compact."Dmitry Kovalev
2014-01-14Merge "Removing unnecessary casts + cleanup."Dmitry Kovalev
2014-01-14Merge changes I8eda5762,Ia2ffca07Dmitry Kovalev
* changes: Removing unused switchable_interp_count[] field from VP9_COMP. Using clamp() function instead of the same raw code.
2014-01-14Merge "Removing unused error_bins[] field from VP9_COMP."Dmitry Kovalev
2014-01-14Merge "Reusing get_frame_new_buffer() function."Dmitry Kovalev
2014-01-14Merge "Cleaning up vp9_encodeframe.c."Dmitry Kovalev
2014-01-14Merge "Adding get_vp9_ref_frame_buffer() function."Dmitry Kovalev
2014-01-14Merge "Converting int_mv to MV."Dmitry Kovalev
2014-01-14Merge "Minor fix on an assert"Deb Mukherjee
2014-01-14Minor fix on an assertDeb Mukherjee
Fixes assert that fails occasionally on small values of max-key frame intervals. Also, adds a small change on updating frames_to_key for frame drops. Change-Id: Icc2b33b25e3e4ced7e49f8db73e0a887ef9c99e0
2014-01-13Merge "fix a div by zero issue"Yaowu Xu
2014-01-13Removing unused error_bins[] field from VP9_COMP.Dmitry Kovalev
Change-Id: I883eb9026b44cb354d5b01c0f1d34ecd71f942e4
2014-01-13Removing unused switchable_interp_count[] field from VP9_COMP.Dmitry Kovalev
Change-Id: I8eda5762728d981ab7757388741b598c665c26ca
2014-01-13Using clamp() function instead of the same raw code.Dmitry Kovalev
Change-Id: Ia2ffca072f5391b277ce1a0c4e5b4ece9ffc6831
2014-01-13Making motion search code more compact.Dmitry Kovalev
Change-Id: I04d6a006eaf2676f2d8d1d96b87f69e081969382
2014-01-13Reusing get_frame_new_buffer() function.Dmitry Kovalev
Change-Id: Iac5c5aeaef62a4095a60d91285d2c7ad717db0fb
2014-01-13Removing unnecessary casts + cleanup.Dmitry Kovalev
Change-Id: I7298087426977e36b61ecf493949e9412842254c
2014-01-13Merge "Adding mv_has_subpel() function."Dmitry Kovalev
2014-01-13Removing intra_mode_stats.Dmitry Kovalev
Change-Id: I6e0895f7f826b484ac86945e6abe3a706a6b0399
2014-01-13Removing unused calc_partial_ssl_err() function.Dmitry Kovalev
Change-Id: Iad8b0208d3a3b0fc3d7fda3933b0fc007d4d2e9e
2014-01-13Converting int_mv to MV.Dmitry Kovalev
Change-Id: Id31c0e100d275bd3650eaf5e4b8fe5ce648dbfaf
2014-01-13Merge "Cleaning up and fixing psnr calculation code."Dmitry Kovalev
2014-01-13Adding mv_has_subpel() function.Dmitry Kovalev
Change-Id: I50922bb1a689f8515debaa018f850b231c21189f
2014-01-13fix a div by zero issueYaowu Xu
Change-Id: I091dfaa0ed5b9672eedd46d6097469d0802e24ef
2014-01-13Enable reference frame masking for rt modeYaowu Xu
Reference frame masking helped good quality mode to gain about 5% in encoding speed, this commit enable it for rt mode to gain the speed improvement. In addition, this commit move the speed feature setup to a separate function. Change-Id: I015e8f78bbb21dd43ae183b9b9355bea2ccda9c5
2014-01-13No arf right before real scene cut.Paul Wilkins
To reduce pulsing we now allow an arf just before forced key frames and at the end of a clip or section (which may be stitched to another clip or section). However, this does not make sense for key frames arising from real scene cuts. Change from original patch reflects other recent changes in regard to alignment of gf/arf and kf groups. Change-Id: I074a91d1207e9b3e28085af982f6718aa599775f
2014-01-13Further rate control tweaks and fixes.Paul Wilkins
Further fixes regarding min and max rate. Bug fixes re kf group bits and last kf group. Change-Id: Iaafd719d30a489e135a3c55851ce8c632091a436
2014-01-10Merge "Cleaning up vp9_rc_postencode_update() function."Dmitry Kovalev
2014-01-10Cleaning up and fixing psnr calculation code.Dmitry Kovalev
Introducing calc_psnr() which calculates psnr between two yv12 buffers. Previously we incorrectly used width/height instead of crop_width/crop_height to calculate number of samples -- fixed. Change-Id: Iecda01980555de55ad347e0276e6641c793fa56c
2014-01-10Merge "Declare setup_buffer_inter in vp9_rdopt.h"Jingning Han
2014-01-10Merge "Enable skipping reference frame check in rd loop"Jingning Han
2014-01-10explain speed featuresJim Bankoski
Added comments to explain what the various speed features do, and removed 1 that was clearly unused. Change-Id: Icd37a536072ddafedbfaefcecbe48979f6d10faf
2014-01-10Declare setup_buffer_inter in vp9_rdopt.hJingning Han
This funtion initializes buffer pointers and first stage motion vector prediction. It will be needed by both regular rate-distortion optimization loop and the non-RD mode decision. Hence move its declaration in vp9_rdopt.h Change-Id: I64e8b6316c9d05f20756a62721533a2e4d158235
2014-01-10Cleaning up vp9_encodeframe.c.Dmitry Kovalev
Change-Id: I6d9f595249dc71752abe16c042d3b07aa2e4248d
2014-01-10Adding get_vp9_ref_frame_buffer() function.Dmitry Kovalev
Change-Id: Iae195fcf952dd27ba424f8e95090b8ffc4d5a7c8
2014-01-10Merge "Don't use gf_update by default for 1-pass CBR."Marco Paniconi
2014-01-10Cleaning up vp9_rc_postencode_update() function.Dmitry Kovalev
Change-Id: I02e44c10660fdb9201a802ad19ceb64756feeebe
2014-01-10Don't use gf_update by default for 1-pass CBR.Marco Paniconi
Change-Id: I5df6abceb0a2a69706feadeb820b593cae88f573
2014-01-10Merge "Adding {get, set}_rate_correction_factor() functions."Dmitry Kovalev
2014-01-10Merge "Keep buffer clipped to maximum in change_config."Marco Paniconi
2014-01-09Enable skipping reference frame check in rd loopJingning Han
This commit allows encoder to compare the SAD cost associated with the best motion vector predictor, per frame. If one reference frame has this cost more than 4 times of the best SAD cost given by other reference frames, skip NEARESTMV, NEARMV, ZEROMV mode check of this reference frame. This setting is turned on in speed 2 and above. Compression quality change in speed 2: derf -0.014% yt -0.097% hd -0.023% stdhd 0.046% It reduces the speed 2 runtime of test sequences: pedestrian_area_1080p 4000 kbps 310763 ms -> 303595 ms bluesky_1080p 6000 kbps 259852 ms -> 251920 ms Change-Id: I7f59cf79503d51836d61d56d50dc5bdf0e502e22