- 28 Jan, 2015 1 commit
-
-
Paul Wilkins authored
Remove damping parameter and use the damping formula introduced by Yaowu Xu in all cases. Change-Id: I18db7e0d0f262d5140102f259ab07821d374d285
-
- 21 Jan, 2015 1 commit
-
-
Paul Wilkins authored
Just before a forced key frame we often get a foreshortened arf/gf group. In such a case, we do not want to update rc->last_boosted_qindex, which is used to define the Q range for the forced key frame itself. This gives a small average metrics gain for the YT and YT-HD sets (eg. YT SSIM +0.141%). Change-Id: Ie06698bc4f249e87183b8f8fb27ff8f3fde216d9
-
- 02 Dec, 2014 1 commit
-
-
Marco Paniconi authored
Incorporate segment delta-q into estimated bits. This generally improves the rate control under cyclic refresh (aq=3) mode. Change-Id: I1dc60fb230e7d08357fae18909d8ed27bf58e037
-
- 18 Nov, 2014 1 commit
-
-
Yaowu Xu authored
In rare cases, the interaction between rate correction factor and Q choices may cause severe oscillating frame sizes that are way off target bandwidth. This commit adds tracking of rate control results for last two frames, and use the information to prevent oscillating Q choices. Change-Id: I9a6d125a15652b9bcac0e1fec6d7a1aedc4ed97e
-
- 13 Nov, 2014 1 commit
-
-
Adrian Grange authored
Prepare for the introduction of frame-size change logic into the recode loop. Separated the speed dependent features into separate static and dynamic parts, the latter being those features that are dependent on the frame size. Change-Id: Ia693e28c5cf069a1a7bf12e49ecf83e440e1d313
-
- 13 Oct, 2014 1 commit
-
-
Paul Wilkins authored
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. (Rebase of If25a2449a415449c150acff23df713e9598d64c9 to resolve a auto-merge error) Change-Id: Iec4e1613ef0d067454751d8220edb7058dfbd816
-
- 10 Oct, 2014 2 commits
-
-
Alex Converse authored
This reverts commit 869d4ca5. This breaks the build via conflict with e18edd5e. Change-Id: If544b99e367a449452834eb8cce600f58c34ec0d
-
Paul Wilkins authored
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
-
- 18 Sep, 2014 1 commit
-
-
Paul Wilkins authored
Substantial restructuring of the way we estimate the rate of decay in prediction quality and determine the arf interval and amount of boost used. Also other changes to support moving to a lower first pass Q which exposes some new features and allows us to better distinguish genuinely static blocks from low motion or noisy blocks. Net gains now visible on all the test sets with std-hd PSNR up 1.87%. There are still some bad outlier cases but most of these are low motion or slide show type content where the metrics are already high at any given rate. The best + case is up by more than 10%. Change-Id: I18e25170053bdf3188f493ff8062f48a74515815
-
- 16 Sep, 2014 1 commit
-
-
Deb Mukherjee authored
Adds various high bitdepth quantization functions. Change-Id: I36fc0bf75a1bd15128ed271df8723de0ac134b0c
-
- 14 Jul, 2014 1 commit
-
-
Minghai Shang authored
All changes are for spatial svc only. 1. Enable encoding hidden frames in each layer and use alt reference idex to reference the hidden frame in each layer 2. Use golden reference idx for spatial reference 3. For those layers that don't have hidden frames (caused by lack of frame buffers), reference a hidden frame in lower layers 4. Add "auto-alt-refs" in svc options Change-Id: Idf27d1fd2fb5f3ffd9e86d2119235e3dad36c178
-
- 24 Jun, 2014 1 commit
-
-
Paul Wilkins authored
This patch implements a mechanism for inserting a second arf at the mid position of arf groups. It is currently disabled by default using the flag multi_arf_enabled. Results are currently down somewhat in initial testing if multi-arf is enabled. Most of the loss is attributable to the fact that code to preserve the previous golden frame (in the arf buffer) in cases where we are coding an overlay frame, is currently disabled in the multi-arf case. Change-Id: I1d777318ca09f147db2e8c86d7315fe86168c865
-
- 04 Jun, 2014 1 commit
-
-
Dmitry Kovalev authored
The third array element was unused. 2 elements now: key- and interframe. Change-Id: I5b8b9f5d889cc96a204cedfc432059293256298e
-
- 03 Jun, 2014 1 commit
-
-
Dmitry Kovalev authored
Change-Id: Ib35ff854378764dc3c6745844c67a33dee545663
-
- 28 May, 2014 2 commits
-
-
Paul Wilkins authored
Change-Id: I89a1dbea39c50c7633f746d9c93fec3a289f1b42
-
Dmitry Kovalev authored
Change-Id: I2c6950e7d79fc89c6f97e6dcf47317ef66c453a5
-
- 30 Apr, 2014 1 commit
-
-
Dmitry Kovalev authored
Change-Id: I7cc6f441f414ca1b4d95dad3f789fff6faf8c3c4
-
- 18 Apr, 2014 1 commit
-
-
Dmitry Kovalev authored
Change-Id: Id48edd12c6f649c82113128491ef6ea7410e93b2
-
- 16 Apr, 2014 2 commits
-
-
Paul Wilkins authored
Add code to monitor over and under spend and apply limited correction to the data rate of subsequent frames. To prevent the problem of starvation or overspend on individual frames (especially near the end of a clip) the maximum adjustment on a single frame is limited to a % of its un-modified allocation. Change-Id: I6e1ca035ab8afb0c98eac4392115d0752d9cbd7f
-
Dmitry Kovalev authored
Just to be consistent with min_frame_bandwidth & max_frame_bandwidth names. Change-Id: I36702c708cba9ad1a5c36393f37758a2edeadb90
-
- 11 Apr, 2014 1 commit
-
-
Dmitry Kovalev authored
Change-Id: Ie0c905b6f32a37e4360bbb44ceeae77c42ad1dc5
-
- 10 Apr, 2014 1 commit
-
-
Dmitry Kovalev authored
Change-Id: Ib00a694b9cf8e0c276dfefddab8cb36b8693e022
-
- 07 Apr, 2014 4 commits
-
-
Dmitry Kovalev authored
Change-Id: I512f2a287dd8765879a2d1144e2f028dc65f71ff
-
Dmitry Kovalev authored
Change-Id: Iab3effc39064f265426c82b455ef38d37dcce5a8
-
Dmitry Kovalev authored
These functions do nothing about rate control. Change-Id: I714e80b1c1f4f9aa157a56df705247fce6db138d
-
Guillaume Martres authored
Change-Id: Ib3886cb7cafc211581f4f9e7f76782d9d1984434
-
- 02 Apr, 2014 1 commit
-
-
Deb Mukherjee authored
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
-
- 24 Mar, 2014 2 commits
-
-
Dmitry Kovalev authored
Change-Id: I47a8b4bf9a6cc0063d1a6785eaaad641d0659e24
-
Dmitry Kovalev authored
Change-Id: I044e393438c7b58a6393e20efa38fd03d745ad33
-
- 13 Mar, 2014 1 commit
-
-
Marco Paniconi authored
Change-Id: Ie47c139d48cb18409d71f98f6a5b9eeb9f9437a9
-
- 11 Mar, 2014 1 commit
-
-
Dmitry Kovalev authored
Change-Id: Id63e114a8f0615dbafd6a816019cdebffb983d2c
-
- 14 Feb, 2014 2 commits
-
-
Jim Bankoski authored
Change-Id: Ifd6b2d36d91237b5f38853a3a8a529d8be38ba09
-
Jim Bankoski authored
Change-Id: If3a2edd744eb76337fa78f34d0e059cda2c6da54
-
- 12 Feb, 2014 1 commit
-
-
Deb Mukherjee authored
Removes certain cases of feedback of active_worst_quality, and removes it from the RATE_CONTROL structure. Now active worst quality is expected to be computed locally in the q picking function during the encode. Making temporal filter strength depend on avg_frame_qindex rather than on active_worst_quality actually improves performance esp. for yt. derf: +0.038% yt: +0.359% Change-Id: I1fe5a343034b55af9322289165321f00ac0827b1
-
- 05 Feb, 2014 1 commit
-
-
Deb Mukherjee authored
Inlcudes a number cleanups: 1. Moves the one-pass pre-encode parameter setting functions to vp9_ratectrl.c 2. Deprecates per_frame_bandwidth in RATE_CONTROL structure 3. Removes target_bandwidth in cpi structure since it is not used. 4. Various renaming of functions There is no bit-stream change in 2-pass, one-pass cbr and one-pass vbr modes. Change-Id: Ifd9916bf4d485b7d04c5f52044ffe6703254ccbd
-
- 28 Jan, 2014 1 commit
-
-
Dmitry Kovalev authored
Change-Id: I0c286e3d68a4a4ecf6df02e6fd9990327b0ceb22
-
- 24 Jan, 2014 1 commit
-
-
James Zern authored
Change-Id: I4f51ce859a97bf1b8fd2b37ac585b7c643232b69
-
- 07 Jan, 2014 1 commit
-
-
Deb Mukherjee authored
Some cleanups on frames_to_key, frames_since_key. Also removes the unused fixed_q parameters in vp9. Change-Id: If8743a32c71de30a8d17136477b53d607a7acda8
-
- 18 Dec, 2013 1 commit
-
-
Marco Paniconi authored
Adjustments based on buffer level, frame dropper. Change-Id: Iaa85b570493526a60c4b9fb7ded4c0226b1b3a33
-
- 17 Dec, 2013 1 commit
-
-
Deb Mukherjee authored
Various cleanups and refactoring. Removes feedback of active worst qaulity and uses last_q instead to make the interface cleaner. Active worst quality is now decided only once for a frame being coded in the beginning based on last_q and other stats. Also, adds other cleaups on last_q to store also the last_q for altref frames, and reduces the altref interval a little. The output does change a little. derfraw300: +0.224% (global psnr) stdhdraw250: +0.442% (global psnr) Change-Id: Ie634cdc032697044c472dd0fe79c109b3e7f9767
-