- Jun 12, 2012
-
-
Yaowu Xu authored
This commit added the ability to accumulate the coef stats across different encodings using an intermediate binary stats files. The accumulation happens only the binary stats file exists in current directory. The encoder needs to be built with "ENTROPY_STATS" to allow the output. The commit also fixed a few formating issues in output stats file. Change-Id: Ib1a41180aa554845cf51e4421a230b128a3a82b4
-
Paul Wilkins authored
-
Paul Wilkins authored
-
Paul Wilkins authored
Changes to calculation of sr_coded_error to include 0,0 case. Experimental use of sr_coded_error in calculating correction factor for estimating the allowable Q range. Reinstated some code needed for calculating section_intra_rating. Add flash detection in calculation of KF boost Increased tolerance in testing candidate key frames (needed with longer motion search as this tends to slightly increase inter %. Zbin changes for 8x8. Other minor adjustments, refactoring and bug fixes. Reinstated some motion break out clauses in boost loop as their removal hurt a few 50fps clips badly in the std set. It may be possible to remove them again later if a better way can be found of preventing overly long gf intervals. Change-Id: Iee686d0c31072828bb1ccd2bc63f5f1c7c548ea2
-
- Jun 08, 2012
-
-
Paul Wilkins authored
Changes to the equations for kf and gf minQ and to the boost calculations for kg and gf Change-Id: I312031c910e6a575334f49075c32f49a8dfff239
-
- May 31, 2012
-
-
Adrian Grange authored
Variables m & mi were being dereferenced when they might hold invalid values. The fix is simply to move these dereferences to after the point at which mb_row and mb_col are tested for validity. Change-Id: Ib16561efa9792dc469759936189ea379d374ad20
-
- May 30, 2012
-
-
Paul Wilkins authored
This fix addresses some problems with very complex clips like handling of flashes on clips like crew (which was made worse by an earlier patch (derf and std-hd)). Most clips a small effect but some between 1 & 2% Derf +0.039, +0.211% YT +0.042, +0.083% Change-Id: I65fc7c13afc31482040068544dd65b8808f5cb4a
-
- May 29, 2012
-
-
Paul Wilkins authored
-
Paul Wilkins authored
Removed the local scaling factor est_max_qcorrection_factor and related code to simplify estimateq calculation (little effect anyway) Cap range of total correction factor. Slight change to break out case to turn off arf. Change-Id: I748187737ba93cfadf016f3dfdf8d2741934067f
-
- May 26, 2012
-
-
Yaowu Xu authored
One more compiling issue, only happened in Visual C under a specific combination of experiments. Change-Id: Iba0775dc0ea7342b556348a9cdf60a05a59e0241
-
- May 25, 2012
-
-
Yaowu Xu authored
the commit fixed a number of compiling issues when some epxeriments are turned on at the same time. Change-Id: Idb15b215e2d2a7d25f2707f99ef55a34e7301ce7
-
Paul Wilkins authored
-
- May 23, 2012
-
-
Yaowu Xu authored
The commit changed how baseline 8x8 coefficient probabilities are initialized, to be consistent with the initialization of baseline 4x4 coefficient probabilities. The commit does not have any effect on compression. Change-Id: Ifb3902b5dc0b0c2e6dc3aa5d4a6589d528e58355
-
- May 18, 2012
-
-
Paul Wilkins authored
-
- May 17, 2012
-
-
Paul Wilkins authored
Remove dependency on amount and speed of motion as this may not behave well across different image sizes. Tweak impact of % inter. Add in experimental adjustment based on relative quality of an older second reference frame. Cap range of decay values allowed. Some small + effect on derf but -ve on yt & hd at this stage. Change-Id: I390d6f6ebe67a2eb0b834980d0d4650124980d3e
-
Paul Wilkins authored
-
- May 15, 2012
-
-
Ronald S. Bultje authored
I now see I didn't write a very long description, so let's do it here then. We took a pretty big quality hit (0.1-0.2%) from my recent fix of the inversion of arguments to vp8_cost_bit() in the RD reference frame costing. I looked into it and basically the costing prevented us from switching reference frames. This is of course silly, since each frame codes its own prob_intra_coded, so using last frame cost indications as a limiting factor can never be right. Here, I've rewritten that code to estimate costings based partially on statistics from progress on current frame encoding. Overall, this gives us a ~0.2%-0.3% improvement over what we had previously before my argument-inversion-fix, and thus about ~0.4% over current git (on derf-set), and a little more (0.5-1.0%) on HD/STD-HD/YT. Change-Id: I79ebd4ccec4d6edbf0e152d9590d103ba2747775
-
Paul Wilkins authored
base the static image test off a measure of 0,0 motion instead of the decay accumulator value. Change "transition to still detection" to compare the decay rate from successive frames. Minor tweak to the arf extra boost given based on the number of frames affected. Removed unused variable mod_err_per_mb_accumulator. Change-Id: Idd8360083ad409e45f133ce97dd2488259003e64
-
Deb Mukherjee authored
Adds 6 directional intra predictiom modes for 16x16 and 8x8 blocks. Change-Id: I25eccc0836f28d8d74922e4e9231568a648b47d1
-
Paul Wilkins authored
-
Paul Wilkins authored
-
Paul Wilkins authored
-
Yaowu Xu authored
The commit added an integer version of 8x8 forward DCT, based on the orginal forward DCT from VP6. The constants, roundings, and shifts were adjusted to improve the accuracy. The latest patch has a very similar accuracy in term of round trip error against the floating point version. It should be noted here that the purpose of the patch is to help encoding speed and facilitate all other experiments. There will be futher review in combination with inverse DCT before finalization. configure with "--enable--int_8x8fdct" to use the integer version Change-Id: I5a4f80507429f0e07cf02a13768ec81cbfddc5bc
-
Paul Wilkins authored
Some marginal impact due to the fact that it makes use of arf more likely / stable even in hard sections. Change-Id: Ic72fda0f63eefc9433914b5d9cd374d515810129
-
Paul Wilkins authored
Removed unused function. Added tentative code to take error score of an older frame into account when calculating Q range. However, for now it is disabled pending merging other changes and testing. Change-Id: Ie89955e70319dac31b79e3b833e3352712a061ec
-
Paul Wilkins authored
-
- May 14, 2012
-
-
Yaowu Xu authored
-
Ronald S. Bultje authored
-
Paul Wilkins authored
Remove testing of whether we estimate that it will be possible to code an arf at a lower Q than the ambient Q. This adds quite a bit of extra code and complexity for marginal gain. Factored out some code relating to ARNR selection to a separate function as this is likely to be changed / simplified soon. Change-Id: Ia1cf060405637ef5bbf7018355437be21d12375f
-
Paul Wilkins authored
Removed odd *100 >> 4 factor from boost calculations. Not all the calculations exactly match what was there before so there may be some minor impact on results. Some other minor tidying up in regard to coding conventions. The specific values of factors and thresholds will likely change as part of subsequent patches. Change-Id: Id976321484ac02ba50294cf54fafbc17dda85686
-
- May 12, 2012
-
-
Ronald S. Bultje authored
These frames can force reference frame (arf), mode (zeromv) and skip, which means that if we use compound prediction (i.e. arf+last), we might use a blend of a perfect (arf) and an imperfect (last) predictor, leading to semi-garbage display and thus a huge drop in SSIM/PSNR (up to 10dB for some frames I analyzed). Gives a +0.2% gain on YT. Change-Id: If1f2b7899ad165684af3808fd379295e82558cbb
-
- May 11, 2012
-
-
Deb Mukherjee authored
-
Paul Wilkins authored
This is the first patch in a series of changes to the first pass code. (Broken down for ease of testing/merging/review). This patch introduces a new stats element "sr_coded_error". This is the coded error recorded vs the second reference frame (which is updated such that it lags by at least one frame). No use is made of the new structure in this change so this patch should have no material effect. Removed some ifdefs and deprecated code (#if NEW_BOOST). Removed twopass.gf_decay_rate (not used any more) Change-Id: I1be672a73017f7c13fd50fb4f99236aa2ed30916
-
Jim Bankoski authored
Change-Id: I960c6eb81f8d76c958e8af989700447f581a8812
-
James Berry authored
adds unit testing via google test Change-Id: I144b50a976d79251fc5135186a4e0a5051ed0e8c
-
- May 10, 2012
-
-
Yaowu Xu authored
This commit changed the forward and the inverse 4x4 Walsh Hadamard transform to a new pair, where the inverse transform can pefectly reconstuct the input to forward transform. It also does so without changing the input and output value range. Even more, it does not change the complexity of the transforms. While it was not expected to improve the results of our current test, it does improve std-hd set by 0.2% on all metrics. No change on derf. Change-Id: Ie4f23ddd3a0f3c5fbe97fb58399f860031f99337
-
- May 09, 2012
-
-
Deb Mukherjee authored
Also includes some clean ups and refactoring. Rebased. Change-Id: I268c97fe325b4881103fe19f41ae818569e7ccf7
-
- May 08, 2012
-
-
Yaowu Xu authored
1. block types There are only three types of blocks for 8x8 transformed MBs, i.e. Y block with DC does not exist for 8x8 transformed MBs as all MB using 8x8 transform have 2nd order haar transform. This commit introduced a new macro BLOCK_TYPES_8X8 to reflect such fact. 2. context counters This commit also fixed the mixed of context_counters between 4x4 and 8x8 transformed MBs. The mixed use of the counters leads me to think the existing the context probabilities were not properly generated from 8x8 transformed MBs. 3. redundant collecting in recoding The commit also corrected the code that accumulates entropy stats by making sure stats only collected for final packing, not during the recode loop Change-Id: I029f09f8f60bd0c3240cc392ff5c6d05435e322c
-
- May 04, 2012
-
-
Deb Mukherjee authored
This patch expands the set of prev contexts used for video coding from 3 to 4. There is a small improvement of the order of 0.08% for derf and 0.15% on the HD set. The tests were rerun after the various merges last week. There are two columns in each test - the first are the results with the mbskip change, and the second with expanded contexts added on top of that. Derf: http://www.corp.google.com/~debargha/vp8_results/explibvpx_newentropy_expcontext.html HD: http://www.corp.google.com/~debargha/vp8_results/explibvpx_hd_newentropy_expcontext.html Rebased. Broke up 80 char lines. Change-Id: I82d2e72d054e530cbf5ce9aa0e6d85c582965675
-
- May 02, 2012
-
-
Yaowu Xu authored
missed the decoder side in last commit Change-Id: Ie97f35189e93f78783e3d8072a36eea768beed27
-