The computation of new metrics is not supported yet in highbitdepth
mode. This commit adds protection to make sure the computation is
done only when highbitdepth is not on. This protection shall be
revised when support of highbitdpeth computation is added.
This resolves the encoder crash when configured with both
--enable-internal-stats
--enable-vp9-highbitdepth
Change-Id: Id9f4bcc4fa26d9ca0e9eabade83f3f88a5b212e6
This patch fixed the following warning:
src\third_party\libvpx\source\libvpx\vp9\encoder\vp9_pickmode.c(1607) :
warning C6246: Local declaration of 'this_mode' hides declaration of the
same name in outer scope.
Change-Id: I1d93c4a47a13cb13089fec5bd61e8b58e6cd8d58
When aq-mode=3 is enabled, only for base layer frames should the
qp of the frame incorporate the segment delta-qp.
This was causing more rate mismatch for the enhancement layer frames
when running temporal layers with aq-mode=3 on.
Change-Id: I1c5e69d1ef8a51188af8696753c17fd8f67699b3
currently this needs to be 2x (NEED_ABOVERIGHT) the size of the largest
block (32) + 1 (for above_left). reduce the buffer size from 128 + 16
(alignment) to 64 + 16.
Change-Id: Idaca1806c7e1214e9437de24e15edc2ebf18f95d
The warning only happens in VP9 encoder's first pass due to src_mi
is not set up yet. But it will not fail the encoder as left_mi and
above_mi are not used in the first_pass and they will be set up again
in the second pass.
Change-Id: I0713b4660d71e229e196654cb0970ba6b1574f28
Where a frame appears to be a repeat of an earlier
frame or frame buffer, but the first pass code
does not anticipate this (usually because it is matching
the GF or ARF buffer not the last frame buffer), do not
update the last frame buffer.
This helps ensure that the content of the last frame buffer
is kept "different" where possible, and not updated to
match the GF or ARF. This is particularly helpful in some
animated sequences where there are groups of repeating
frames. Here it has quite a big impact. However, in most
of our standard test clips it has little or no impact.
Change-Id: I77332ee1a69f9ffc0c6080bfeb811c43fd8828e6
this macro was used inconsistently and only differs in behavior from
DECLARE_ALIGNED when an alignment attribute is unavailable. this macro
is used with calls to assembly, while generic c-code doesn't rely on it,
so in a c-only build without an alignment attribute the code will
function as expected.
Change-Id: Ie9d06d4028c0de17c63b3a27e6c1b0491cc4ea79
Using EIGHTTAP and EIGHTTAP_SMOOTH seem sufficient.
Hard to see any visual gain from allowing EIGHTTAP_SHARP, and it is
rarely selected.
PSNR/SSIM metrics go up by ~0.18/0.14%.
Change-Id: I96fa0d98f9321b913e3ebcd464d4ff3c63018791
Create a new component, vpx_dsp, for code that can be shared
between codecs. Move the SAD code into the component.
This reduces the size of vpxenc/dec by 36k on x86_64 builds.
Change-Id: I73f837ddaecac6b350bf757af0cfe19c4ab9327a
Added the intra mode early termination in order to
speed up the mode search in non-rd case since we
started to include more intra modes in the search
list. Borg tests(rtc set) showed a 0.048% PSNR gain
and 0.061 SSIM gain. No speed change.
Change-Id: I6f255fe534dc50b736e6a66a726ad458eb9b4443
widen the loads and stores to 128-bit.
this was added, but not enabled in:
493a857 Add some sse2 code for intra prediction.
Change-Id: I277d7db608a7db7d75cc0bde86f48fa66ad487e4
For non-rd mode (speed >=5): use mask based on prediction block size, and
(for non-screen content mode) allow for checking horiz and vert intra modes
for blocks sizes < 16x16.
Avg psnr/ssim metrics go up by about ~0.2%.
Only allowing H/V intra on block sizes below 16x16 for now, to keep
encoding time increase very small, and also when allowing H/V on 16x16 blocks,
metrics went down on a few clips which need to be further examined.
Change-Id: I8ae0bc8cb2a964f9709612c76c5661acaab1381e
Impose a limit on the rd auto partition search based on
the image format. Smaller formats require that the search
includes includes a smaller minimum block size.
This change is intended to mitigate the visual impact of
ringing in some problem clips, for smaller image formats.
Change-Id: Ie039e5f599ee079bbef5d272f3e40e2e27d8f97b
Remove one of the auto partition size cases.
This case can behaves badly in some types of animated content
and was only used for the rd encode path. A subsequent patch
will add additional checks to help further improve visual quality.
Change-Id: I0ebd8da3d45ab8501afa45d7959ced8c2d60ee4e