- Tx_type: DCT_DCT, DCT_ADST, ADST_DCT, ADST_ADST.
- Encoder overall instruction count drops 2.91%.
- Decoder overall instruction count drops 1.01%.
- Add unit test to test bit-exact result against C.
Change-Id: I908c9e0e5106c58f67dd72d28760e6c9ce54278e
Avoid accessing transform type that is not 2D-DCT if the transform
size is 64x64. This fixes an assert failure in this unit test.
Change-Id: I0dee865ea0925f5743b8a25c2f90eb6522b4d272
This commit unifies the inter predictor used in supertx at both
encoder and decoder sides. It removes the redundant decoder
implementations related to border extension.
Change-Id: I03985cee52604a518394232fa9258ce057af9c00
This commit unifies the inter predictor used in the encoder and
decoder side for super-tx experiment. This resolves an enc/dec
mismatch found in nextgenv2 nightly-run unit test.
Change-Id: I16ab8d6063edf9d2fba79473f470f1a592cc10a0
Also allows use of --enable-shared when configuring for Mac OS X,
producing a bare .dylib.
Enabling the shared framework bumps the iOS deployment target to 8.0,
the minimum required to support dynamic framework deployment in apps.
When not using --enable-shared, a static library for iOS 6.0+ will still
be built.
Minimum version settings have been moved into ios-version.sh so they
can be updated in a single place.
As with the static build, unless header search paths are manually
tweaked, users must add a VPX prefix on includes, such as:
#include <VPX/vpx/vpx_decoder.h>
A module map for headers is not yet included as inttypes.h is not
modular; this means that VPX cannot be used directly in Swift code,
but can still be pulled in through an Objective-C wrapper.
BUG=https://bugs.chromium.org/p/webm/issues/detail?id=1092
Change-Id: I28fb06ce65e48ed167a88c14a7bfb2861989317e
In the tile-coding experiment,
1. In tile decoder, added 2 set control APIs:
VP10_SET_DECODE_TILE_ROW and VP10_SET_DECODE_TILE_COL. It allowed
users to set the range of decoding at frame level.
2. Added a unit test while tile-coding experiment is on. It tested
both tile encoder and decoder to make sure the encoded frame
can be decoded as a whole frame or as independent tiles.
Change-Id: I73fd0632b685047cb9376008127cde72efa3fb2b
Fix the variable type mismatch between highbd_calc_masked_var_t and
the actual function definiton. This clears the related compiler
warnings in highbd with ext-inter experiment.
Change-Id: I0423318b16c867ed84700084ad21ca6e42edb321
In motion estimation stage for subpel motion, subpel variance is
computed use bilinear interpolation. The motion vector precision
used is at 1/8 pel and three bits are used to represent the x and y
subpel offsets. Based on this, the half pel check should be against
4, not 8.
Change-Id: I1f56fa1fa3f2f5e19a20d27983efe628557f170e
there are sse2 equivalents which is a reasonable modern baseline
Removed mmx variance functions:
vpx_get_mb_ss_mmx()
vpx_get8x8var_mmx()
vpx_get4x4var_mmx()
vpx_variance4x4_mmx()
vpx_variance8x8_mmx()
vpx_mse16x16_mmx()
vpx_variance16x16_mmx()
vpx_variance16x8_mmx()
vpx_variance8x16_mmx()
Change-Id: Iffaf85344c6676a3dd337c0645a2dd5deb2f86a1
Improves performance by 0.2%
lowres: -2.052% BDRATE
Also increases precision of the shift parameters (for further
investigation into different wedge shifts).
Change-Id: I59fcab9baa002e52a6487ed8d617185840a678ed
Added actual and absolute rate miss values to the opsnr.stt
stats output line.
Changes to the borg graphing may be needed before merge.
Change-Id: I1e9d548ce445d29002f0c59ebfd3957a6f15e702
Bug found by Yunqing relating to the correction for size at 8K and
above in get_twopass_worst_quality().
The basis for the correction was changed to the linear size relative to
1080P as a baseline and the adjustment has been clamped to prevent
problems at extreme images sizes.
For 1080P the results on our test sets were neutral but the low res and
mid res sets saw a small gain (0.1%-0.2% average).
I would also expect some gains on 4k and larger content where the
previous correction was overly aggressive.
Change-Id: I30b026b5f4535e9601e3178d738066459d19c8fb
Weighted single motion search is implemented for obmc predictor.
When NEWMV mode is used, to determine the MV for the current block,
we run weighted motion search to compare the weighted prediction
with (source - weighted prediction using neighbors' MVs), in which
the distortion is the actual prediction error of obmc prediction.
Coding gain: 0.404/0.425/0.366 for lowres/midres/hdres
Speed impact: +14% encoding time
(obmc w/o mv search 13%-> obmc w/ mv search 27%)
Change-Id: Id7ad3fc6ba295b23d9c53c8a16a4ac1677ad835c
Functions vp10_fwd_txfm2d_#x#_sse4_1 tested in this file
will be tested in vp10_fhts#x#_test.cc
Remove this to avoid duplication
Change-Id: Iaf21ab85b9a164fcf2a4574b3e13217e43b6255e