Age | Commit message (Collapse) | Author |
|
|
|
|
|
Change-Id: Ifa6374e9db5919322733b656e0865f5f19ee6f2c
|
|
This commit enables a fast path computational flow for forward
transformation. It checks the sse and variance of prediction
residuals and decides if the quantized coefficients are all
zero, dc only, or more. It then selects the corresponding coding
path in the forward transformation and quantization stage.
It is currently enabled in rtc coding mode. Will do it for rd
coding mode next.
In speed -6, the runtime for pedestrian_area 1080p at 1000 kbps
goes down from 14234 ms to 13704 ms, i.e., about 4% speed-up.
Overall coding performance for rtc set is changed by -0.18%.
Change-Id: I0452da1786d59bc8bcbe0a35fdae9f623d1d44e1
|
|
|
|
|
|
|
|
This patch allows the encoder to skip the
un-neccessary motion search in the first pass. It
calculates the error of the zero motion vector using
the last source frame as reference and skips the
further motion search in the first pass if the error
is small.
The encoding speedup of the first pass for slideshow
videos is over 30%. Borg test shows the overall PSNR
performance remain approximately the same (derf -0.009,
hd 0.387, yt 0.021, stdhd 0.065). Individual clips may
have either PSNR gain or loss. The worst PSNR perfomance
is from yt set, with a PSNR loss of -1.1.
Change-Id: I08b2ab110b695e4689573b2567fa531b6457616e
|
|
Add a set_mode_info_seg_skip function that fills the requisite mode info.
Change-Id: I460b1b6845d720d9b09ed5b64df0ea0aac443f62
|
|
* Only use ZEROMV, disalowing the intra modes that were previously
tested.
* Score rate and distortion as zero.
Change-Id: Ifcf99e272095725f11da1dcd26bd0f850683e680
|
|
|
|
Change-Id: I33a38bb9f46e7ef509bbbf0cfd7bc3ea5072d022
|
|
|
|
|
|
|
|
|
|
In non-rd real-time mode, choosing smaller transform size in
encoding gives better video quality and good speed gain than
choosing larger transform size. This patch set tx size search
method to ALLOW_8X8, which is better than using 4x4 or other
larger sizes.
Borg tests on rtc set at speed 6 showed significant gain on quality.
PSNR gain: 11.034% and SSIM gain: 15.466%.
The speed gain is 5% - 12% for <720p clips, and 2% - 7% for
720p clips.
Change-Id: If4dc74ed2df359346b059f47fb73b4a0193ec548
|
|
|
|
|
|
Use of stack frame variable "fps" beyond the lifetime of the function.
fps is sent as a paremeter to output_stats and stored in the
packet holding this encoded frame. This has scope beyond the
lifetime of the calling function.
This reverts commit 3f95a230c7e54104201b3f6c577dfa9251b4642a
Change-Id: Icd8e14b3d7dd733590ada12e619b9dce95b6b0f5
|
|
|
|
This is not a speed feature, adding inline function instead.
Change-Id: Ia48c41802eec9e92cf990339d724097279695c9a
|
|
Change-Id: Ib8187c8f2556e1e9268b0683cd2b6ff3489f0205
|
|
Produces sane qindex for the first frame in 1-pass constant and
constrained qualirty modes.
Change-Id: Ib2a5091df15a23489e9bb5534a2019cf2689755e
|
|
Change-Id: I61bd0b127164a591b1c983bfcebd64ba7617f796
|
|
Change-Id: Ifcb46e6904730d14b9ef76b648b4d0dc3cd5d0c5
|
|
The same enum defined and used in vp9_mvref_common.c.
Change-Id: I3975103997797add0a258d36c96d20ac9561a73d
|
|
Change-Id: I9b683c8647a864e74073161f4aa6f2911b7825e3
|
|
The third array element was unused. 2 elements now: key- and interframe.
Change-Id: I5b8b9f5d889cc96a204cedfc432059293256298e
|
|
|
|
|
|
The SSSE3 implementation might find a potential overflow issue in
its second 1-D transform, if all input residual pixels are close to
255. This commit fixes the issue and re-enables the unit test on
the SSSE3 version.
Change-Id: I0520478abdab7afd3ff2842516bec951111e9b3c
|
|
Change-Id: Ib35ff854378764dc3c6745844c67a33dee545663
|
|
Right now there is just one place to check: xd->lossless and for the first
pass there is a function is_lossless_requested().
Change-Id: I949a6834e64ce51e422e2892f097f2b871b5429a
|
|
|
|
|
|
|
|
In Aq mode 2 for kf/arf/gf the segment q delta
is calculated and then applied by re-quantization without
going through the rd loop again. If the base Q != 0
but the segment Q == 0 (lossless) this can could give rise
to a situation where we have an illegal combination of
transform size and Q. (Q == 0 requires that all blocks
are coded 4x4 WHT).
Change-Id: I241a58c6494ed442e9e4630070b0cde0fb99ae45
|
|
|
|
|
|
As a side-effect, the sad unit tests for VP8 and VP9
had to be separated.
Fixes a bug in original patch:
(https://gerrit.chromium.org/gerrit/#/c/70163/8)
that was reverted due to a nightly test failure.
Change-Id: Ia2a4e9e278fd3c89d6c3c82fcc6381320ec2a8a6
|
|
|
|
Revert "Fix a problem of using an uninitialized parameter"
This reverts commit 538af7db5ffe2ab560511a3bc0ae74dae9316c14
Change-Id: I071aa9b7068ef515abb8ae9584df15067706ccb5
|
|
|
|
This reverts commit 916550428db803c54c993ff9d3c34b9b0bcebb7c
Change-Id: I500822b03f09c64ff6ec5396c68edee9ca3b75cb
|
|
|
|
|
|
|
|
This commit added a call to set speed feature before initializing
motion search, fixed the problem where unintialized search method
is used before its value being set.
Change-Id: I537e4612bf0d00fd6f51396fd222d4b3bd6fde58
|
|
|