platform/upstream/libvpx.git
8 years agoMerge "Add support for color-range."
Ronald S. Bultje [Wed, 16 Sep 2015 20:26:10 +0000 (20:26 +0000)]
Merge "Add support for color-range."

8 years agoMerge "VP9 dynamic resizing unit test with bitrate change."
Jacky Chen [Wed, 16 Sep 2015 16:55:14 +0000 (16:55 +0000)]
Merge "VP9 dynamic resizing unit test with bitrate change."

8 years agoAdd support for color-range.
Ronald S. Bultje [Wed, 16 Sep 2015 01:56:51 +0000 (21:56 -0400)]
Add support for color-range.

In decoder, export (eventually) into vpx_image_t.range field. In
encoder, use oxcf->color_range to set it (same way as for
color_space).

See issue 1059.

Change-Id: Ieabbb2a785fa58cc4044bd54eee66f328f3906ce

8 years agoMerge "vp10: fix entropy counts for the hp bit."
Ronald S. Bultje [Wed, 16 Sep 2015 01:53:44 +0000 (01:53 +0000)]
Merge "vp10: fix entropy counts for the hp bit."

8 years agoVP9 dynamic resizing unit test with bitrate change.
jackychen [Tue, 15 Sep 2015 22:47:11 +0000 (15:47 -0700)]
VP9 dynamic resizing unit test with bitrate change.

Verify the dynamic resizer behavior for real time, 1 pass CBR mode.
Start at low target bitrate, raise the bitrate in the middle of the
clip, verify that scaling-up does occur after bitrate changed.

Change-Id: I7ad8c9a4c8288387d897dd6bdda592f142d8870c

8 years agoMerge "fix implicit declaration"
Angie Chiang [Wed, 16 Sep 2015 00:20:43 +0000 (00:20 +0000)]
Merge "fix implicit declaration"

8 years agoMerge changes from topic 'fix-vp9-bitstream-test'
James Zern [Tue, 15 Sep 2015 23:14:34 +0000 (23:14 +0000)]
Merge changes from topic 'fix-vp9-bitstream-test'

* changes:
  vp9_encoder_parms_get_to_decoder: cosmetics
  vp9...parms_get_to_decoder: remove unneeded func
  vp9...parms_get_to_decoder: fix EXPECT param order
  vp9_encoder_parms_get_to_decoder: delete dead code
  fix BitstreamParms test
  vp9_encoder_parms_get_to_decoder: remove vp10
  yuvconfig2image(): add explicit cast to avoid conv warning
  vp9/10 decoder_init: add missing alloc cast
  vp9/10: set color_space on preview frame
  vp10: add extern "C" to headers
  vp9: add extern "C" to headers

8 years agoMerge "VP9 dynamic resizing unit test."
Marco Paniconi [Tue, 15 Sep 2015 22:26:03 +0000 (22:26 +0000)]
Merge "VP9 dynamic resizing unit test."

8 years agoMerge "SVC fix to set worst/best_quality per layer."
Marco Paniconi [Tue, 15 Sep 2015 22:06:13 +0000 (22:06 +0000)]
Merge "SVC fix to set worst/best_quality per layer."

8 years agoVP9 dynamic resizing unit test.
jackychen [Tue, 15 Sep 2015 21:17:04 +0000 (14:17 -0700)]
VP9 dynamic resizing unit test.

Verify the dynamic resizer behavior for real time, 1 pass CBR mode.
Run at low bitrate, with resize_allowed = 1, and verify that we get
one resize down event.

Change-Id: Ic347be60972fa87f7d68310da2a055679788929d

8 years agoSVC fix to set worst/best_quality per layer.
Marco [Tue, 15 Sep 2015 16:54:19 +0000 (09:54 -0700)]
SVC fix to set worst/best_quality per layer.

Allow the worst/best_quality to be set per layer via the
VP9E_SET_SVC_PARAMETERS control.

Change-Id: Icba5ec8ac757152f3bb7860d6010d9174a7bd578

8 years agoAdd cyclic refresh parameters to svc-layer context.
Marco [Tue, 8 Sep 2015 15:47:42 +0000 (08:47 -0700)]
Add cyclic refresh parameters to svc-layer context.

For 1 pass CBR spatial-SVC:
Add cyclic refresh parameters to the svc-layer context.

This allows cyclic refresh (aq-mode=3) to be applied to
the whole super-frame (all spatial layers).
This gives a performance improvement for spatial layer encoding.

Addd the aq_mode mode on/off setting as command line option.

Change-Id: Ib9c3b5ba3cb7851bfb8c37d4f911664bef38e165

8 years agoFix two pass svc encoding
Debargha Mukherjee [Tue, 15 Sep 2015 13:11:24 +0000 (06:11 -0700)]
Fix two pass svc encoding

Fixes temporal scalability. Updates were inadvertently turned
off for two pass svc causing crashes due to gf_group.index
growing unchecked.

Change-Id: Iff759946bf61bbde70630347cc8fa4d51a8c2d2f

8 years agoMerge "Remove leftover of "frame_parallel_decoding""
Yaowu Xu [Tue, 15 Sep 2015 02:24:36 +0000 (02:24 +0000)]
Merge "Remove leftover of "frame_parallel_decoding""

8 years agoRemove leftover of "frame_parallel_decoding"
Yaowu Xu [Tue, 15 Sep 2015 01:06:28 +0000 (18:06 -0700)]
Remove leftover of "frame_parallel_decoding"

The variable has been removed by a previous commit, but missed this
instance.

Change-Id: Ia34474b0be4945cc6cb9191f0d7cd24a99a4c22e

8 years agoChange parameters for VP9 dynamic resizing.
jackychen [Mon, 14 Sep 2015 23:15:07 +0000 (16:15 -0700)]
Change parameters for VP9 dynamic resizing.

Use a smaller window in dynamic resizing and wait a shorter
time after key frame.

Change-Id: I086f840cdec3c6bdaa9acfe11346d919e445973d

8 years agoMerge "CR: Don't attempt to read qindex_delta for segments CR is unaware of."
Alex Converse [Mon, 14 Sep 2015 22:59:24 +0000 (22:59 +0000)]
Merge "CR: Don't attempt to read qindex_delta for segments CR is unaware of."

8 years agoCR: Don't attempt to read qindex_delta for segments CR is unaware of.
Alex Converse [Mon, 14 Sep 2015 18:43:38 +0000 (11:43 -0700)]
CR: Don't attempt to read qindex_delta for segments CR is unaware of.

Found by the remoting VideoEncoderVpxTest.Vp9LossyUnchangedFrame unit
test under asan.

Change-Id: Icac63051bf37c7355e661837b57c257d58c764fc

8 years agoMerge "For 1 pass: always use the normative filter in vp9_scale_if_required()"
Marco Paniconi [Mon, 14 Sep 2015 20:36:34 +0000 (20:36 +0000)]
Merge "For 1 pass: always use the normative filter in vp9_scale_if_required()"

8 years agovp10: fix entropy counts for the hp bit.
Ronald S. Bultje [Mon, 7 Sep 2015 18:32:28 +0000 (14:32 -0400)]
vp10: fix entropy counts for the hp bit.

The counts didn't take usehp into account, which means that if the
scope of the refmv is too large for the hp bit to be coded, the value
(always 1) is still included in the stats. Therefore, the final
counts will not reflect the entropy of the coded bits, but rather the
entropy of the combination of coded bits and the implied value (which
is always 1). Fix that by only including counts if the hp bit is
actually coded.

See issue 1060.

Change-Id: I19a3adda4a8662a05f08a9e58d7e56ff979be11e

8 years agoFor 1 pass: always use the normative filter in vp9_scale_if_required()
Marco [Mon, 14 Sep 2015 17:13:33 +0000 (10:13 -0700)]
For 1 pass: always use the normative filter in vp9_scale_if_required()

The normative (convolve8) filter is optimized/faster than
the nonnormative one. Pass usage of scaler (normative/nonomorative)
to vp9_scale_if_required(), and always use normative one for 1 pass.

Change-Id: I2b71d9ff18b3c7499b058d1325a9554de993dd52

8 years agoMerge "vp10: merge frame_parallel_decoding_mode and refresh_frame_context."
Ronald S. Bultje [Mon, 14 Sep 2015 18:24:24 +0000 (18:24 +0000)]
Merge "vp10: merge frame_parallel_decoding_mode and refresh_frame_context."

8 years agoadd range_check for fdct in vp10
Angie Chiang [Sat, 29 Aug 2015 03:39:10 +0000 (20:39 -0700)]
add range_check for fdct in vp10

Unify the style of fdct4() fdct8() fdct16()
Add fdct32()
Add range_check() at each stage
Add unit test at ../../test/vp10_dct_test.cc

Change-Id: I13f76d9046c3ea473c82024b09a5bc8662e2c28e

8 years agothird_party/libwebm: pull from upstream.
James Zern [Sat, 12 Sep 2015 02:01:03 +0000 (19:01 -0700)]
third_party/libwebm: pull from upstream.

Upstream hash: 476366249e1fda7710a389cd41c57db42305e0d4

Changes from upstream since last update:
4763662 mkvparser: fix type warnings
267f71c mkvparser: SafeArrayAlloc fix type warning
f1a99d5 mkvparser: s/LONG_LONG_MAX/LLONG_MAX/ for compatibility
bff1aa5 mkvparser: add msvc compatibility for isnan/isinf

Change-Id: Ie0375e564fc74b3b296744d0039830d2f77b83b6

8 years agovp10: merge frame_parallel_decoding_mode and refresh_frame_context.
Ronald S. Bultje [Tue, 8 Sep 2015 18:20:48 +0000 (14:20 -0400)]
vp10: merge frame_parallel_decoding_mode and refresh_frame_context.

See issue 1030. The value of frame_parallel_decoding_mode was ignored
in vp9 if refresh_frame_context was 0, so instead make it a 3-member
enum where the dependency is obviously stated.

Change-Id: I37f0177e5759f54e2e6cc6217023d5681de92438

8 years agovpxdec: remove implied --output-bit-depth=8 for --yv12.
Ronald S. Bultje [Fri, 11 Sep 2015 23:33:12 +0000 (19:33 -0400)]
vpxdec: remove implied --output-bit-depth=8 for --yv12.

Change-Id: I28c939db49334572476aa2b428ec93111d4e869d

8 years agovp10: remove duplicate frame_parallel_decode field.
Ronald S. Bultje [Mon, 7 Sep 2015 14:14:18 +0000 (10:14 -0400)]
vp10: remove duplicate frame_parallel_decode field.

Keep the one in VP10_COMMON in favour of the one in VP10_DECODER.

Change-Id: Ia81983ccc95d83829dc815e28d9b1143e16e27b1

8 years agoDon't convert bitdepth for !single-file or MD5.
Ronald S. Bultje [Fri, 11 Sep 2015 20:55:19 +0000 (16:55 -0400)]
Don't convert bitdepth for !single-file or MD5.

... unless --output-bit-depth was set.

Change-Id: I3482eaf12e245eec24427518fccdd173f890f4b4

8 years agoMerge "Make reset_frame_context an enum."
Ronald S. Bultje [Fri, 11 Sep 2015 22:36:49 +0000 (22:36 +0000)]
Merge "Make reset_frame_context an enum."

8 years agoMerge "Avoid scaling last_source, unless needed."
Marco Paniconi [Fri, 11 Sep 2015 21:39:06 +0000 (21:39 +0000)]
Merge "Avoid scaling last_source, unless needed."

8 years agofix implicit declaration
Angie Chiang [Fri, 11 Sep 2015 18:58:15 +0000 (11:58 -0700)]
fix implicit declaration

include vpx_dsp_rtcd.h to avoid implicit declaration of
vp10_highbd_fdct32x32_rd_c

Change-Id: I0b9ad50381a302750138deab14d2d5ac31f286ee

8 years agoMake reset_frame_context an enum.
Ronald S. Bultje [Tue, 8 Sep 2015 18:14:28 +0000 (14:14 -0400)]
Make reset_frame_context an enum.

In vp9, [0] and [1] had identical meaning, so merge them into a
single value. Make it impossible to code RESET_FRAME_CONTEXT_NONE
for intra_only frames, since that is a non-sensical combination.

See issue 1030.

Change-Id: If450c74162d35ca63a9d279beaa53ff9cdd6612b

8 years agoAvoid scaling last_source, unless needed.
Marco [Fri, 11 Sep 2015 18:23:26 +0000 (11:23 -0700)]
Avoid scaling last_source, unless needed.

Save some encoding time, for the case of spatial layers
or under dynamic resizing mode.

Change-Id: If4a8eb6f0376c3d2dde8465fde6bfd86ab704920

8 years agoMerge "Fix vp10 high bit-depth build"
James Zern [Fri, 11 Sep 2015 18:27:49 +0000 (18:27 +0000)]
Merge "Fix vp10 high bit-depth build"

8 years agoFix vp10 high bit-depth build
Jingning Han [Fri, 11 Sep 2015 15:56:06 +0000 (08:56 -0700)]
Fix vp10 high bit-depth build

Change-Id: Ie3daed0b282b43ef81d2f8797ac1f6e8bde7d65e

8 years agoRemove unneeded/incorrect comment.
Marco [Fri, 11 Sep 2015 15:48:22 +0000 (08:48 -0700)]
Remove unneeded/incorrect comment.

Change-Id: I5c923223c284ad4fda0c45572a66bebc8528dd1d

8 years agoMerge "build: modify default ARFLAGS / .a target"
James Zern [Fri, 11 Sep 2015 02:30:07 +0000 (02:30 +0000)]
Merge "build: modify default ARFLAGS / .a target"

8 years agoMerge "Add misc_fixes experiment."
Ronald S. Bultje [Fri, 11 Sep 2015 02:00:45 +0000 (02:00 +0000)]
Merge "Add misc_fixes experiment."

8 years agoMerge "Don't reset sign_bias fields in vp10_setup_past_independence()."
Ronald S. Bultje [Fri, 11 Sep 2015 02:00:30 +0000 (02:00 +0000)]
Merge "Don't reset sign_bias fields in vp10_setup_past_independence()."

8 years agoMerge "Isolate vp10's fwd_txfm from vp9"
Angie Chiang [Fri, 11 Sep 2015 00:10:45 +0000 (00:10 +0000)]
Merge "Isolate vp10's fwd_txfm from vp9"

8 years agoMerge changes Ibb308526,I99e330f8
Alex Converse [Thu, 10 Sep 2015 23:04:46 +0000 (23:04 +0000)]
Merge changes Ibb308526,I99e330f8

* changes:
  Prevent CR in screen mode from refreshing flat inter blocks forever.
  For screen content consider intra uv when color_sensitivity is set.

8 years agoMerge "Take out reference_masking speed feature"
Jingning Han [Thu, 10 Sep 2015 23:03:06 +0000 (23:03 +0000)]
Merge "Take out reference_masking speed feature"

8 years agoMerge "Take out skip_encode speed feature in vp10"
Jingning Han [Thu, 10 Sep 2015 23:02:38 +0000 (23:02 +0000)]
Merge "Take out skip_encode speed feature in vp10"

8 years agoMerge "Remove speed features in vp10"
Jingning Han [Thu, 10 Sep 2015 23:02:27 +0000 (23:02 +0000)]
Merge "Remove speed features in vp10"

8 years agoMerge "Isolate vp10's inv_txfm from vp9"
Angie Chiang [Thu, 10 Sep 2015 22:51:02 +0000 (22:51 +0000)]
Merge "Isolate vp10's inv_txfm from vp9"

8 years agoIsolate vp10's fwd_txfm from vp9
Angie Chiang [Thu, 10 Sep 2015 00:56:43 +0000 (17:56 -0700)]
Isolate vp10's fwd_txfm from vp9

1) copy fw_txfm related files from vpx_dsp tp vp10

    vpx_dsp/fwd_txfm.h → vp10/common/vp10_fwd_txfm.h
    vpx_dsp/fwd_txfm.c → vp10/common/vp10_fwd_txfm.c
    vpx_dsp/x86/fwd_dct32x32_impl_sse2.h →  vp10/common/x86/vp10_fwd_dct32x32_impl_sse2.h
    vpx_dsp/x86/fwd_txfm_sse2.c →  vp10/common/x86/vp10_fwd_txfm_sse2.c
    vpx_dsp/x86/fwd_txfm_impl_sse2.h → vp10/common/vp10_fwd_txfm_impl_sse2.h

Change-Id: Ie9428b2ab1ffeb28e17981bb8a142ebe204f3bba

8 years agoIsolate vp10's inv_txfm from vp9
Angie Chiang [Fri, 4 Sep 2015 21:51:54 +0000 (14:51 -0700)]
Isolate vp10's inv_txfm from vp9

1) copy following files from vpx_dsp/ to vp10/common/
vp10_inv_txfm.c
vp10_inv_txfm.h
vp10_inv_txfm_sse2.c
vp10_inv_txfm_sse2.h

2) change the function prefix "vpx_" to "vp10_" in above files

3) add unit test at vp10_inv_txfm_test.cc

Change-Id: I206f10f60c8b27d872c84b7482c3bb1d1cb4b913

8 years agoPrevent CR in screen mode from refreshing flat inter blocks forever.
Alex Converse [Thu, 3 Sep 2015 21:53:40 +0000 (14:53 -0700)]
Prevent CR in screen mode from refreshing flat inter blocks forever.

Take the minimum last_codec_q_map on inter skip.

Change-Id: Ibb308526dd19793bb359f51ebd7b48d8692903fd

8 years agoFor screen content consider intra uv when color_sensitivity is set.
Alex Converse [Thu, 3 Sep 2015 21:52:39 +0000 (14:52 -0700)]
For screen content consider intra uv when color_sensitivity is set.

Change-Id: I99e330f8a779b4d564c19ef4639a881cb68910ae

8 years agoTake out reference_masking speed feature
Jingning Han [Thu, 10 Sep 2015 19:56:41 +0000 (12:56 -0700)]
Take out reference_masking speed feature

This condition is not effectively in use. The actual reference
frame masking is done in other route.

Change-Id: Ia59c843bcac7243dada92f0f67658d7ce43df5e8

8 years agobuild: modify default ARFLAGS / .a target
James Zern [Thu, 10 Sep 2015 19:54:01 +0000 (12:54 -0700)]
build: modify default ARFLAGS / .a target

remove 'u' and specify all objects to allow objects with the same
basename to be added and a incremental rebuild to succeed

fixes issue #1067

Change-Id: Id0ebc89be826a026f1bbf21b4e32a2b1af45154d

8 years agothird_party/libwebm: pull from upstream.
Vignesh Venkatasubramanian [Thu, 10 Sep 2015 18:02:40 +0000 (11:02 -0700)]
third_party/libwebm: pull from upstream.

Upstream hash: a58c32339e06e5d672a58cdd5844cea0a661e735

Changes from upstream since last update:
a58c323 mkvmuxer: Add codec id constant for VP10.
714f3c4 mkvparser: validate results in EBMLHeader::Parse.
cec98d4 mkvparser: Correct the ReadID implementation.
eb36ae4 Merge changes I029a268e,Ia272b150,I5c4d1bbc,Ia47a2478,I3a2e2226
229f493 Merge "mkvparser: Segment::AppendCluster asserts to error checks."
287faf9 Merge "mkvparser: Segment::DoLoadClusterUnknownSize asserts to error checks."
1a87b59 Merge "mkvparser: Segment assert clean up."
d26ec69 mkvparser: Cluster::Parse clean up.
f2029be mkvparser: Disallow EBML IDs equal to 0.
19f5694 mkvparser: Cluster::Load clean up.
27a07c1 mkvparser: Segment::Load asserts to error checks.
d0313dd mkvparser: Segment::PreloadCluster asserts to error checks.
b108695 mkvparser: Segment::AppendCluster asserts to error checks.
4630f80 mkvparser: Segment::DoLoadClusterUnknownSize asserts to error checks.
841a9b5 mkvparser: Segment assert clean up.
8c4ca2e Merge "mkvparser: Make mkvparser namespace usage uniform."
49ae6f0 Merge "mkvparser: Fix include order."
0735bb5 mkvparser: Make mkvparser namespace usage uniform.
93b24c4 mkvparser: Fix include order.
a57d660 sample_muxer: fix Segment memory leak on error
1c5bd94 mkvparser: Cues, change asserts to error checks.
7f77201 Merge "mkvparser: Add ReadID."
795fd56 mkvparser: set kMaxAllocSize explicitly
23bb18b mkvparser: Add ReadID.
7b57e37 mkvparser: add SafeArrayAlloc.
83a1f68 mkvparser: Remove buf_t typedef.
5074714 Merge changes Ia1265a63,I799d54df,Icfc582e4,I3425f608
b181105 Merge changes Ie4318152,I1e65f30f
06b4337 Block::Parse: replace pos asserts w/checks
b366a98 Cluster::ParseBlockGroup: replace pos asserts w/checks
2857b23 Tags::*::Parse: replace pos asserts w/checks
f1b2cfa Chapters::*::Parse: replace pos asserts w/checks
ca80629 Merge "mkvparser: Cues::PreloadCuePoint now returns bool."
6b4b297 Block::Parse: use int64 to aggregate laced frame sizes
c0d2c98 UnserializeFloat: check result for Inf/NaN
1a6dc4f mkvparser: Cues::PreloadCuePoint now returns bool.
275ac22 mkvparser: Cluster::Create clean up.
064f2ee Segment::PreloadCluster(): return a bool status
3778408 Segment::AppendCluster(): return a bool status
e86d046 mkvparser: check Cluster::Create() return
f9885b5 mkvparser: check allocations
21ee398 mkvparser: Segment::Load fail w/missing info/tracks
08fb654 Merge changes I264e68b2,Ife6190a4,Ibf37245f,I06efadb5,I88b5dfec, ...
c896095 mkvparser/Cluster: convert asserts to failure returns
680b4bf mkvparser/Tracks: convert asserts to failure returns
5889e6c mkvparser/Track: convert asserts to failure returns
5135c4c mkvparser/ContentEncoding: convert asserts to failure returns
b0e4f32 mkvparser/Cues: convert asserts to failure returns
13ccc7f mkvparser/UnserializeInt: fix sign flip
db3f9bb mkvparser/SeekHead: convert asserts to failure returns
8de3654 mkvparser/Segment: convert asserts to failure returns
fa2aa7d SeekHead::Parse(): fix assertion failure
d9bdade sample{,_muxer}: check SegmentInfo::GetInfo() return
07a9cf7 Merge "mkvparser: Remove some asserts."
c56ee29 mkvparser: Remove some asserts.
d901324 Merge "mkvparser: Remove some asserts from SegmentInfo::Parse."
7f7d898 Fix case sensitivity issue in iosbuild.sh.
42fe2cd mkvparser: Remove some asserts from SegmentInfo::Parse.
8bccd9c Merge "mkvparser: avoid rollover in UnserializeInt()."
7a2fa0d mkvparser: avoid rollover in UnserializeInt().
44f5ce6 mkvparser: Disallow durations in seconds greater than LONG_LONG_MAX.
b521e30 Merge "mkvparser: Segment::ParseHeaders() avoid rollover and bad int sizes."
7680e2a mkvparser: Check for errors in Match().
39a315f mkvparser: Segment::ParseHeaders() avoid rollover and bad int sizes.
f250ace mkvparser: Handle invalid lengths and rollover in ParseElementHeader().
cd96a76 mkvparser: Avoid rollover/truncation in UnserializeString().
8e8b3db Merge "mkvparser: Add error checking in Block::Parse."
82b7e5f sample: correct mbstowcs() error check
04d7809 sample: check allocation return
986b64b mkvparser: Add error checking in Block::Parse.

Change-Id: I39beef84962d6341f8ce53be06807b3e2068f777

8 years agoTake out skip_encode speed feature in vp10
Jingning Han [Thu, 10 Sep 2015 19:42:21 +0000 (12:42 -0700)]
Take out skip_encode speed feature in vp10

Change-Id: Ic39d4523e78863c816b0fc85f56ea5ae5e0b3310

8 years agoRemove speed features in vp10
Jingning Han [Thu, 10 Sep 2015 19:24:06 +0000 (12:24 -0700)]
Remove speed features in vp10

Take out speed features that affect the compression performance
to simplify the coding route. This commit removes the motion field
mode search used in speed 3.

Change-Id: Ifdf6862cb1ece8261125a56d9d89bcef60758c00

8 years agowebmdec: Handle codec id being NULL.
Vignesh Venkatasubramanian [Thu, 10 Sep 2015 17:44:59 +0000 (10:44 -0700)]
webmdec: Handle codec id being NULL.

WebM files could have CodecId missing in the track headers. Treat those files as
unknown input file type in vpxdec.

Fixes issue #1064.

Change-Id: I6c3bb7b4bd3a4f5c244312482a5996f8b68db3f3

8 years agoMerge "vp8: Small adjustment to cyclic_refresh max_mbs_perframe."
Marco Paniconi [Thu, 10 Sep 2015 15:47:49 +0000 (15:47 +0000)]
Merge "vp8: Small adjustment to cyclic_refresh max_mbs_perframe."

8 years agovp9_encoder_parms_get_to_decoder: cosmetics
James Zern [Thu, 10 Sep 2015 06:43:12 +0000 (23:43 -0700)]
vp9_encoder_parms_get_to_decoder: cosmetics

fix indent, */& association, join a few lines

Change-Id: Idaca24b87b574788f9508168082d0ade3d4e9ecc

8 years agovp9...parms_get_to_decoder: remove unneeded func
James Zern [Thu, 10 Sep 2015 06:38:53 +0000 (23:38 -0700)]
vp9...parms_get_to_decoder: remove unneeded func

removes a redundant cast in the process

Change-Id: Ie3727a0938c0093f70f25a875c2c58671938d45c

8 years agovp9...parms_get_to_decoder: fix EXPECT param order
James Zern [Thu, 10 Sep 2015 06:27:35 +0000 (23:27 -0700)]
vp9...parms_get_to_decoder: fix EXPECT param order

(expected, actual)

Change-Id: I449e7b6c51aa85cdde008d2fad5a9629970222a9

8 years agovp9_encoder_parms_get_to_decoder: delete dead code
James Zern [Thu, 10 Sep 2015 06:19:39 +0000 (23:19 -0700)]
vp9_encoder_parms_get_to_decoder: delete dead code

the only input is y4m, there's no need to test for yuv.

Change-Id: Ie5b55ea4af44ad79a55304ef5636a8ad7ed30bb8

8 years agofix BitstreamParms test
James Zern [Thu, 10 Sep 2015 06:10:58 +0000 (23:10 -0700)]
fix BitstreamParms test

avoid duplicating internal structures and include vp9_dx_iface.c
directly. these had fallen out of sync after the frame-parallel branch
merge.

Change-Id: I604cfbffa95abe2a1c8e906a696f32436b1422ed

8 years agovp9_encoder_parms_get_to_decoder: remove vp10
James Zern [Thu, 10 Sep 2015 05:54:24 +0000 (22:54 -0700)]
vp9_encoder_parms_get_to_decoder: remove vp10

this file needs to be reworked to remove the duplication of codec
internals + allow for divergence of vp9 and vp10

Change-Id: I6266b94ccfbc24dae30148f134804b52aa411b88

8 years agoyuvconfig2image(): add explicit cast to avoid conv warning
James Zern [Thu, 10 Sep 2015 07:19:18 +0000 (00:19 -0700)]
yuvconfig2image(): add explicit cast to avoid conv warning

prevents an int -> vpx_img_fmt_t conversion warning with high-bitdepth
as it modifies the image format

Change-Id: Ie3135d031565312613a036a1e6937abb59760a7e

8 years agovp9/10 decoder_init: add missing alloc cast
James Zern [Thu, 10 Sep 2015 05:53:28 +0000 (22:53 -0700)]
vp9/10 decoder_init: add missing alloc cast

Change-Id: I1ba4400d67095f3a360fb7d97ee8d118d4f741fe

8 years agovp9/10: set color_space on preview frame
James Zern [Thu, 10 Sep 2015 05:45:53 +0000 (22:45 -0700)]
vp9/10: set color_space on preview frame

Change-Id: If9176ce6ed3eb6c7ef8ffd1378456cb95b4aeb86

8 years agovp10: add extern "C" to headers
James Zern [Thu, 10 Sep 2015 04:05:42 +0000 (21:05 -0700)]
vp10: add extern "C" to headers

Change-Id: Ie2e8b37fa01ce8d6b993684f431f3159d511cfb1

8 years agovp9: add extern "C" to headers
James Zern [Thu, 10 Sep 2015 04:04:27 +0000 (21:04 -0700)]
vp9: add extern "C" to headers

Change-Id: I1b6927ad820f99340985b094d415aaab14defaf4

8 years agoMerge "Fix ioc warnings related to sub8x8 reference frame"
James Zern [Thu, 10 Sep 2015 06:10:44 +0000 (06:10 +0000)]
Merge "Fix ioc warnings related to sub8x8 reference frame"

8 years agoMerge "Revert "Fix building with iOS 9 beta SDK""
Tom Finegan [Thu, 10 Sep 2015 01:36:29 +0000 (01:36 +0000)]
Merge "Revert "Fix building with iOS 9 beta SDK""

8 years agoFix ioc warnings related to sub8x8 reference frame
Jingning Han [Wed, 9 Sep 2015 19:29:57 +0000 (12:29 -0700)]
Fix ioc warnings related to sub8x8 reference frame

Access scaled reference frame in the sub8x8 rate-distortion
optimization loop only when the current test mode is an inter mode.
This prevents an ioc warning triggered by sending intra_frame index
to fetch scaled reference frame.

Change-Id: I6177ecc946651dd86c7ce362e3f65c4074444604

8 years agoChange the qp threshold of VP9 dynamic resizing.
jackychen [Wed, 9 Sep 2015 22:30:01 +0000 (15:30 -0700)]
Change the qp threshold of VP9 dynamic resizing.

Change-Id: I1efe086191665ff8fa063f03d8e2032024dc090f

8 years agovp8: Small adjustment to cyclic_refresh max_mbs_perframe.
Marco [Wed, 9 Sep 2015 21:51:14 +0000 (14:51 -0700)]
vp8: Small adjustment to cyclic_refresh max_mbs_perframe.

For 3 temporal layers, reduce somewhat the
cyclic_refresh_mode_max_mbs_perframe parameter, from 20% to ~14%.
Small increase in PSNR/SSIM metrics.

Change-Id: Ia216fa5474048f1ef7fe3db88cd60dfef2a1bf8a

8 years agoMerge "SVC sample encoder: Change some settings/update."
Marco Paniconi [Wed, 9 Sep 2015 18:05:31 +0000 (18:05 +0000)]
Merge "SVC sample encoder: Change some settings/update."

8 years agoSVC sample encoder: Change some settings/update.
Marco [Wed, 9 Sep 2015 00:05:31 +0000 (17:05 -0700)]
SVC sample encoder: Change some settings/update.

Change settings for 1 pass CBR.
And only use SET_SVC control(s) if there is at least 1 layer (spatial or temporal).
This allows sample encoder to also work for 1 layer case.

Change-Id: I5b0a33c25afb2f24a3a8aa4ec8ade9afc87cd702

8 years agoRevert "Fix building with iOS 9 beta SDK"
Tom Finegan [Wed, 9 Sep 2015 12:25:55 +0000 (05:25 -0700)]
Revert "Fix building with iOS 9 beta SDK"

This reverts commit 78637b61361ab11425afd4a67d43c4df948647a6.

Breaks armv7-darwin targets with current SDK (iOS 8/Xcode 6.4).

BUG=https://code.google.com/p/webm/issues/detail?id=1062

Change-Id: I58b27950f330557154d681a894114eadfbd3e593

8 years agoEnable sub8x8 inter mode with scaled ref frame in RD optimization
Jingning Han [Tue, 8 Sep 2015 16:53:23 +0000 (09:53 -0700)]
Enable sub8x8 inter mode with scaled ref frame in RD optimization

This commit allows the encoder to include sub8x8 inter mode with
scaled reference frame in the rate-distortion optimization scheme.

Change-Id: Ibbe9678801592826ef22566566dcdeeb008350d5

8 years agoMerge "Fix the sub8x8 block inter prediction with scaled reference frame"
Jingning Han [Wed, 9 Sep 2015 00:28:42 +0000 (00:28 +0000)]
Merge "Fix the sub8x8 block inter prediction with scaled reference frame"

8 years agoMerge "Remove some trailing whitespaces"
Debargha Mukherjee [Wed, 9 Sep 2015 00:26:36 +0000 (00:26 +0000)]
Merge "Remove some trailing whitespaces"

8 years agoMove cyclic_refresh struct into .h file.
Marco [Tue, 8 Sep 2015 18:45:15 +0000 (11:45 -0700)]
Move cyclic_refresh struct into .h file.

Change-Id: I9327cd52d0ec050887ba7e591b094d74bd36bce8

8 years agoFix the sub8x8 block inter prediction with scaled reference frame
Jingning Han [Sun, 6 Sep 2015 01:28:16 +0000 (18:28 -0700)]
Fix the sub8x8 block inter prediction with scaled reference frame

Sync the encoder's buffer offset calculation for sub8x8 block motion
compensated prediction with scaled reference frame to match the
decoder's behavior. This resolves an enc/dec mismatch issue when
sub8x8 inter mode with scaled is turned on.

Change-Id: I4bab3672b007a5ae0c992f8a701341892d2458b0

8 years agoAdd misc_fixes experiment.
Ronald S. Bultje [Tue, 8 Sep 2015 18:03:36 +0000 (14:03 -0400)]
Add misc_fixes experiment.

Will be used to hold various trivial bitstream fixes.

Change-Id: Ic8ba07a2ae392db7c956ebae124913afe2ae4409

8 years agoDon't reset sign_bias fields in vp10_setup_past_independence().
Ronald S. Bultje [Thu, 3 Sep 2015 20:21:56 +0000 (16:21 -0400)]
Don't reset sign_bias fields in vp10_setup_past_independence().

The fields are always coded in the frame itself, so there is never any
dependency on past frames. In practice, this fixes sign_bias being
ignored when error_resilient_mode=1.

See issue 1011.

Change-Id: I9d134ef6b445ced4d100fa735ce579855a0fa5af

8 years agoRemove some trailing whitespaces
Debargha Mukherjee [Sat, 5 Sep 2015 00:31:51 +0000 (17:31 -0700)]
Remove some trailing whitespaces

Change-Id: Icf06d35ca347713253d1eba341a894b51efa81a9

8 years agoMerge "Make update_map/temporal_update fields implicit for keyframes."
Ronald S. Bultje [Fri, 4 Sep 2015 23:53:24 +0000 (23:53 +0000)]
Merge "Make update_map/temporal_update fields implicit for keyframes."

8 years agoMerge "VPX: subpixel_8t_ssse3 asm using x86inc"
James Zern [Fri, 4 Sep 2015 05:30:57 +0000 (05:30 +0000)]
Merge "VPX: subpixel_8t_ssse3 asm using x86inc"

8 years agoVPX: subpixel_8t_ssse3 asm using x86inc
Scott LaVarnway [Wed, 2 Sep 2015 20:15:52 +0000 (13:15 -0700)]
VPX: subpixel_8t_ssse3 asm using x86inc

This is based on the original patch optimized for 32bit
platforms by Tamar/Ilya and now uses the x86inc style asm.
The assembly was also modified to support 64bit platforms.

Change-Id: Ice12f249bbbc162a7427e3d23fbf0cbe4135aff2

8 years agoMake update_map/temporal_update fields implicit for keyframes.
Ronald S. Bultje [Thu, 3 Sep 2015 20:08:29 +0000 (16:08 -0400)]
Make update_map/temporal_update fields implicit for keyframes.

These frame types cannot make bitstream parsing depend on previous
frames, so the hypothetical combinations of e.g. keyframe=1 and
update_map=0 or keyframe=1 and temporal_update=1 are non-sensical.
Therefore, make it impossible to code such combinations in the vp10
bitstream header.

See issue 1044.

Change-Id: I3f0a83d5c7e3989541a469a909471424a285239d

8 years agoMerge "Fix to dynamic resize mode under change_config()."
Adrian Grange [Thu, 3 Sep 2015 21:44:45 +0000 (21:44 +0000)]
Merge "Fix to dynamic resize mode under change_config()."

8 years agoFix to dynamic resize mode under change_config().
Marco [Thu, 3 Sep 2015 19:55:51 +0000 (12:55 -0700)]
Fix to dynamic resize mode under change_config().

If the encoder dynamic resize is triggered and change config()
is then called, it will reset the current (resized) codec width/height
back to the the config (unresized) width/height (which will then
prevent the resizing action from occurring in encoder_loop).

Avoid this by checking for a change in the config width/height
before resetting the cm->width/height.

Change-Id: Id9d50c0ee8a943abe4b6c72bbaa02d9696f93177

8 years agoUnify coding order of MC filters between blocks and frame header.
Ronald S. Bultje [Thu, 3 Sep 2015 16:08:03 +0000 (12:08 -0400)]
Unify coding order of MC filters between blocks and frame header.

In VP9, the order for frame header was: [0] smooth, [1] regular, [2]
sharp, [3] bilinear. Per-block, the order was [0] regular, [1] smooth
and [2] sharp. For VP10, swap smooth/regular in the frame header so
that the block ordering and frame header ordering are interchangeable.

See issue #1046.

Change-Id: Ic9ec5964874375e40cd59bef50b489a76cbe4365

8 years agotest/*.h: use inline rather than INLINE
James Zern [Thu, 3 Sep 2015 01:00:21 +0000 (18:00 -0700)]
test/*.h: use inline rather than INLINE

inline is always available in c++

Change-Id: Ie8e4fc4df75309b649d7ef36bb5aadd95554035f

8 years agoMerge "Revert "add range_check for fdct in vp10""
James Zern [Thu, 3 Sep 2015 01:25:44 +0000 (01:25 +0000)]
Merge "Revert "add range_check for fdct in vp10""

8 years agoRevert "add range_check for fdct in vp10"
James Zern [Thu, 3 Sep 2015 00:23:16 +0000 (00:23 +0000)]
Revert "add range_check for fdct in vp10"

Tests fail to build.

This reverts commit f78d6aa77245cea5cd7f630a20f4e6d576679e7f.

Change-Id: Ia220270517ded273c65a7ab965d82edb696663c9

8 years agoMerge "add range_check for fdct in vp10"
Angie Chiang [Wed, 2 Sep 2015 22:27:47 +0000 (22:27 +0000)]
Merge "add range_check for fdct in vp10"

8 years agoadd range_check for fdct in vp10
Angie Chiang [Sat, 29 Aug 2015 03:39:10 +0000 (20:39 -0700)]
add range_check for fdct in vp10

Unify the style of fdct4() fdct8() fdct16()
Add fdct32()
Add range_check() at each stage
Add unit test at ../../test/vp10_dct_test.cc

Change-Id: I9e912b2c5683862e65c5a21abc3e1c260cca4576

8 years agoMerge changes If253fb95,I1c8a792c,I49f9b10f,I15472738,I1e7f3c32
Johann Koenig [Wed, 2 Sep 2015 19:21:46 +0000 (19:21 +0000)]
Merge changes If253fb95,I1c8a792c,I49f9b10f,I15472738,I1e7f3c32

* changes:
  test: limit the valid image size on OS/2
  configure: add -Zhigh-mem to LDFLAGS on OS/2
  configure: disable PIC on OS/2
  Makefile: add $(STACKREALIGN) to CFLAGS for vp9_reconintra.c
  x86inc.asm: fix NASM compilation

8 years agotest: limit the valid image size on OS/2
KO Myung-Hun [Sun, 30 Aug 2015 07:28:41 +0000 (16:28 +0900)]
test: limit the valid image size on OS/2

Without this, test_libvpx crashes at VP9FrameSizeTestsLarge.ValidSizes
on OS/2.

Change-Id: If253fb95a04216babed56458f0fab8c70523fc7e

8 years agoconfigure: add -Zhigh-mem to LDFLAGS on OS/2
KO Myung-Hun [Sun, 30 Aug 2015 07:27:58 +0000 (16:27 +0900)]
configure: add -Zhigh-mem to LDFLAGS on OS/2

-Zhigh-mem enables to allocate very large memory on OS/2.

Change-Id: I1c8a792cc792c65ce9539a6d3d6b77fc4767848a

8 years agoconfigure: disable PIC on OS/2
KO Myung-Hun [Sun, 30 Aug 2015 06:17:40 +0000 (15:17 +0900)]
configure: disable PIC on OS/2

Change-Id: I49f9b10faa059decf18e123a1f88738071b9c2b8

8 years agoMakefile: add $(STACKREALIGN) to CFLAGS for vp9_reconintra.c
KO Myung-Hun [Sun, 30 Aug 2015 03:33:05 +0000 (12:33 +0900)]
Makefile: add $(STACKREALIGN) to CFLAGS for vp9_reconintra.c

Without this, test_libvpx crashes at
VP9MultiThreadedFrameParallel.PauseSeekResume on OS/2.

Change-Id: I15472738f4166d97cb49868652982d351a291c11