Age | Commit message (Collapse) | Author |
|
|
|
Change-Id: Id8877fad1f1e88b145e7c40c43174109b9c4f373
|
|
This code dates from the ancient past and
applied an error score weighting based on pixel
brightness. This not seem to be providing any
benefit metrics wise and could be making some
visual issues in dark frames worse.
The field is left in place in the FIRSTPASS_STATS data
structure in this patch, pending changes to unit tests that
use a pre-defined first pass file.
Change-Id: Id50f04205230234858e7548ce523f11acaf3567d
|
|
Further changes to first pass allocation for gf/arf groups.
Three variables removed from TWO_PASS structure as only
now used locally. Dont adjust gf_group_bits in the post
encode update as this will no longer have any effect.
Change-Id: Iff89b225db923fc856f5d2aedbc899f1d7d68b55
|
|
Restructuring to allocate the bits for each frame in
a GF group at the time the group is defined.
At the moment the allocation closely mirrors what
we had before.
Also changes the default rate adjustment method to
LONG_TERM_VBR_CORRECTION.
Change-Id: Ie5793c46c6b9c888cead5d8790792efd7d60b7c1
|
|
|
|
|
|
|
|
|
|
modified_error_total from TWO_PASS struct is not required anymore.
Change-Id: I0e07cac1e6d1b6a78418116be725bcd72bfbd847
|
|
Change-Id: I6c27c60f7192b1b397f01882ab68a68cdf767534
|
|
|
|
Change-Id: I3ba9374de96dc31fb4e736742603ef988d8aaa5f
|
|
Addition of reset_fpf_position() call fixes previous issue with this patch.
Change-Id: I356186d5a1032297a147194e81e9c7db252d14a6
|
|
Breaks rate control completely.
This reverts commit 9067b293b39e97f3bc8c62646120cdfd4c956310.
Change-Id: I8f89e209cf7bd607f7de5c4872adcd57a9c5c72b
|
|
|
|
Change-Id: I3258b789ce8c59fdfeaaca1acb9638b565e82a2a
|
|
Change-Id: Id79138f2dd472ee95c784b0eb2781d4037c51dd8
|
|
Change-Id: I87bb1876f8a04ef28cb7135b657815e12f2f31cb
|
|
Change-Id: I76a48b03388a8c5cc74b871deb836cd92263b306
|
|
|
|
|
|
Use type TWO_PASS instead of "struct twopass".
Change-Id: I9d92920893bd436537b2ca19e9c9d355cca56c7c
|
|
|
|
Because PC_TREE is encoder-level data, not MACROBLOCK-level data.
Change-Id: I4f620c0781acd3a2744860610117e74948e0b2b5
|
|
Change-Id: I9ef40f3d95ab8f94f69e92ea25678a40956bc1ce
|
|
Change-Id: Iff9efff6c9cb41f833cee40eae014bd4489a87d0
|
|
Change-Id: Ic488fe6edbc119f475763d72a85809499df60106
|
|
Change-Id: Iaece070e9d1305ac3d8df9d3431fefa6e20ac0ec
|
|
Simplify the calculation of KF bitrate in similar way
to previous patch for GF/arf.
This has no impact on derf or std hd sets but gives a
small net gain of ~0.1% for yt and yt-hd sets.
Change-Id: Ida64ac1428d9c2a62adb67056fadbf0180eff030
|
|
The variation in boost calculation for gf and arf groups
is not significant enough to justify the extra complexity.
Also removed some other spurious code that no longer
has much material impact.
The handling of the rare case, where the boost bits
number is less than the number of bits a that would
be allocated if a frame was not boosted, will be dealt
with in a subsequent patch.
This change actually helps on all sets a little by
~0.1% - 0.2% with slightly bigger gains on SSIM.
Change-Id: Id42c1ac22a80a8c4993cfa0e51bc733eb9ed4f75
|
|
Re-factor duplicate code.
Add two pass check for use of section_intra_rating as
it is un-initialised in the 1 pass and rt case.
Change-Id: I93120796f07961b8a21fb26e1a9f0d3d13949994
|
|
One of a series of changes to clean up two pass
allocation as precursor to support for multiple arf
or boosted frames per GF/ARF group.
This change pulls out the calculation of the total bits
allocated to a GF/ARF group into a function, to aid
readability and reduce the line count for define_gf_group().
This change should have no material impact on output.
Change-Id: I716fba08e26f9ddde3257e7d9b188453791883a3
|
|
Change-Id: I5307fe85ee081fbcfdf55a974f7eba1e0070c723
|
|
On balance Deb's modified rate control for VBR seems
to be outperforming especially on some low motion YT
clips so I have switched this to be the default mode for
now.
Change-Id: I0713d430cad6425ac5c48fccdf332e12814ee44a
|
|
|
|
|
|
Change-Id: Id6ab59e505be28cd4eb9f1fe114feb47debe0539
|
|
|
|
Change-Id: I6b520553cb5334b44356dc4651a2dbc1cb93cca5
|
|
Change-Id: I2ad333553e673dbabcdc0f0366aea311e90849bf
|
|
Change-Id: Ifbfa90894eec9944bd55f364f1d17eb152338d6b
|
|
This member of VP9_COMP seemed unnecessary since it
only shadowed VP9EncoderConfig.key_freq that is
accessible through VP9_COMP.
Change-Id: Ib751bb1cf1b0b3c50a2a527d7c34f6829dd6fee3
|
|
The encoder was not handling requests to place keyframes at
fixed intervals, i.e. kf_min_dist == kf_max_dist, correctly.
In this case when looking to place the next keyframe it was
accumulating stats all the way up to the end of the firstpass
file. This patch corrects this behavior.
Change-Id: I948ad9f1d7faa0c05861df588136cce3bb61d7e7
|
|
Actual renames:
vp9_onyx_if.c -> vp9_encoder.c
vp9_onyx_int.h -> vp9_encoder.h
Change-Id: I80532a80b118d0060518e6c6a0d640e3f411783c
|
|
|
|
The end_useage parameter is confusingly named since it
now actually defines the rate control method used.
Change-Id: I98912caabfe556b7af0b939a645d1336409e4d71
|
|
|
|
|
|
1. We didn't scale source image in lower layers so that
the stats are incorrect.
2. We didn't extend borders for re-constructed image.
Change-Id: Ia8d7bafbdb695ffa7f504e171f9449812e7bb0a3
|