summaryrefslogtreecommitdiff
path: root/vp9
AgeCommit message (Collapse)Author
2014-04-01Merge "Propagate active map state."Alex Converse
2014-03-31Propagate active map state.Alex Converse
This fixes active map for non-rd realtime speeds. Change-Id: I1bf416de3f7ef2e5dd2eabde052cce3c0683a52c
2014-03-31Apply finer quantizer to partition search frames in non-RD flowJingning Han
This commit optimizes the bit allocation for the non-RD coding flow. It applies slightly better quantizer to the frames, where all blocks run a non-RD partition search. Such frames typically have better rate-distortion trade off, thus improving the reconstruction quality for next few frames reference at reasonably low increment in rate cost. The coding performance for rtc set at speed -5 with error-resilient tuned on and rate control set as cbr is improved by 19.58%. It improved the coding speed by about 10% for a portion of local test clips. Change-Id: I9d56696cd4359dc8136ca10aff10fff05aaa2686
2014-03-31Merge "[BITSTREAM]Fix the scaling calculation"Yaowu Xu
2014-03-31Merge "Adjust rt speed steps."Yaowu Xu
2014-03-28Merge "[svc] Fix SvcTest.SecondPassEncode failure"James Zern
2014-03-28[BITSTREAM]Fix the scaling calculationYaowu Xu
For very large size video image, the scaling calculation may need use value beyond the range of int. This commit upgrade the value to 64bit to make sure the calculation do not wrap around INT_MAX. The change corrected the decoder behavior. The bug affects only very large resolution video because the scaling calculation was sufficient for image size smaller than 2^13. This resolves issue: https://code.google.com/p/webm/issues/detail?id=750 Change-Id: I2d2ed303ca6482f31f819f3c07d6d3e98ef3adc5
2014-03-28Adjust rt speed steps.Yaowu Xu
This commit adjusted the speed steps in rt mode to make the steps more evenly spaced on speed and quality, specifically: 1. Merged 3 and 4 into one single step 3 and removed confilicting features. 2. Move 8, 7, 6, 5 to be 7, 6, 5, 4 repsectively. Change-Id: I38d56d61531f3561d772aef953c411c8fb38c063
2014-03-28Merge "[svc] Finalize first version of 2nd pass rc"Minghai Shang
2014-03-28Merge "[svc] Initialization of 2nd pass rc for svc two pass rc"Minghai Shang
2014-03-28[svc] Fix SvcTest.SecondPassEncode failureMinghai Shang
Root cause is the different default register length between x86 and x64 platform. Change spatial_layer_id to long long. Change-Id: If1a5972365c7a59f7e76cb4fd714610f3d48a8ff
2014-03-28[svc] Finalize first version of 2nd pass rcMinghai Shang
Change-Id: I366850015004644c4fc7feabe27a782fdd8d8718
2014-03-28Merge "Moving dqcoeff array to MACROBLOCKD in decoder."Dmitry Kovalev
2014-03-28Moving dqcoeff array to MACROBLOCKD in decoder.Dmitry Kovalev
Change-Id: I3e20c0cdb9d2437bddf21afb255855f2dead8e02
2014-03-28Adding vp9_speed_features.{h, c}.Dmitry Kovalev
Change-Id: I7d9874da8ff78a2d7e0cf11073af9c30538bc9a6
2014-03-28Merge "Further speed trade off adjustments."Paul Wilkins
2014-03-28Merge "Experimental change to speed 1 settings."Paul Wilkins
2014-03-27Merge "Remove a duplicate block_size variable."Alex Converse
2014-03-27[svc] Initialization of 2nd pass rc for svc two pass rcMinghai Shang
Change-Id: If67ed8721f258883e41bab18f5c456505de68785
2014-03-27Merge "[svc] Verify and store input two pass stats data in 2nd pass rc"Minghai Shang
2014-03-27Remove a duplicate block_size variable.Alex Converse
Change-Id: Ia6b1e3c5a8ac21219bbfe9eecdb4801f3eaa10e5
2014-03-27[svc] Verify and store input two pass stats data in 2nd pass rcMinghai Shang
Change-Id: Ib09eedc17ea0ea2eec75d78112e4786d98f382aa
2014-03-27Fix segment_id assignment in update_state_rt for AQ modeJingning Han
Properly obtain and buffer the segment_id in non-RD mode information update process. Change-Id: I43230001872f6a986d12c0d94e98fdec0db3be2c
2014-03-27Merge "Moving thresh_mult{,_sub8x8} from SPEED_FEATURES to VP9_COMP."Dmitry Kovalev
2014-03-27Further speed trade off adjustments.Paul Wilkins
Small speed gain for speed 1. Quality is generally a little up for speed 2. Speed 3 was similar to speed 4 but now positioned more evenly between 2 and 4 speed and quality wise. (opsnr +5.6% ssim +8.25% across all sets) Speed 4 is a little slower than before but sizable quality gains. (opsnr +3.7% ssim +6.8% across all sets) The code has been cleaned up a bit so that for each incremental speed step changes over the previous speed step are applied. This makes it easier to see what is changing from one setting to the next. Change-Id: I2d98d0d6230af23486adaec01908f58942a7cdeb
2014-03-27Merge "aq_mode=3: Set target seg_map in sb-block order."Marco Paniconi
2014-03-27Experimental change to speed 1 settings.Paul Wilkins
Allow tx search for ARF and GF helps quality but a little slower. Setting subpel_iters_per_step to 1 improves encode speed. Setting sf->mode_skip_start = 10 improves speed. Initial local results suggest overall impact on quality is neutral but encode is up to 15% faster. Change-Id: Ibde02cae6626a44c10a1da0cefe888afbb51f037
2014-03-26aq_mode=3: Set target seg_map in sb-block order.Marco Paniconi
Removes a TODO. Changed meaning of some parameters (target-max-percent refresh and starting index) to be defined relative to superblock. Also, modify turn-off condition. Change-Id: I5e55f372b7079c24f9cdac0b06fa34620dbf456b
2014-03-26Move aq_mode=2 (complexity_aq) to separate file.Marco Paniconi
Change-Id: Iffa45b9b04196c1ded6037622a8644a2500a62de
2014-03-26Merge "Motion referenced partition search for non-RD coding flow"Jingning Han
2014-03-26Merge "Removing prev_mi_8x8 from MACROBLOCKD."Dmitry Kovalev
2014-03-26Merge "Cleaning up vp9_entropymv.c."Dmitry Kovalev
2014-03-26Motion referenced partition search for non-RD coding flowJingning Han
This commit enables the non-RD mode decision coding flow to adaptively apply partition search in non-refresh frame, when the collocated block in previous frame suggests there might be a motion activity. It refactors the update_state_rt() function to support buffer swap of mode_info struct, thereby unifying the encoding stage across various non-RD coding modes. It provides 5% compression performance gains in speed -6 for rtc test set, at about 12% speed slow down. Change-Id: Iefa374aed5a11c4b7ff9a3ed36a98ea8bd184edb
2014-03-26Moving thresh_mult{,_sub8x8} from SPEED_FEATURES to VP9_COMP.Dmitry Kovalev
SPEED_FEATURES should contain only configuration parameters. Change-Id: I7d6d0636879c3e87dad09bc9455c1cf1dc039da8
2014-03-26Encapsulating CYCLIC_REFRESH struct into .c file.Dmitry Kovalev
Change-Id: I32695ad703dcbbbbf5f122b403f3d3120a0be366
2014-03-26Removing prev_mi_8x8 from MACROBLOCKD.Dmitry Kovalev
Change-Id: I32beb5f18c10b5771146c55933b5555487f53633
2014-03-26Merge "Added a speed feature "allow_skip_recode""Yaowu Xu
2014-03-26Merge "Removed redundant settings"Yaowu Xu
2014-03-26Merge "Apply early termination in non-RD partition search"Jingning Han
2014-03-26Merge "Fix to cylcic refresh: use correct/chosen mode for update_segment."Marco Paniconi
2014-03-25Merge "Removing unused force_next_frame_intra member."Dmitry Kovalev
2014-03-25Merge "Removing redundant references to VP9D_COMP struct."Dmitry Kovalev
2014-03-25Fix to cylcic refresh: use correct/chosen mode for update_segment.Marco Paniconi
Fix so that vp9_update_segment_aq() will use the correct (i..e, chosen) encoding mode (from ctx struct) in update_state. Change-Id: Icc4b66f3935fad5ec4516a4d57e843d12c365e64
2014-03-25Merge "Moving setup_{key, inter}_frame() to vp9_onyx_if.c."Dmitry Kovalev
2014-03-25Merge "Refactor out zero motion vector equivalence."Alex Converse
2014-03-25Apply early termination in non-RD partition searchJingning Han
This commit allows the recursive non-RD partition search to early terminate sub search tree when the cumulative rate-distortion is already above the best available. Change-Id: Ifdbcbb4bee229f47fde3033200829577c9f1fc1d
2014-03-25Merge "Add consts to cost_mv_ref."Alex Converse
2014-03-25Removing unused force_next_frame_intra member.Dmitry Kovalev
Change-Id: I3d9fc6da986d0f1ec682fb12e067c52472453eed
2014-03-25Added a speed feature "allow_skip_recode"Yaowu Xu
This commit added a speed feature to make the logic of calculating skip_recode on a block level more explicit. This also enable the feature to be enabled at speed 5 where the previous logic is too conservative, help gain back the lost speed for --rt(-5). Change-Id: Ieb37ca3e85c2e7bda343486edf13d5f5395f2233
2014-03-25Removing redundant references to VP9D_COMP struct.Dmitry Kovalev
Change-Id: I4c4772c0e6aca2c7d7085a72412ac8dba8874a3d