jackychen
ca8f8fd304
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
2015-09-15 18:03:26 -07:00
Angie Chiang
8c1dce86e8
Merge "fix implicit declaration"
2015-09-16 00:20:43 +00:00
James Zern
c667593e1e
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
2015-09-15 23:14:34 +00:00
Marco Paniconi
9c82fc457e
Merge "VP9 dynamic resizing unit test."
2015-09-15 22:26:03 +00:00
Marco Paniconi
f6097ef243
Merge "SVC fix to set worst/best_quality per layer."
2015-09-15 22:06:13 +00:00
jackychen
9ac42bc15c
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
2015-09-15 14:36:55 -07:00
Marco
15c43d9ac7
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
2015-09-15 14:16:07 -07:00
Marco
eb53c69ece
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
2015-09-15 10:06:36 -07:00
Debargha Mukherjee
0e1b4fb941
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
2015-09-15 06:11:24 -07:00
Yaowu Xu
e723e36da6
Merge "Remove leftover of "frame_parallel_decoding""
2015-09-15 02:24:36 +00:00
Yaowu Xu
ee825f9372
Remove leftover of "frame_parallel_decoding"
...
The variable has been removed by a previous commit, but missed this
instance.
Change-Id: Ia34474b0be4945cc6cb9191f0d7cd24a99a4c22e
2015-09-14 18:10:08 -07:00
jackychen
419456617e
Change parameters for VP9 dynamic resizing.
...
Use a smaller window in dynamic resizing and wait a shorter
time after key frame.
Change-Id: I086f840cdec3c6bdaa9acfe11346d919e445973d
2015-09-14 16:17:52 -07:00
Alex Converse
0b762e0c0c
Merge "CR: Don't attempt to read qindex_delta for segments CR is unaware of."
2015-09-14 22:59:24 +00:00
Alex Converse
575e81f7c9
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
2015-09-14 13:55:30 -07:00
Marco Paniconi
bb581f4e83
Merge "For 1 pass: always use the normative filter in vp9_scale_if_required()"
2015-09-14 20:36:34 +00:00
Ronald S. Bultje
1e9e9ce2dc
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
2015-09-14 16:13:59 -04:00
Marco
4d1424faf9
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
2015-09-14 13:13:32 -07:00
Ronald S. Bultje
48f0168e95
Merge "vp10: merge frame_parallel_decoding_mode and refresh_frame_context."
2015-09-14 18:24:24 +00:00
James Zern
12355c4c4c
configure: add --extra-cxxflags option
...
same usage as --extra-cflags
Change-Id: Iff2ed7b8ebb6e51610ee0851aeec08413367ab23
2015-09-12 10:25:28 -07:00
Angie Chiang
fe776ce61f
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
2015-09-12 03:26:09 +00:00
James Zern
9759c3d542
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
2015-09-11 19:02:24 -07:00
Ronald S. Bultje
d1474f02aa
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
2015-09-11 19:33:46 -04:00
Ronald S. Bultje
c92c50f2fe
vpxdec: remove implied --output-bit-depth=8 for --yv12.
...
Change-Id: I28c939db49334572476aa2b428ec93111d4e869d
2015-09-11 19:33:45 -04:00
Ronald S. Bultje
ef73bbf778
vp10: remove duplicate frame_parallel_decode field.
...
Keep the one in VP10_COMMON in favour of the one in VP10_DECODER.
Change-Id: Ia81983ccc95d83829dc815e28d9b1143e16e27b1
2015-09-11 18:37:24 -04:00
Ronald S. Bultje
eba342af87
Don't convert bitdepth for !single-file or MD5.
...
... unless --output-bit-depth was set.
Change-Id: I3482eaf12e245eec24427518fccdd173f890f4b4
2015-09-11 18:37:24 -04:00
Ronald S. Bultje
812fbc5ecb
Merge "Make reset_frame_context an enum."
2015-09-11 22:36:49 +00:00
Marco Paniconi
cd9ae6d758
Merge "Avoid scaling last_source, unless needed."
2015-09-11 21:39:06 +00:00
Angie Chiang
894ab8be7e
fix implicit declaration
...
include vpx_dsp_rtcd.h to avoid implicit declaration of
vp10_highbd_fdct32x32_rd_c
Change-Id: I0b9ad50381a302750138deab14d2d5ac31f286ee
2015-09-11 12:17:15 -07:00
Ronald S. Bultje
62da0bf162
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
2015-09-11 15:12:02 -04:00
Marco
e8a4a3e2b1
Avoid scaling last_source, unless needed.
...
Save some encoding time, for the case of spatial layers
or under dynamic resizing mode.
Change-Id: If4a8eb6f0376c3d2dde8465fde6bfd86ab704920
2015-09-11 11:53:25 -07:00
James Zern
f79f71fc22
Merge "Fix vp10 high bit-depth build"
2015-09-11 18:27:49 +00:00
Jingning Han
481b834842
Fix vp10 high bit-depth build
...
Change-Id: Ie3daed0b282b43ef81d2f8797ac1f6e8bde7d65e
2015-09-11 08:56:29 -07:00
Marco
6ddbc845cc
Remove unneeded/incorrect comment.
...
Change-Id: I5c923223c284ad4fda0c45572a66bebc8528dd1d
2015-09-11 08:49:13 -07:00
James Zern
d318d7cb6f
Merge "build: modify default ARFLAGS / .a target"
2015-09-11 02:30:07 +00:00
Ronald S. Bultje
ad747e94d0
Merge "Add misc_fixes experiment."
2015-09-11 02:00:45 +00:00
Ronald S. Bultje
3ef3dcb8b6
Merge "Don't reset sign_bias fields in vp10_setup_past_independence()."
2015-09-11 02:00:30 +00:00
Angie Chiang
501efcad4a
Merge "Isolate vp10's fwd_txfm from vp9"
2015-09-11 00:10:45 +00:00
Alex Converse
3c092e2474
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.
2015-09-10 23:04:46 +00:00
Jingning Han
b50e0badbc
Merge "Take out reference_masking speed feature"
2015-09-10 23:03:06 +00:00
Jingning Han
b999f1509c
Merge "Take out skip_encode speed feature in vp10"
2015-09-10 23:02:38 +00:00
Jingning Han
7f71d1e00a
Merge "Remove speed features in vp10"
2015-09-10 23:02:27 +00:00
Angie Chiang
b0bfea4f5f
Merge "Isolate vp10's inv_txfm from vp9"
2015-09-10 22:51:02 +00:00
Angie Chiang
ee5b80597e
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
2015-09-10 15:19:43 -07:00
Angie Chiang
87175ed592
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
2015-09-10 15:08:37 -07:00
Alex Converse
3d6b8a667f
Prevent CR in screen mode from refreshing flat inter blocks forever.
...
Take the minimum last_codec_q_map on inter skip.
Change-Id: Ibb308526dd19793bb359f51ebd7b48d8692903fd
2015-09-10 15:03:13 -07:00
Alex Converse
d5c0e366d7
For screen content consider intra uv when color_sensitivity is set.
...
Change-Id: I99e330f8a779b4d564c19ef4639a881cb68910ae
2015-09-10 15:03:09 -07:00
Jingning Han
1eb760e55d
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
2015-09-10 12:57:48 -07:00
James Zern
1b3d775366
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
2015-09-10 12:54:01 -07:00
Vignesh Venkatasubramanian
dd5510750a
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
2015-09-10 12:47:21 -07:00
Jingning Han
f137697c32
Take out skip_encode speed feature in vp10
...
Change-Id: Ic39d4523e78863c816b0fc85f56ea5ae5e0b3310
2015-09-10 12:45:39 -07:00