]> granicus.if.org Git - libvpx/log
libvpx
8 years agoMerge branch 'master' into nextgenv2
Yaowu Xu [Thu, 14 Jan 2016 21:57:27 +0000 (13:57 -0800)]
Merge branch 'master' into nextgenv2

8 years agoMerge "Adding an aq mode for 360 videos"
Debargha Mukherjee [Thu, 14 Jan 2016 16:13:56 +0000 (16:13 +0000)]
Merge "Adding an aq mode for 360 videos"

8 years agoMerge "VP9: inline vp9_use_mv_hp()"
Scott LaVarnway [Thu, 14 Jan 2016 13:36:40 +0000 (13:36 +0000)]
Merge "VP9: inline vp9_use_mv_hp()"

8 years agoMerge "VP9: Remove decoder args from find_mv_refs_idx()"
Scott LaVarnway [Thu, 14 Jan 2016 13:30:30 +0000 (13:30 +0000)]
Merge "VP9: Remove decoder args from find_mv_refs_idx()"

8 years agoMerge changes I6998e15f,I88891d9f
James Zern [Thu, 14 Jan 2016 04:13:24 +0000 (04:13 +0000)]
Merge changes I6998e15f,I88891d9f

* changes:
  Remove unused POSIX_MMAP references
  Remove unused stdint.h check

8 years agoMerge "Handle single ref mv pair in the candidate list for compound mode" into nextgenv2
Jingning Han [Thu, 14 Jan 2016 02:55:36 +0000 (02:55 +0000)]
Merge "Handle single ref mv pair in the candidate list for compound mode" into nextgenv2

8 years agoMerge "Merge branch 'master' into nextgenv2" into nextgenv2
Yaowu Xu [Thu, 14 Jan 2016 00:26:45 +0000 (00:26 +0000)]
Merge "Merge branch 'master' into nextgenv2" into nextgenv2

8 years agoHandle single ref mv pair in the candidate list for compound mode
Jingning Han [Wed, 13 Jan 2016 17:03:15 +0000 (09:03 -0800)]
Handle single ref mv pair in the candidate list for compound mode

This commit considers the case where a single reference motion
vector pair is found in the candidate list. It treats this pair
as the effective motion vector for nearestmv mode. This improves
the coding performance by 0.06% for stdhd sets.

Change-Id: I9ce12f456b52912933e05c18c3841a78c26155d2

8 years agoAdding an aq mode for 360 videos
Debargha Mukherjee [Wed, 16 Dec 2015 23:34:07 +0000 (15:34 -0800)]
Adding an aq mode for 360 videos

Different quality levels are used for different regions in
the frame depending on how far they are vertically from the
center. Specifically, three segments are used based on the
mi_row index with respect number to the number of mi_rows in
the frame.

Change-Id: Ifc8b777bc58ea8521dffc4640360c67d99f8d381

8 years agoMerge "Revert "Merge "Change highbd variance rounding to prevent negative variance."""
Alex Converse [Wed, 13 Jan 2016 21:51:23 +0000 (21:51 +0000)]
Merge "Revert "Merge "Change highbd variance rounding to prevent negative variance."""

8 years agoVP9: Remove decoder args from find_mv_refs_idx()
Scott LaVarnway [Wed, 13 Jan 2016 21:30:40 +0000 (13:30 -0800)]
VP9: Remove decoder args from find_mv_refs_idx()

The decoder does not use this function.

Change-Id: Ie67f909c0f4108ef286789c70df867d4b960a780

8 years agoMerge branch 'master' into nextgenv2
Yaowu Xu [Mon, 11 Jan 2016 18:27:35 +0000 (10:27 -0800)]
Merge branch 'master' into nextgenv2

Manually resovled the following conflicts:
vp10/common/blockd.h
vp10/common/entropy.h
vp10/common/entropymode.c
vp10/common/entropymode.h
vp10/common/enums.h
vp10/common/thread_common.c
vp10/decoder/decodeframe.c
vp10/decoder/decodemv.c
vp10/encoder/bitstream.c
vp10/encoder/encodeframe.c
vp10/encoder/rd.c
vp10/encoder/rdopt.c

Change-Id: I15d20ce5292b70f0c2b4ba55c1f1318181481596

8 years agoMerge "Fix encoder crashes and enc/dec mismatches"
Yaowu Xu [Wed, 13 Jan 2016 21:07:53 +0000 (21:07 +0000)]
Merge "Fix encoder crashes and enc/dec mismatches"

8 years agoMerge "Use specific PICK_MODE_CONTEXT for supertx." into nextgenv2
Debargha Mukherjee [Wed, 13 Jan 2016 19:41:39 +0000 (19:41 +0000)]
Merge "Use specific PICK_MODE_CONTEXT for supertx." into nextgenv2

8 years agoMerge "Generate compound reference motion vector" into nextgenv2
Jingning Han [Wed, 13 Jan 2016 19:37:38 +0000 (19:37 +0000)]
Merge "Generate compound reference motion vector" into nextgenv2

8 years agoMerge "Refactor ref mv stack system" into nextgenv2
Jingning Han [Wed, 13 Jan 2016 19:36:16 +0000 (19:36 +0000)]
Merge "Refactor ref mv stack system" into nextgenv2

8 years agoRevert "Merge "Change highbd variance rounding to prevent negative variance.""
Alex Converse [Wed, 13 Jan 2016 19:18:19 +0000 (11:18 -0800)]
Revert "Merge "Change highbd variance rounding to prevent negative variance.""

This reverts commit ea48370a500537906d62544ca4ed75301d79e772, reversing
changes made to 15939cb2d76c773950cda40988ede89e111872ea.

The commit was insufficiently tested and causes failures.

Change-Id: I623d6fc2cd3ae6fd42d0abab1f8eada465ae57a7

8 years agoFix encoder crashes and enc/dec mismatches
Yaowu Xu [Tue, 12 Jan 2016 17:47:07 +0000 (09:47 -0800)]
Fix encoder crashes and enc/dec mismatches

This commit adds the logic for segmentation map initialization and
disable temporal update of segmentation map when error-resilient
mode is on. It fixes the enc/dec mistmates (release build) and
assertions(debug) when both aq-mode and error-resilient are on.

Change-Id: Id2155e8b28962cf1f64494f4df0c8d79499b6890

8 years agoVP9: inline vp9_use_mv_hp()
Scott LaVarnway [Wed, 13 Jan 2016 16:02:05 +0000 (08:02 -0800)]
VP9: inline vp9_use_mv_hp()

Change-Id: Ib275bfc4c29c572d6c70e5ec6dbfc241590d3e3e

8 years agoMerge "Change highbd variance rounding to prevent negative variance."
Alex Converse [Wed, 13 Jan 2016 00:25:54 +0000 (00:25 +0000)]
Merge "Change highbd variance rounding to prevent negative variance."

8 years agoGenerate compound reference motion vector
Jingning Han [Tue, 12 Jan 2016 23:06:59 +0000 (15:06 -0800)]
Generate compound reference motion vector

This commit allows the codec to add motion vector pairs into
the candidate list. It further improves the compression performance
by 0.1% across derf, hevcmr, stdhd, and hevchr sets without adding
encode/decode time.

Change-Id: I88d36da25a2a89bb506d411844af667081eba98b

8 years agoCompress the final ANS state.
Alex Converse [Tue, 12 Jan 2016 00:16:19 +0000 (16:16 -0800)]
Compress the final ANS state.

The '110' prefix on a final byte indicates a superframe marker. Coded
data is not allowed to use this pattern on a final byte.

Code |state - l_base| little endian with the following prefix scheme:
Prefix '00': Single byte coded state.
Prefix '01': Two bytes le coded state.
Prefix '10': Three bytes le coded state.

Change-Id: Ibc953b67675b567394b93de39b7cb22cadc47435

8 years agoMerge "Code DCT tokens with ANS" into nextgenv2
Alex Converse [Tue, 12 Jan 2016 23:08:36 +0000 (23:08 +0000)]
Merge "Code DCT tokens with ANS" into nextgenv2

8 years agoMerge "Add an implementation of Asymetric Numeral Systems (ANS)." into nextgenv2
Alex Converse [Tue, 12 Jan 2016 23:05:31 +0000 (23:05 +0000)]
Merge "Add an implementation of Asymetric Numeral Systems (ANS)." into nextgenv2

8 years agoMerge "VP9: Eliminate unnecessary nearest/near searches"
Scott LaVarnway [Tue, 12 Jan 2016 20:00:59 +0000 (20:00 +0000)]
Merge "VP9: Eliminate unnecessary nearest/near searches"

8 years agoVP9: Eliminate unnecessary nearest/near searches
Scott LaVarnway [Tue, 12 Jan 2016 13:09:06 +0000 (05:09 -0800)]
VP9: Eliminate unnecessary nearest/near searches

Prior to this patch, read_inter_block_mode_info() would
find the nearmv and nearestmv for all modes.  Now it does not
search for ZEROMV modes and breaks out early for NEARMV and
NEWMV modes.

Change-Id: Ifa7b1eaf58bb03b9c7792ea5012fef477527d0fd

8 years agoUse specific PICK_MODE_CONTEXT for supertx.
Geza Lore [Tue, 12 Jan 2016 13:06:42 +0000 (13:06 +0000)]
Use specific PICK_MODE_CONTEXT for supertx.

Change-Id: I402d10dd666ebc4a06ce4472810a7e22f2e056ff

8 years agoCode DCT tokens with ANS
Alex Converse [Wed, 16 Dec 2015 19:17:25 +0000 (11:17 -0800)]
Code DCT tokens with ANS

Change-Id: I452f9675325a5f45bfbbe3e7e135009a125539f1

8 years agoAdd an implementation of Asymetric Numeral Systems (ANS).
Alex Converse [Wed, 16 Dec 2015 19:16:32 +0000 (11:16 -0800)]
Add an implementation of Asymetric Numeral Systems (ANS).

Change-Id: Ie41bc72127e700887566dcc951da9d83a0b94891

8 years agoRefactor ref mv stack system
Jingning Han [Sat, 12 Dec 2015 06:39:40 +0000 (22:39 -0800)]
Refactor ref mv stack system

This commit re-works the reference motion vector stack process
and make it support extended context set. It unifies reference
motion vector checking process for row and column scan, as well as
for single block scan.

Change-Id: I68c05cde93cf8b0ca2ef4d1523399f405bd0a337

8 years agoMerge "Fixing issue with txfm context when var_tx and supertx are enabled" into nextgenv2
Debargha Mukherjee [Mon, 11 Jan 2016 18:40:25 +0000 (18:40 +0000)]
Merge "Fixing issue with txfm context when var_tx and supertx are enabled" into nextgenv2

8 years agoRemove experimental flag for ext_tx
Debargha Mukherjee [Fri, 8 Jan 2016 20:01:51 +0000 (12:01 -0800)]
Remove experimental flag for ext_tx

Also includes a bug fix.

Change-Id: Ia49ed00f8ffd1531c10bcf89b1f497310ee7cb82

8 years agoMerge "Modifies inter/intra coding to allow all tx types"
Debargha Mukherjee [Fri, 8 Jan 2016 20:02:41 +0000 (20:02 +0000)]
Merge "Modifies inter/intra coding to allow all tx types"

8 years agoModifies inter/intra coding to allow all tx types
Debargha Mukherjee [Wed, 6 Jan 2016 19:24:57 +0000 (11:24 -0800)]
Modifies inter/intra coding to allow all tx types

The nominal tx_type for a given mode is used as a context
to encode the actual tx_type for intra.

Results:
derflr: -0.241% BDRATE
hevcmr: -0.366% BDRATE

Change-Id: Icfe7b0a58d79bc6497a06e3441779afec6e01e21

8 years agoEnable context analyzer for inter mode entropy coding
Jingning Han [Wed, 9 Dec 2015 17:07:39 +0000 (09:07 -0800)]
Enable context analyzer for inter mode entropy coding

It allows the codec to account for certain corner cases when
processing inter prediction mode entropy coding.

Change-Id: Ied451f4fff26ba579f6556554b8381ff2ccd0003

8 years agoMerge branch 'master' into nextgenv2
Yaowu Xu [Fri, 8 Jan 2016 13:00:05 +0000 (05:00 -0800)]
Merge branch 'master' into nextgenv2

8 years agoMerge "Update IMAGE_ABI_VERSION which wasn't updated after color_range enum was intro...
James Zern [Fri, 8 Jan 2016 02:32:38 +0000 (02:32 +0000)]
Merge "Update IMAGE_ABI_VERSION which wasn't updated after color_range enum was introduced."

8 years agoMerge "Enable encoder to avoid 8x4 or 4x8 partitions"
Yaowu Xu [Thu, 7 Jan 2016 23:00:00 +0000 (23:00 +0000)]
Merge "Enable encoder to avoid 8x4 or 4x8 partitions"

8 years agoMerge "Fix a typo"
Yaowu Xu [Thu, 7 Jan 2016 20:26:09 +0000 (20:26 +0000)]
Merge "Fix a typo"

8 years agoFix 2 bugs when using both SUPERTX and EXT_TX
Geza Lore [Thu, 7 Jan 2016 16:03:58 +0000 (16:03 +0000)]
Fix 2 bugs when using both SUPERTX and EXT_TX

Change-Id: Ibcbe470a97880c294600345337054ed9af84de2b

8 years agoEnable encoder to avoid 8x4 or 4x8 partitions
Yaowu Xu [Thu, 7 Jan 2016 17:43:26 +0000 (09:43 -0800)]
Enable encoder to avoid 8x4 or 4x8 partitions

This commit enables encoder to avoid 8x4 and 4x8 partitions for
scaled reference frames when libvpx is configured and built with
--enable-better-hw-compatibility

Change-Id: I02ad65c386f5855f4325d72570c49164ed52f413

8 years agoFix a typo
Yaowu Xu [Thu, 7 Jan 2016 17:29:34 +0000 (09:29 -0800)]
Fix a typo

Change-Id: I12de2dd5e5f375551804166188d76a9ad8067b41

8 years agoFixing issue with txfm context when var_tx and supertx are enabled
Julia Robson [Thu, 7 Jan 2016 15:23:08 +0000 (15:23 +0000)]
Fixing issue with txfm context when var_tx and supertx are enabled

In the decoder, the txfm context was not being set for supertx
blocks.

Change-Id: Ifa0882bba36bc54bbd9dba3e370317b5531e33d3

8 years agoMerge branch 'master' into nextgenv2
Yaowu Xu [Thu, 7 Jan 2016 13:00:06 +0000 (05:00 -0800)]
Merge branch 'master' into nextgenv2

8 years agoMerge "Change to rd costing for CONFIG_VAR_TX" into nextgenv2
Debargha Mukherjee [Wed, 6 Jan 2016 23:49:01 +0000 (23:49 +0000)]
Merge "Change to rd costing for CONFIG_VAR_TX" into nextgenv2

8 years agovp9-svc: Fix to avoid msan unitialized value.
Marco [Wed, 6 Jan 2016 19:30:02 +0000 (11:30 -0800)]
vp9-svc: Fix to avoid msan unitialized value.

Move the logic for forcing zero_mode after the
(ref_frame & flag_list) check.
This was causing an memory leak under msan:
https://bugs.chromium.org/p/webrtc/issues/detail?id=5402

Change-Id: Ie9d243369f8ed7c332f46178275945331da4fd85

8 years agoMerge branch 'master' into nextgenv2
Yaowu Xu [Wed, 6 Jan 2016 16:36:18 +0000 (08:36 -0800)]
Merge branch 'master' into nextgenv2

Conflicts:
vp10/decoder/decodeframe.c
vp10/encoder/bitstream.c

Change-Id: I743449f49b723d2ce357832619a28b53369d0547

8 years agoAssert no mv clamping for scaled references
Yaowu Xu [Tue, 5 Jan 2016 02:24:18 +0000 (18:24 -0800)]
Assert no mv clamping for scaled references

Under --enable-better-hw-compabibility, this commit adds the asserts
that no mv clamping is applied for scaled references, so when built
with this configure option, decoder will assert if an input bitstream
triggger mv clamping for scaled reference frames.

Change-Id: I786e86a2bbbfb5bc2d2b706a31b0ffa8fe2eb0cb

8 years agoMerge "Assert no 8x4/4x8 partition for scaled references"
Yaowu Xu [Tue, 5 Jan 2016 20:35:46 +0000 (20:35 +0000)]
Merge "Assert no 8x4/4x8 partition for scaled references"

8 years agoMerge "vp9-skin detection: Refactoring."
Marco Paniconi [Tue, 5 Jan 2016 16:56:54 +0000 (16:56 +0000)]
Merge "vp9-skin detection: Refactoring."

8 years agoChange to rd costing for CONFIG_VAR_TX
Peter de Rivaz [Tue, 5 Jan 2016 15:35:43 +0000 (15:35 +0000)]
Change to rd costing for CONFIG_VAR_TX

In select_tx_block I believe the rd cost was ignoring the bits
needed to encode the split bit.

Change-Id: Iacbf705b880db9a68967a994406ba90ecf693ab8

8 years agoSuper transform - ported from nextgen branch
Debargha Mukherjee [Fri, 20 Nov 2015 00:51:16 +0000 (16:51 -0800)]
Super transform - ported from nextgen branch

Various additional changes were made to make the experiment
compatible with misc_fixes.

derflr: +0.979%
hevcmr: +0.865%

Speed-wise with --enable-supertx the encoder is only about 10%
slower than without. Decoding impact is about 30% slowdown.

Note this does not work with ext-tx or var-tx yet. That is
a TODO.

Change-Id: If25af4241a7a9efbd28f58eda3c4f044c7a7ef4b

8 years agoAssert no 8x4/4x8 partition for scaled references
Yaowu Xu [Thu, 3 Dec 2015 01:00:26 +0000 (17:00 -0800)]
Assert no 8x4/4x8 partition for scaled references

This commit adds a new configure option:

--enable-better-hw-compatibility

The purpose of the configure option is to provide information on known
hardware decoder implementation bugs, so encoder implementers may
choose to implement their encoders in a way to avoid triggering these
decoder bugs.

The WebM team were made aware of that a number of hardware decoders
have trouble in handling the combination of scaled frame reference
frame and 8x4 or 4x8 partitions. This commit added asserts to vp9
decoder, so when built with above configure option, the decoder can
assert if an input bitstream triggers such decoder bug.

Change-Id: I386204cfa80ed16b50ebde57f886121ed76200bf

8 years agoMerge "vp10: only assume ONLY_4X4 if segmentation is disabled."
Yaowu Xu [Tue, 5 Jan 2016 02:29:05 +0000 (02:29 +0000)]
Merge "vp10: only assume ONLY_4X4 if segmentation is disabled."

8 years agoMerge "vp10: skip coding of txsz for lossless-segment blocks."
Yaowu Xu [Tue, 5 Jan 2016 02:28:58 +0000 (02:28 +0000)]
Merge "vp10: skip coding of txsz for lossless-segment blocks."

8 years agovp9-skin detection: Refactoring.
Marco [Tue, 5 Jan 2016 00:48:15 +0000 (16:48 -0800)]
vp9-skin detection: Refactoring.

Add function to compute skin map for a given block, as its
used in several places (cyclic refresh, noise estimation, and denoising).

Change-Id: Ied622908df43b6927f7fafc6c019d1867f2a24eb

8 years agovp9-svc: Set initial values for ext_buffer/flag indices.
Marco [Mon, 4 Jan 2016 20:19:56 +0000 (12:19 -0800)]
vp9-svc: Set initial values for ext_buffer/flag indices.

Set initial values for these parameters in the vp9_init_layer_context().

This also fixes an issue in the svc-bypass mode when frame flags are
passed via the vpx_codec_encode().

Change-Id: I0968f04672f8d3d2fe2cea6b8a23f79f80d7a8b1

8 years agovp10: only assume ONLY_4X4 if segmentation is disabled.
Ronald S. Bultje [Mon, 4 Jan 2016 20:13:29 +0000 (15:13 -0500)]
vp10: only assume ONLY_4X4 if segmentation is disabled.

Otherwise, per-segment lossless might mean that some segments are not
lossless and they could still want to use another mode. The per-block
tx points remain uncoded on blocks where (per the segment id) the Q
value implies lossless.

Change-Id: If210206ab1fe3dd11976797370c77f961f13dfa0

8 years agovp10: skip coding of txsz for lossless-segment blocks.
Ronald S. Bultje [Mon, 4 Jan 2016 20:20:50 +0000 (15:20 -0500)]
vp10: skip coding of txsz for lossless-segment blocks.

Change-Id: Ic23c10b6d2a9fed3abe69c6bf10e910832444f2c

8 years agoUpdate IMAGE_ABI_VERSION which wasn't updated after color_range enum was introduced.
Sasi Inguva [Mon, 4 Jan 2016 19:56:56 +0000 (11:56 -0800)]
Update IMAGE_ABI_VERSION which wasn't updated after color_range enum was introduced.

Change-Id: I83703851f65f93573ebf7d2c0d0f056ba879c07a

8 years agoMerge "Use precise rate cost for intra modes in inter frames" into nextgenv2
Hui Su [Mon, 4 Jan 2016 18:17:59 +0000 (18:17 +0000)]
Merge "Use precise rate cost for intra modes in inter frames" into nextgenv2

8 years agoUse precise rate cost for intra modes in inter frames
hui su [Wed, 30 Dec 2015 18:27:19 +0000 (10:27 -0800)]
Use precise rate cost for intra modes in inter frames

derflr +0.021%
hevclr +0.207%
hevcmr +0.035%
stdhd  +0.042%

Change-Id: Ic750df93bcc0a261a66a9b19d939a5cd61a6b516

8 years agoReplaced a hard-coded value with the macro
Zoe Liu [Thu, 31 Dec 2015 01:16:51 +0000 (17:16 -0800)]
Replaced a hard-coded value with the macro

Change-Id: I2aec63d8a600e319d037b764b0609092bce1e483

8 years agoMerge branch 'master' into nextgenv2
Yaowu Xu [Tue, 29 Dec 2015 13:00:05 +0000 (05:00 -0800)]
Merge branch 'master' into nextgenv2

8 years agoext-intra experiment: exploit left-bottom bundary
hui su [Thu, 10 Dec 2015 19:50:13 +0000 (11:50 -0800)]
ext-intra experiment: exploit left-bottom bundary

ext-intra vs nextgenv2 baseline:
derflr +1.12% (was +1.06%)
hevcmr +2.26% (was +2.15%)

Change-Id: I6cc7612d0d7e81e200aa962988db1ea7680626d7

8 years agoMerge "Code clean of highbd_tm_predictor_32x32"
Jian Zhou [Mon, 28 Dec 2015 18:17:03 +0000 (18:17 +0000)]
Merge "Code clean of highbd_tm_predictor_32x32"

8 years agoMerge changes I0139f8e9,I7d2545fc
Jian Zhou [Mon, 28 Dec 2015 18:16:13 +0000 (18:16 +0000)]
Merge changes I0139f8e9,I7d2545fc

* changes:
  Code clean of highbd_tm_predictor_16x16
  Code clean of highbd_dc_predictor_32x32

8 years agoMerge branch 'master' into nextgenv2
Yaowu Xu [Wed, 23 Dec 2015 13:00:05 +0000 (05:00 -0800)]
Merge branch 'master' into nextgenv2

8 years agoMerge "Fix sub8x8 motion search on scaled reference frame"
Jingning Han [Wed, 23 Dec 2015 02:34:18 +0000 (02:34 +0000)]
Merge "Fix sub8x8 motion search on scaled reference frame"

8 years agoCode clean of highbd_tm_predictor_32x32
Jian Zhou [Wed, 23 Dec 2015 00:51:57 +0000 (16:51 -0800)]
Code clean of highbd_tm_predictor_32x32

Remove the ARCH_X86_64 constraint. No performance hit on both
big core and small core.

Change-Id: I39860b62b7a0ae4acaafdca7d68f3e5820133a81

8 years agoCode clean of highbd_tm_predictor_16x16
Jian Zhou [Wed, 23 Dec 2015 00:34:40 +0000 (16:34 -0800)]
Code clean of highbd_tm_predictor_16x16

Remove the ARCH_X86_64 constraint.

Change-Id: I0139f8e998cc5525df55161c2054008d21ac24d4

8 years agoCode clean of highbd_dc_predictor_32x32
Jian Zhou [Mon, 21 Dec 2015 19:52:23 +0000 (11:52 -0800)]
Code clean of highbd_dc_predictor_32x32

Remove the ARCH_X86_64 constraint.

Change-Id: I7d2545fc4f24eb352cf3e03082fc4d48d46fbb09

8 years agoMerge "aq-mode=3: Don't reset segment if block is determined to be skin."
Marco Paniconi [Tue, 22 Dec 2015 20:18:24 +0000 (20:18 +0000)]
Merge "aq-mode=3: Don't reset segment if block is determined to be skin."

8 years agoaq-mode=3: Don't reset segment if block is determined to be skin.
Marco [Mon, 21 Dec 2015 18:35:05 +0000 (10:35 -0800)]
aq-mode=3: Don't reset segment if block is determined to be skin.

For coding block sizes <=16X16, if the block is determined to be skin,
then always allow for that block to be candidate for refresh. So if that
block happens to be on the boost segment(s), segment won't get reset to 0
and delta-q will be applied.

PSNR/SSIM metrics neutral (little/no change) on RTC clips.
Speed increase small/negligible (< 1%).
Some visual improvement on faces in a few RTC clips.

Change-Id: I6bf0fce6f39d820b491ce05d7c017ad168fce7d6

8 years agoMerge "Code clean of highbd_tm_predictor_4x4"
James Zern [Tue, 22 Dec 2015 16:45:01 +0000 (16:45 +0000)]
Merge "Code clean of highbd_tm_predictor_4x4"

8 years agoMerge "Code clean of highbd_dc_predictor_4x4"
James Zern [Tue, 22 Dec 2015 16:30:37 +0000 (16:30 +0000)]
Merge "Code clean of highbd_dc_predictor_4x4"

8 years agoMerge branch 'master' into nextgenv2
Yaowu Xu [Tue, 22 Dec 2015 13:00:05 +0000 (05:00 -0800)]
Merge branch 'master' into nextgenv2

8 years agoMerge "Cleared the EXT_REFS code to make it more legible." into nextgenv2
Zoe Liu [Mon, 21 Dec 2015 18:26:35 +0000 (18:26 +0000)]
Merge "Cleared the EXT_REFS code to make it more legible." into nextgenv2

8 years agoMerge "Code clean of highbd_v_predictor_4x4"
Jian Zhou [Mon, 21 Dec 2015 18:07:48 +0000 (18:07 +0000)]
Merge "Code clean of highbd_v_predictor_4x4"

8 years agoMerge "Fix for high bitdepth temporal filter" into nextgenv2
Debargha Mukherjee [Mon, 21 Dec 2015 17:41:26 +0000 (17:41 +0000)]
Merge "Fix for high bitdepth temporal filter" into nextgenv2

8 years agoMerge branch 'master' into nextgenv2
Yaowu Xu [Sat, 19 Dec 2015 13:00:06 +0000 (05:00 -0800)]
Merge branch 'master' into nextgenv2

8 years agoMerge "Fix for issue 1114 compile error"
Yunqing Wang [Sat, 19 Dec 2015 04:29:39 +0000 (04:29 +0000)]
Merge "Fix for issue 1114 compile error"

8 years agosad_sse2: fix sad4xN(_avg) on windows
James Zern [Sat, 19 Dec 2015 03:19:32 +0000 (19:19 -0800)]
sad_sse2: fix sad4xN(_avg) on windows

reduce the register count by 1 to avoid xmm6 and unnecessarily
penalizing the other users of the base macro

Change-Id: I59605c9a41a31c1b74f67ec06a40d1a7f92c4699

8 years agoCode clean of highbd_tm_predictor_4x4
Jian Zhou [Sat, 19 Dec 2015 02:43:41 +0000 (18:43 -0800)]
Code clean of highbd_tm_predictor_4x4

Replace MMX with SSE2, reduce mem access to left neighbor,
loop unrolled.

Change-Id: I941be915af809025f121ecc6c6443f73c9903e70

8 years agoCode clean of highbd_v_predictor_4x4
Jian Zhou [Fri, 18 Dec 2015 23:25:27 +0000 (15:25 -0800)]
Code clean of highbd_v_predictor_4x4

MMX replaced with SSE2, same performance.

Change-Id: I2ab8f30a71e5fadbbc172fb385093dec1e11a696

8 years agoCode clean of highbd_dc_predictor_4x4
Jian Zhou [Fri, 18 Dec 2015 20:45:23 +0000 (12:45 -0800)]
Code clean of highbd_dc_predictor_4x4

MMX replaced with SSE2, same performance.

Change-Id: Ic57855254e26757191933c948fac6aa047fadafc

8 years agoMerge "Non-rd speed >=5: Include H/V intra for bsize=16x16."
Marco Paniconi [Fri, 18 Dec 2015 17:45:49 +0000 (17:45 +0000)]
Merge "Non-rd speed >=5: Include H/V intra for bsize=16x16."

8 years agoMerge branch 'master' into nextgenv2
Yaowu Xu [Fri, 18 Dec 2015 13:00:05 +0000 (05:00 -0800)]
Merge branch 'master' into nextgenv2

8 years agoFix for issue 1114 compile error
Peter de Rivaz [Mon, 14 Dec 2015 16:35:29 +0000 (16:35 +0000)]
Fix for issue 1114 compile error

In 32-bit build with --enable-shared, there is a lot of
register pressure and register src_strideq is reused.
The code needs to use the stack based version of src_stride,
but this doesn't compile when used in an lea instruction.

This patch also fixes a related segmentation fault caused by the
implementation using src_strideq even though it has been
reused.

This patch also fixes the HBD subpel variance tests that fail
when compiled without disable-optimizations.
These failures were caused by local variables in the assembler
routines colliding with the caller's stack frame.

Change-Id: Ice9d4dafdcbdc6038ad5ee7c1c09a8f06deca362

8 years agoMerge "Code clean of sad4xN(_avg)_sse"
Jian Zhou [Fri, 18 Dec 2015 01:39:20 +0000 (01:39 +0000)]
Merge "Code clean of sad4xN(_avg)_sse"

8 years agoNon-rd speed >=5: Include H/V intra for bsize=16x16.
Marco [Fri, 18 Dec 2015 01:13:01 +0000 (17:13 -0800)]
Non-rd speed >=5: Include H/V intra for bsize=16x16.

H/V intra mode was only enabled for bsize < 16x16,
enable it also for bsize=16x16.

Metrics are neutral with this change:
Overall very small gain (0.1%), small visual gain on some RTC clips.

Change-Id: Ib2d7a44382433bfc11cf324aa3cc5c382ea9e088

8 years agoRemove unused POSIX_MMAP references
Johann [Fri, 18 Dec 2015 01:04:11 +0000 (17:04 -0800)]
Remove unused POSIX_MMAP references

Change-Id: I6998e15f9ed2849a270033217c02e27c79ee8343

8 years agoRemove unused stdint.h check
Johann [Fri, 18 Dec 2015 00:51:59 +0000 (16:51 -0800)]
Remove unused stdint.h check

https://bugs.chromium.org/p/webm/issues/detail?id=1119

Change-Id: I88891d9f0be29ac6f845d2b470e5735dad16e693

8 years agoCleared the EXT_REFS code to make it more legible.
Zoe Liu [Fri, 18 Dec 2015 00:46:28 +0000 (16:46 -0800)]
Cleared the EXT_REFS code to make it more legible.

Change-Id: I309c4e16fd305bcfa590d14f957a9598d23c7ee6

8 years agoRestore the flexibility for the new 3 references
Zoe Liu [Thu, 3 Dec 2015 00:27:46 +0000 (16:27 -0800)]
Restore the flexibility for the new 3 references

For the experiment of EXT_REFS, removed the previous special handling
on the new last 3 references, i.e. LAST2_FRAME, LAST3_FRAME, and
LAST4_FRAME, at the decoder, so that these new last references are
treated the same way as the other 3 references (LAST_FRAME,
GOLDEN_FRAME, and ALTREF_FRAME). Encoder changes have been made
accordingly to realize this flexibility.

Change-Id: Ic6546f9443b4377bb7e7b101bfa3e70a8b8d1c65

8 years agoCode clean of sad4xN(_avg)_sse
Jian Zhou [Wed, 16 Dec 2015 23:52:02 +0000 (15:52 -0800)]
Code clean of sad4xN(_avg)_sse

Replace MMX with SSE2, reduce psadbw ops which may help Silvermont.

Change-Id: Ic7aec15245c9e5b2f3903dc7631f38e60be7c93d

8 years agoMerge "Replace DST1 in ext_tx experiment with DST2" into nextgenv2
Debargha Mukherjee [Wed, 16 Dec 2015 23:47:28 +0000 (23:47 +0000)]
Merge "Replace DST1 in ext_tx experiment with DST2" into nextgenv2

8 years agoMerge "vp9-svc: Fix to allow for 4x4 variance for low resolutions."
Marco Paniconi [Wed, 16 Dec 2015 23:04:26 +0000 (23:04 +0000)]
Merge "vp9-svc: Fix to allow for 4x4 variance for low resolutions."

8 years agoMerge "vpxenc: don't warn about libwebm availability if writing IVF."
James Zern [Wed, 16 Dec 2015 22:53:01 +0000 (22:53 +0000)]
Merge "vpxenc: don't warn about libwebm availability if writing IVF."

8 years agovp9-svc: Fix to allow for 4x4 variance for low resolutions.
Marco [Wed, 16 Dec 2015 16:57:05 +0000 (08:57 -0800)]
vp9-svc: Fix to allow for 4x4 variance for low resolutions.

Change-Id: I3ec08e10d9ebf6d8b8a03004a320523f926e5cc4