]> granicus.if.org Git - libvpx/log
libvpx
8 years agoAdd temporal-layer support to tiny_ssim.
Peter Boström [Fri, 28 Oct 2016 18:50:20 +0000 (14:50 -0400)]
Add temporal-layer support to tiny_ssim.

Permits skipping 0, 1/2 or 3/4 of the frames, corresponding to
temporal layers 2, 1 and 0 of a 3-temporal-layer encoding. 1/2
corresponds to TL0 in a 2-layer encoding.

Change-Id: I7f6d131f63707e5262fc67d111bfb3a751ede90d

8 years agoMerge "vp9: Updates to SVC sample encoder."
Marco Paniconi [Fri, 28 Oct 2016 18:32:40 +0000 (18:32 +0000)]
Merge "vp9: Updates to SVC sample encoder."

8 years agovp9: Updates to SVC sample encoder.
Marco [Thu, 27 Oct 2016 22:38:02 +0000 (15:38 -0700)]
vp9: Updates to SVC sample encoder.

Allow for passing in the layer bitrates at command line.
Fix to allow passing in bitrate for each spatial-temporal layer.

Change to some default values for 1 pass cbr mode:
spatial scale and qp-max/min.

Small fixes to some build warnings.

Change-Id: I3f9a776262712480a6570bb863a835b2fc49935a

8 years agoMerge "Add tools/tiny_ssim for generating SSIM/PSNR."
Yaowu Xu [Fri, 28 Oct 2016 17:21:47 +0000 (17:21 +0000)]
Merge "Add tools/tiny_ssim for generating SSIM/PSNR."

8 years agoAdd tools/tiny_ssim for generating SSIM/PSNR.
Peter Boström [Thu, 27 Oct 2016 23:07:44 +0000 (19:07 -0400)]
Add tools/tiny_ssim for generating SSIM/PSNR.

Change-Id: Icc3e5aaa6636ffe17dc9da5f7a80afaccbde509a

8 years agoMerge "Refine 8-bit intra prediction NEON optimization (mode d45 and d135)"
Linfeng Zhang [Fri, 28 Oct 2016 15:57:55 +0000 (15:57 +0000)]
Merge "Refine 8-bit intra prediction NEON optimization (mode d45 and d135)"

8 years agoMerge "Force recode if framesize exceeds max allowed size"
Debargha Mukherjee [Fri, 28 Oct 2016 04:21:43 +0000 (04:21 +0000)]
Merge "Force recode if framesize exceeds max allowed size"

8 years agoRefine 8-bit intra prediction NEON optimization (mode d45 and d135)
Linfeng Zhang [Fri, 21 Oct 2016 17:44:22 +0000 (10:44 -0700)]
Refine 8-bit intra prediction NEON optimization (mode d45 and d135)

dst += stride behaving better with gcc/clang.
Unroll loops.

Change-Id: I83f85df2bc9f17c6159542f57680b509395db2b1

8 years agoForce recode if framesize exceeds max allowed size
Debargha Mukherjee [Thu, 27 Oct 2016 05:40:59 +0000 (22:40 -0700)]
Force recode if framesize exceeds max allowed size

Fixes a case where recode is not triggered based on the value
of maxq passed into the recode loop test function.

BUG=b/32375284

Change-Id: I15ad985d0525c68e0443cfaf842440d2754b2266

8 years agoMerge "partial_idct_test: consolidate block size"
Johann Koenig [Thu, 27 Oct 2016 15:41:43 +0000 (15:41 +0000)]
Merge "partial_idct_test: consolidate block size"

8 years agoMerge "Changes to KF boost calculation."
Paul Wilkins [Thu, 27 Oct 2016 10:21:23 +0000 (10:21 +0000)]
Merge "Changes to KF boost calculation."

8 years agoMerge "Removal of a couple of two pass adjustments."
Paul Wilkins [Thu, 27 Oct 2016 10:21:05 +0000 (10:21 +0000)]
Merge "Removal of a couple of two pass adjustments."

8 years agopartial_idct_test: consolidate block size
Johann [Thu, 27 Oct 2016 04:19:36 +0000 (21:19 -0700)]
partial_idct_test: consolidate block size

Use *input_block_ for sizeof() calculation like the other test

Change-Id: I1e4bd227131662056405af78c5052ad6ef769e9f

8 years agoRefactor partial idct test
Johann [Fri, 21 Oct 2016 22:09:53 +0000 (15:09 -0700)]
Refactor partial idct test

Switch to using correctly sized inputs and outputs. This simplifies
adding tests with varying strides.

Change-Id: I716a0d8173dcf6a86d56656ac9d3101b7ec27642

8 years agoChanges to KF boost calculation.
Paul Wilkins [Wed, 12 Oct 2016 18:49:19 +0000 (19:49 +0100)]
Changes to KF boost calculation.

Remove double counting of decay. Limit maximum KF boost.

Change-Id: I0fb2344d0f78b5e95bb899dfad12b0ca84034b2c

8 years agoRemoval of a couple of two pass adjustments.
paulwilkins [Fri, 30 Sep 2016 13:51:39 +0000 (14:51 +0100)]
Removal of a couple of two pass adjustments.

Removed a couple of adjustments that no longer move the needle
much but complicate the process of tuning.

Change-Id: Ie320f5cf155e6aac14a4757ea9ada2cd59f27590

8 years agoMerge "Refine 8-bit intra prediction NEON optimization (mode dc)"
Linfeng Zhang [Wed, 26 Oct 2016 16:51:44 +0000 (16:51 +0000)]
Merge "Refine 8-bit intra prediction NEON optimization (mode dc)"

8 years agoOptimize idct32x32_34_add for NEON
Johann [Wed, 12 Oct 2016 22:27:47 +0000 (15:27 -0700)]
Optimize idct32x32_34_add for NEON

Approximately 3 times faster than the 1024 version which was used
previously.

BUG=webm:1295

Change-Id: Id15fb3d096029ec38ef01c53e5f6eb08254347c9

8 years agoMerge "Update vp9_intrapred_test.cc to support 8-bit"
James Zern [Tue, 25 Oct 2016 21:59:29 +0000 (21:59 +0000)]
Merge "Update vp9_intrapred_test.cc to support 8-bit"

8 years agoMerge "Modify the encoder multi-thread unit test"
Yunqing Wang [Tue, 25 Oct 2016 20:54:25 +0000 (20:54 +0000)]
Merge "Modify the encoder multi-thread unit test"

8 years agoModify the encoder multi-thread unit test
Yunqing Wang [Tue, 25 Oct 2016 17:47:21 +0000 (10:47 -0700)]
Modify the encoder multi-thread unit test

Modified the encoder multi-thread test so that it included cpu-used=0 and
frame-parallel=0.

frame_parallel_decoding_mode is 1 by default, which disables probability
updating and gives lower encoding quality. Current VP9 multi-threading
encoder and decoder support probability updating. To test this part, we
should turn on it in the unit test, namely, setting frame-parallel to 0.

Change-Id: Ia1f86e01f0de628f50d819ae31509de3e1b6c755

8 years agoMerge "vpxdec: return fail if frame fails to decode."
James Bankoski [Tue, 25 Oct 2016 18:34:06 +0000 (18:34 +0000)]
Merge "vpxdec: return fail if frame fails to decode."

8 years agoChange 2 motion search counts to be tile data
Yunqing Wang [Tue, 25 Oct 2016 16:00:58 +0000 (09:00 -0700)]
Change 2 motion search counts to be tile data

This patch modified the motion search counts used in:
https://chromium-review.googlesource.com/#/c/305640/

These 2 counts were originally added as thread data, and used to
make decisions in motion search. The tile encoding order can be
inconsistent while using different number of threads, which can
cause bitstream mismatch. Here moved them to tile data to solve
the issue.

BUG=webm:1322

Change-Id: Iedc4477aef1746aa0a4f84d88a1156296fd3ba87

8 years agoRefine 8-bit intra prediction NEON optimization (mode dc)
Linfeng Zhang [Wed, 19 Oct 2016 20:37:26 +0000 (13:37 -0700)]
Refine 8-bit intra prediction NEON optimization (mode dc)

dst += stride behaving better with gcc/clang
Expanding inline function dc_SIZExSIZE() save intructions for
vpx_dc_predictor_SIZExSIZE_neon().

Change-Id: Id0ccbd58b6a31df539141fd33bdf28633339150d

8 years agoUpdate vp9_intrapred_test.cc to support 8-bit
Linfeng Zhang [Wed, 19 Oct 2016 19:58:05 +0000 (12:58 -0700)]
Update vp9_intrapred_test.cc to support 8-bit

BUG=webm:1316

Change-Id: Ic9309bbeeef52e9d07fb4a4c95c12efa813cbf8c

8 years agovpxdec: return fail if frame fails to decode.
Jim Bankoski [Mon, 24 Oct 2016 19:05:59 +0000 (12:05 -0700)]
vpxdec: return fail if frame fails to decode.

A failure to decode is most likely equivalent to a corrupt
frame for the purpose of returning a failure.

Change-Id: Ie53db2b8130b40b725841f5f7a299d63aa56913d

8 years agoMerge "remove idct32x32*_add_neon.asm"
James Zern [Sat, 22 Oct 2016 02:29:55 +0000 (02:29 +0000)]
Merge "remove idct32x32*_add_neon.asm"

8 years agoMerge "vpx_highbd_convolve_copy_neon: use multi reg loads"
James Zern [Sat, 22 Oct 2016 02:28:15 +0000 (02:28 +0000)]
Merge "vpx_highbd_convolve_copy_neon: use multi reg loads"

8 years agoMerge "vp9_bitstream: Encode tiles in parallel"
Vignesh Venkatasubramanian [Sat, 22 Oct 2016 02:23:05 +0000 (02:23 +0000)]
Merge "vp9_bitstream: Encode tiles in parallel"

8 years agovp9_bitstream: Encode tiles in parallel
Vignesh Venkatasubramanian [Wed, 19 Oct 2016 18:07:41 +0000 (11:07 -0700)]
vp9_bitstream: Encode tiles in parallel

Re-use the tile worker threads to pack the bitstream in parallel
on a per-tile basis.  Restricting this to real-time only for now
(further testing is needed to ensure this does not make 2-pass
worse in any case).

BUG=webm:1309

Change-Id: I8a80da7c5089b837d0df79a5c49d5e3022dfc8ec

8 years agovp9: Nonrd variance partition: increase threshold for using 4x4 avg.
Marco [Fri, 21 Oct 2016 18:11:34 +0000 (11:11 -0700)]
vp9: Nonrd variance partition: increase threshold for using 4x4 avg.

In variance partition low resolutions may use varianace based on
4x4 average for better partitioning.
Increase the threshold for doing this at speed = 8.

Improves speed by ~5%, with little loss, < 1%, on RTC_derf set.

Change-Id: Ib5ec420832ccff887a06cb5e1d2c73199b093941

8 years agoremove idct32x32*_add_neon.asm
James Zern [Thu, 20 Oct 2016 04:04:12 +0000 (21:04 -0700)]
remove idct32x32*_add_neon.asm

the intrinsics are neutral to ~20% faster on cros/android
devices when using gcc-4.9/clang-3.8.1 and gcc-4.9/clang-3.8.x from the
r13 ndk. neutral results typically came with gcc-4.9 while larger
positive gains were achieved with clang 3.8.x.

BUG=webm:1303

Change-Id: I4d31f9c017944681b881493525d4573a7a5b1e16

8 years agovp9: Speed=8 real-time: Keep the bias_golden feature on.
Marco [Fri, 21 Oct 2016 00:02:16 +0000 (17:02 -0700)]
vp9: Speed=8 real-time: Keep the bias_golden feature on.

Small/no change in metrics on RTC set, speed increase by 2-3%.

Change-Id: Iee997bd7433e8e508216e9267b1c31c5a9aa5121

8 years agoMerge "vp8: Apply gf target-size boost only when refresh_golden_frame = 1."
Marco Paniconi [Thu, 20 Oct 2016 22:38:55 +0000 (22:38 +0000)]
Merge "vp8: Apply gf target-size boost only when refresh_golden_frame = 1."

8 years agoAdd vp9cx_set_ref to .gitignore
Vignesh Venkatasubramanian [Thu, 20 Oct 2016 19:07:30 +0000 (12:07 -0700)]
Add vp9cx_set_ref to .gitignore

Get rid of the 'git status' clutter when building with examples.

Change-Id: I20b715ddfc6c8ccb4993de7ebb2b4ad6df9ea437

8 years agovp8: Apply gf target-size boost only when refresh_golden_frame = 1.
Marco [Thu, 20 Oct 2016 18:28:48 +0000 (11:28 -0700)]
vp8: Apply gf target-size boost only when refresh_golden_frame = 1.

Change only affects 1 pass cbr, error resilience off.

Change-Id: I68b896b09d722995a71c44331233e97bd862bcfc

8 years agoMerge "third_party: roll libwebm snapshot"
James Zern [Wed, 19 Oct 2016 22:34:25 +0000 (22:34 +0000)]
Merge "third_party: roll libwebm snapshot"

8 years agovp8: Adjust threshold to set the gf_noboost flag.
Marco [Wed, 19 Oct 2016 19:54:32 +0000 (12:54 -0700)]
vp8: Adjust threshold to set the gf_noboost flag.

Change only affects 1 pass cbr, with error_resilient off.

Change-Id: Ibf254d8772fa2a8f188c9932d37b2f42362d8003

8 years agovp8: Add control for gf boost for 1 pass cbr.
Marco [Mon, 17 Oct 2016 21:32:28 +0000 (14:32 -0700)]
vp8: Add control for gf boost for 1 pass cbr.

Control already exists for vp9, adding it to vp8.
Usage is only when error_resilient is off.
Added a datarate unittest for non-zero boost.

Change-Id: I4296055ebe2f4f048e8210f344531f6486ac9e35

8 years agoRevert "vp9_bitstream: Encode tiles in parallel"
James Zern [Wed, 19 Oct 2016 05:46:06 +0000 (22:46 -0700)]
Revert "vp9_bitstream: Encode tiles in parallel"

This reverts commit 9e8efa5b189a5abf78b1bcbc8076893728129d1e.

this change causes ubsan warnings, failures in
vpxenc_vp9_webm_rt_multithread_tiled

BUG=webm:1309

Change-Id: I020c7be985c771bfff4b3de1afe51cc8edb980da

8 years agothird_party: roll libwebm snapshot
James Zern [Wed, 19 Oct 2016 01:11:36 +0000 (18:11 -0700)]
third_party: roll libwebm snapshot

git log --no-merges 32d5ac4..9732ae9
9732ae9 EbmlElementSize: quiet uint64->int32 conv warning
da04eba SetProjectionPrivate: quiet uint64->size_t conv warning
6db32d5 mkvparser,Projection::Parse: fix int->bool conv
3bb0dfa cosmetics: fix a couple lint warnings
0e179d6 update .clang-format
fc5f88d Fix temp files being left on system.
c04a134 Add support for overriding PixelWidth and PixelHeight.
c0160e0 Add support to explicitly set segment duration.
02bc809 Add support to estimate file duration.
c97e3e7 Add support to output sub-sample encryption information.
26f4344 MakeUID: quiet unused param warning in Android builds
d6af52a Change check to fix compile error.
1720020 webm_parser: Add Mesh value for ProjectionType
78f2c5a webm_parser: Use ./ prefix for includes
da62f65 webm_parser: Remove webm/ prefix from public includes
e15e8f2 webm_parser: Update README build instructions
5023f2b mkvmuxer: Fix Colour::Valid()
cf16204 mkvmuxer_tests: Actually test cue points in the cue point test.
93e9fb3 Validate Colour element values.
8036925 mkvparser_tests: Add Projection element test.
f52d38c mkvparser_tests: Add Colour element test.
826436a mkvparser: minor SeekHead::Entry clean up.
24fb44a mkvmuxer_tests: Add Projection element test.
1e0a8ea mkvmuxer_tests: Add Colour element test.
0278616 mkvmuxer: Colour accessors/mutators.
2346f8f Add mkvparser wrapper functions.
54d6b6b webm_info: Add Projection element support.
65fee06 mkvmuxer_sample: Add support for Projection element.
9a3f2b5 mkvparser_sample: Add support for Projection element.
41e814a mkvparser: Add Projection element support.
483a0ff mkvmuxer: Add Projection element support.
676a713 Add support for the Projection element
725f362 mkvmuxer: Fix memory leak when Colour is set multiple times.
fa182de mkvparser_sample: Add output of audio track codec private size.
8f521f2 mkvparser_tests: Add invalid BlockGroup test.
39137d7 Remove docs saying binary elements default to 0
80685d3 Do not skip over unknown elements at the root level
c147504 Fix legacy Makefile.
58711e8 mkvparser_sample: Fix version info string.
837746f mkvparser_tests: Add invalid block test.
207cd80 Disambiguate sample sources and targets.
a112d71 mkvparser_tests: Refactor invalid file loading code.
5dea33e Disambiguate test source and target names.
125049e parser_tests: Add another truncated chapter string test.
1de8d4c parser_tests: Add truncated chapter string test.
ff8c2b6 parser_tests: Move cue validation to test_util.
4b0690f parser_tests: Add invalid lacing test.
9828e39 mkvmuxer: Set default doc type version to 4.
5495a59 webm_parser: Reference more files in CMakeLists.txt.
0c0ecd0 vpxpes_parser: Add start code emulation prevention support.
639a4bc webm2pes: Remove debug printfs().
9a51102 webm2pes: fflush() in the correct conversion function.
dc7f155 webm2pes: Track total bytes written.
d518128 webm_parser: Enable usage of werror.
e1fe762 webm2pes: Add test for mux/demux of large input.
1b24a79 vpxpes_parser: Read and store PTS when present.
6cf0a0f vpxpes_parser: Store frame payloads.
25d2602 webm_parser: Convert style to match the rest of libwebm
24be76d webm2pes: Replace VpxFrame with VideoFrame.
b451c3b Add a basic video frame storage class.
05c90eb libwebm_util: Clarify error text in superframe parser.
e6415af webm2pes: Make WritePesPacket() a public method.
8f840dd webm2pes: Move frame read out of PES packet write method.
448af97 webm2pes: Restore frame fragmentation support.
f8bb714 cmake: Integrate new parsing API and tests.
cb8ce0b Add a new incremental parsing API
900d322 vpxpes_parser/webm2pes: BCMV and PTS fixes.
4b73545 webm2pes: Add start code emulation prevention.
82903f3 Add column tiles and frame parallel to webm_info
5d91edf style_clean_up: Remove unnecessary parentheses
a95aa4b vp9_level_stats: correct total_uncompressed_bits_ calculation
f46566f mkvreader: Fix shorten-64-to-32 warning in 32 bit builds.
76630ca mkvwriter: Fix shorten-64-to-32 warning in 32 bit builds.
a8ffbd4 webm2pes: Fix format specifier warnings.
faf89d4 Add MaxLumaSampleRate grace percent to stats.
d31e6c9 Fix profile 2 in vp9_header_parser.
bd3ab3a Add flag to estimate last frame's duration to stats.
c182ed9 Fix lint issue in hdr_util.h
cc62ecd Add test for Cluster memory leak
196708a Change MaxLumaSampleRate to be based on frame resolution.
cbd676b mkvmuxer: Fix leak when a Cluster isn't finalized
9a235e0 mkvmuxer: Set doctype to matroska when muxing non-WebM codecs.
47f2843 Add parsing support for new features in CodecPrivate.
e3c9576 Add VP9 level output to webm_info.
5cf549f cmake: Log compiler flag at check time.
bbaaf2d Add class to gather VP9 level stats.
8bb68c2 Add file to parse data from VP9 frames.
296429a Add support to parse VP9 profile.
df3412f Add support for setting VP9 profile and level to sample_muxer.
87832d4 mkvmuxer: Fix Segment::Finalize in kLive mode
6df3e56 mkvmuxerutil.hpp: Add using directives for overloaded size utils.
ec47928 mkvmuxerutil: Revert to using mkvmuxertypes.
a1dc4f2 Fix parsing of VP9 level.
4e3d037 Add support to output Colour elements to webm_info.
d3656fd muxer_tests: ignore iwyu re gtest-message.h
e76dd5e Fix file name in mkvmuxertypes shim.
1be5889 Add temporary include shims at old file locations.
039df94 Add TEST_TMPDIR environment variable

Change-Id: I84bc1401b0aad71ad6727b687f1bede9953a7a08

8 years agoMerge "Fix warnings reported by -Wshadow: Part1: vpx_dsp directory"
James Zern [Tue, 18 Oct 2016 22:09:29 +0000 (22:09 +0000)]
Merge "Fix warnings reported by -Wshadow: Part1: vpx_dsp directory"

8 years agoMerge "Revert "third_party: Roll libwebm snapshot.""
James Zern [Tue, 18 Oct 2016 20:06:47 +0000 (20:06 +0000)]
Merge "Revert "third_party: Roll libwebm snapshot.""

8 years agoMerge "Optimize sad_64width_x4d_msa function"
Kaustubh Raste [Tue, 18 Oct 2016 07:46:01 +0000 (07:46 +0000)]
Merge "Optimize sad_64width_x4d_msa function"

8 years agoRevert "third_party: Roll libwebm snapshot."
James Zern [Tue, 18 Oct 2016 06:23:59 +0000 (23:23 -0700)]
Revert "third_party: Roll libwebm snapshot."

This reverts commit 808a560be6a71dd0d27f29c26f9fefb5e809d373.

causes build warnings under visual studio

Change-Id: I2e49a75d72469f316e8b01929b783e6f727f756c

8 years agoOptimize sad_64width_x4d_msa function
Kaustubh Raste [Mon, 10 Oct 2016 10:45:06 +0000 (16:15 +0530)]
Optimize sad_64width_x4d_msa function

Reduced HADD_UH_U32 macro calls

Change-Id: Ie089b9a443de516646b46e8f72156aa826ca8cfa

8 years agoFix warnings reported by -Wshadow: Part1: vpx_dsp directory
Urvang Joshi [Thu, 14 Jul 2016 18:40:38 +0000 (11:40 -0700)]
Fix warnings reported by -Wshadow: Part1: vpx_dsp directory

While we are at it:
- Rename some variables to more meaningful names
- Reuse some common consts from a header instead of redefining them.

Change-Id: I75c4248cb75aa54c52111686f139b096dc119328
(cherry picked from aomedia 09eea21)

8 years agovpx_highbd_convolve_copy_neon: use multi reg loads
James Zern [Sat, 15 Oct 2016 18:04:37 +0000 (11:04 -0700)]
vpx_highbd_convolve_copy_neon: use multi reg loads

for copy16/32/64

BUG=webm:1299

Change-Id: I5080d736bde7e487c80ef3d7024dda1e96a57eaf

8 years agoMerge "vp9: Non-rd variance partition: add condition for 64x64 split."
Marco Paniconi [Tue, 18 Oct 2016 00:03:17 +0000 (00:03 +0000)]
Merge "vp9: Non-rd variance partition: add condition for 64x64 split."

8 years agoMerge "add vpx high bitdepth convolve8 NEON intrinsics optimization"
Linfeng Zhang [Mon, 17 Oct 2016 23:57:13 +0000 (23:57 +0000)]
Merge "add vpx high bitdepth convolve8 NEON intrinsics optimization"

8 years agoadd vpx high bitdepth convolve8 NEON intrinsics optimization
Linfeng Zhang [Thu, 13 Oct 2016 00:20:53 +0000 (17:20 -0700)]
add vpx high bitdepth convolve8 NEON intrinsics optimization

BUG=webm:1299

Change-Id: I236bfa0441e357b6ff05add8269a2cfb543924d1

8 years agovp9: Non-rd variance partition: add condition for 64x64 split.
Marco [Fri, 14 Oct 2016 17:02:49 +0000 (10:02 -0700)]
vp9: Non-rd variance partition: add condition for 64x64 split.

Add stronger condition for splitting 64x64, for low noise content.
This reduces dragging artifact near moving head.

Little/no change in metrics on RTC set.

Change-Id: I39b38cfd20f2ece53ff49c2aaf76ba9f82761be1

8 years agothird_party: Roll libwebm snapshot.
Frank Galligan [Mon, 17 Oct 2016 19:41:39 +0000 (12:41 -0700)]
third_party: Roll libwebm snapshot.

fc5f88d Fix temp files being left on system.
c04a134 Add support for overriding PixelWidth and PixelHeight.
c0160e0 Add support to explicitly set segment duration.
02bc809 Add support to estimate file duration.
c97e3e7 Add support to output sub-sample encryption information.
26f4344 MakeUID: quiet unused param warning in Android builds
d6af52a Change check to fix compile error.
1720020 webm_parser: Add Mesh value for ProjectionType
78f2c5a webm_parser: Use ./ prefix for includes
da62f65 webm_parser: Remove webm/ prefix from public includes
e15e8f2 webm_parser: Update README build instructions
5023f2b mkvmuxer: Fix Colour::Valid()
cf16204 mkvmuxer_tests: Actually test cue points in the cue point test.
93e9fb3 Validate Colour element values.
8036925 mkvparser_tests: Add Projection element test.
f52d38c mkvparser_tests: Add Colour element test.
826436a mkvparser: minor SeekHead::Entry clean up.
24fb44a mkvmuxer_tests: Add Projection element test.
1e0a8ea mkvmuxer_tests: Add Colour element test.
0278616 mkvmuxer: Colour accessors/mutators.
2346f8f Add mkvparser wrapper functions.
54d6b6b webm_info: Add Projection element support.
65fee06 mkvmuxer_sample: Add support for Projection element.
9a3f2b5 mkvparser_sample: Add support for Projection element.
41e814a mkvparser: Add Projection element support.
483a0ff mkvmuxer: Add Projection element support.
676a713 Add support for the Projection element
725f362 mkvmuxer: Fix memory leak when Colour is set multiple times.
fa182de mkvparser_sample: Add output of audio track codec private size.
8f521f2 mkvparser_tests: Add invalid BlockGroup test.
39137d7 Remove docs saying binary elements default to 0
c147504 Fix legacy Makefile.
80685d3 Do not skip over unknown elements at the root level
58711e8 mkvparser_sample: Fix version info string.
837746f mkvparser_tests: Add invalid block test.
207cd80 Disambiguate sample sources and targets.
a112d71 mkvparser_tests: Refactor invalid file loading code.
5dea33e Disambiguate test source and target names.
125049e parser_tests: Add another truncated chapter string test.
1de8d4c parser_tests: Add truncated chapter string test.
ff8c2b6 parser_tests: Move cue validation to test_util.
4b0690f parser_tests: Add invalid lacing test.
9828e39 mkvmuxer: Set default doc type version to 4.
5495a59 webm_parser: Reference more files in CMakeLists.txt.
0c0ecd0 vpxpes_parser: Add start code emulation prevention support.
639a4bc webm2pes: Remove debug printfs().
9a51102 webm2pes: fflush() in the correct conversion function.
dc7f155 webm2pes: Track total bytes written.
d518128 webm_parser: Enable usage of werror.
e1fe762 webm2pes: Add test for mux/demux of large input.
1b24a79 vpxpes_parser: Read and store PTS when present.
6cf0a0f vpxpes_parser: Store frame payloads.
25d2602 webm_parser: Convert style to match the rest of libwebm
24be76d webm2pes: Replace VpxFrame with VideoFrame.
b451c3b Add a basic video frame storage class.
05c90eb libwebm_util: Clarify error text in superframe parser.
e6415af webm2pes: Make WritePesPacket() a public method.
8f840dd webm2pes: Move frame read out of PES packet write method.
448af97 webm2pes: Restore frame fragmentation support.
f8bb714 cmake: Integrate new parsing API and tests.
cb8ce0b Add a new incremental parsing API
900d322 vpxpes_parser/webm2pes: BCMV and PTS fixes.
4b73545 webm2pes: Add start code emulation prevention.
82903f3 Add column tiles and frame parallel to webm_info
5d91edf style_clean_up: Remove unnecessary parentheses
a95aa4b vp9_level_stats: correct total_uncompressed_bits_ calculation
f46566f mkvreader: Fix shorten-64-to-32 warning in 32 bit builds.
76630ca mkvwriter: Fix shorten-64-to-32 warning in 32 bit builds.
a8ffbd4 webm2pes: Fix format specifier warnings.
faf89d4 Add MaxLumaSampleRate grace percent to stats.
d31e6c9 Fix profile 2 in vp9_header_parser.
bd3ab3a Add flag to estimate last frame's duration to stats.
c182ed9 Fix lint issue in hdr_util.h
cc62ecd Add test for Cluster memory leak
196708a Change MaxLumaSampleRate to be based on frame resolution.
cbd676b mkvmuxer: Fix leak when a Cluster isn't finalized
47f2843 Add parsing support for new features in CodecPrivate.
9a235e0 mkvmuxer: Set doctype to matroska when muxing non-WebM codecs.
e3c9576 Add VP9 level output to webm_info.
bbaaf2d Add class to gather VP9 level stats.
5cf549f cmake: Log compiler flag at check time.
8bb68c2 Add file to parse data from VP9 frames.
df3412f Add support for setting VP9 profile and level to sample_muxer.
296429a Add support to parse VP9 profile.
87832d4 mkvmuxer: Fix Segment::Finalize in kLive mode
6df3e56 mkvmuxerutil.hpp: Add using directives for overloaded size utils.
ec47928 mkvmuxerutil: Revert to using mkvmuxertypes.
4e3d037 Add support to output Colour elements to webm_info.
a1dc4f2 Fix parsing of VP9 level.
039df94 Add TEST_TMPDIR environment variable
d3656fd muxer_tests: ignore iwyu re gtest-message.h
e76dd5e Fix file name in mkvmuxertypes shim.
1be5889 Add temporary include shims at old file locations.

Change-Id: I6a1026814560be80d604a5ecb9b66406a1186dd9

8 years agovp9_bitstream: Encode tiles in parallel
Vignesh Venkatasubramanian [Fri, 7 Oct 2016 17:24:50 +0000 (10:24 -0700)]
vp9_bitstream: Encode tiles in parallel

Re-use the tile worker threads to pack the bitstream in parallel
on a per-tile basis.  Restricting this to real-time only for now
(further testing is needed to ensure this does not make 2-pass
worse in any case).

BUG=webm:1309

Change-Id: Ia2c982da56697756e12f02643f589189b3271d98

8 years agoMerge "VP8: Add realtime speed to datarate_test.cc"
Jerome Jiang [Sat, 15 Oct 2016 06:01:40 +0000 (06:01 +0000)]
Merge "VP8: Add realtime speed to datarate_test.cc"

8 years agoVP8: Add realtime speed to datarate_test.cc
Jerome Jiang [Thu, 13 Oct 2016 22:27:47 +0000 (15:27 -0700)]
VP8: Add realtime speed to datarate_test.cc

Change-Id: Ia56f0e8dfba20143be3e69666d9184dd3ca5b563

8 years agoMerge "add vpx_highbd_convolve_{copy,avg}_neon()"
Linfeng Zhang [Fri, 14 Oct 2016 23:04:59 +0000 (23:04 +0000)]
Merge "add vpx_highbd_convolve_{copy,avg}_neon()"

8 years agoMerge "Drop empty frames."
James Bankoski [Fri, 14 Oct 2016 16:38:56 +0000 (16:38 +0000)]
Merge "Drop empty frames."

8 years agoDrop empty frames.
Jim Bankoski [Fri, 14 Oct 2016 13:28:14 +0000 (06:28 -0700)]
Drop empty frames.

Change-Id: I2d45a6eb3aaca97eb61e8e7ef9e5114221091244

8 years agoadd vpx_highbd_convolve_{copy,avg}_neon()
Linfeng Zhang [Wed, 12 Oct 2016 23:32:37 +0000 (16:32 -0700)]
add vpx_highbd_convolve_{copy,avg}_neon()

BUG=webm:1299

Change-Id: Ib87ac466ada63251eb06ae2abd1e13e61e0d1538

8 years agovp8: Adjust thresholds in VP8/DatarateTestLarge tests.
Marco [Thu, 13 Oct 2016 16:26:38 +0000 (09:26 -0700)]
vp8: Adjust thresholds in VP8/DatarateTestLarge tests.

Fix unit_tests_ubsan failure VP8/DatarateTestLarge.BasicBufferModel.
Failure was triggered by commit: df66f8e8.

Change-Id: I2c49e5cc24094b15063161bab27b09ec7e6f2045

8 years agoMerge "cosmetics,*loopfilter_neon.c: s/tranpose/transpose/"
James Zern [Thu, 13 Oct 2016 07:12:50 +0000 (07:12 +0000)]
Merge "cosmetics,*loopfilter_neon.c: s/tranpose/transpose/"

8 years agoMerge "vp9_bitstream: Parameterize interp_filter_selected"
Vignesh Venkatasubramanian [Thu, 13 Oct 2016 06:33:30 +0000 (06:33 +0000)]
Merge "vp9_bitstream: Parameterize interp_filter_selected"

8 years agovp9_bitstream: Parameterize interp_filter_selected
Vignesh Venkatasubramanian [Wed, 12 Oct 2016 19:06:58 +0000 (12:06 -0700)]
vp9_bitstream: Parameterize interp_filter_selected

Facilitates encoding tiles in parallel.

BUG=webm:1309

Change-Id: I37aa336d47babffc8352188dc767eebdb8a99474

8 years agoMerge "Optimize vpx_mbpost_proc_across_ip_msa function"
Kaustubh Raste [Thu, 13 Oct 2016 02:12:33 +0000 (02:12 +0000)]
Merge "Optimize vpx_mbpost_proc_across_ip_msa function"

8 years agoMerge "Optimize vpx_get4x4sse_cs_msa function"
Kaustubh Raste [Thu, 13 Oct 2016 02:11:59 +0000 (02:11 +0000)]
Merge "Optimize vpx_get4x4sse_cs_msa function"

8 years agocosmetics,*loopfilter_neon.c: s/tranpose/transpose/
James Zern [Wed, 12 Oct 2016 23:12:56 +0000 (16:12 -0700)]
cosmetics,*loopfilter_neon.c: s/tranpose/transpose/

Change-Id: I267d6a9d715ddb6110f0881c2e820c37fc673fe1

8 years agoMerge "vp9_bitstream: Parameterize max_mv_magnitude"
Vignesh Venkatasubramanian [Wed, 12 Oct 2016 21:52:41 +0000 (21:52 +0000)]
Merge "vp9_bitstream: Parameterize max_mv_magnitude"

8 years agovp9_bitstream: Parameterize max_mv_magnitude
Vignesh Venkatasubramanian [Mon, 10 Oct 2016 21:45:39 +0000 (14:45 -0700)]
vp9_bitstream: Parameterize max_mv_magnitude

Facilitates encoding tiles in parallel.

BUG=webm:1309

Change-Id: I614a5a492c30b6773c30e7294cd6a6f456e02ab4

8 years agoMerge "[vpx highbd lpf NEON 6/6] vertical 16"
Linfeng Zhang [Wed, 12 Oct 2016 19:31:39 +0000 (19:31 +0000)]
Merge "[vpx highbd lpf NEON 6/6] vertical 16"

8 years agoMerge "[vpx highbd lpf NEON 5/6] horizontal 16"
Linfeng Zhang [Wed, 12 Oct 2016 19:31:24 +0000 (19:31 +0000)]
Merge "[vpx highbd lpf NEON 5/6] horizontal 16"

8 years agoMerge "[vpx highbd lpf NEON 4/6] vertical 8"
Linfeng Zhang [Wed, 12 Oct 2016 19:31:06 +0000 (19:31 +0000)]
Merge "[vpx highbd lpf NEON 4/6] vertical 8"

8 years ago[vpx highbd lpf NEON 6/6] vertical 16
Linfeng Zhang [Wed, 5 Oct 2016 18:33:52 +0000 (11:33 -0700)]
[vpx highbd lpf NEON 6/6] vertical 16

BUG=webm:1300

Change-Id: I29d0b482d66f05e278325ddebcf108fbf0b6e222

8 years ago[vpx highbd lpf NEON 5/6] horizontal 16
Linfeng Zhang [Wed, 5 Oct 2016 18:29:15 +0000 (11:29 -0700)]
[vpx highbd lpf NEON 5/6] horizontal 16

BUG=webm:1300

Change-Id: I21da32d6cfb8a1a6f58bc9756d17f48f13a59a12

8 years ago[vpx highbd lpf NEON 4/6] vertical 8
Linfeng Zhang [Wed, 5 Oct 2016 18:08:58 +0000 (11:08 -0700)]
[vpx highbd lpf NEON 4/6] vertical 8

BUG=webm:1300

Change-Id: If06b12bc081bab60059b100414dd7018f83ac62d

8 years agoMerge "Optimize vp8 loopfilter msa functions"
Kaustubh Raste [Wed, 12 Oct 2016 05:44:10 +0000 (05:44 +0000)]
Merge "Optimize vp8 loopfilter msa functions"

8 years agoMerge "[vpx highbd lpf NEON 3/6] horizontal 8"
James Zern [Wed, 12 Oct 2016 05:35:48 +0000 (05:35 +0000)]
Merge "[vpx highbd lpf NEON 3/6] horizontal 8"

8 years ago[vpx highbd lpf NEON 3/6] horizontal 8
Linfeng Zhang [Wed, 5 Oct 2016 17:59:10 +0000 (10:59 -0700)]
[vpx highbd lpf NEON 3/6] horizontal 8

BUG=webm:1300

Change-Id: Ica2379e294be60b7f80fcfcec110dca4c3b59d81

8 years agovp8: Adjust threshold on VP8/DatarateTestLarge.DenoiserOffOn.
Marco [Tue, 11 Oct 2016 23:12:46 +0000 (16:12 -0700)]
vp8: Adjust threshold on VP8/DatarateTestLarge.DenoiserOffOn.

Fix unit_tests_ubsan failure for VP8/DatarateTestLarge.DenoiserOffOn.
Failure was triggered by commit: df66f8e8.

Change-Id: I7cc5bd309e85950cfc5755e01d0eb942d9ca6984

8 years ago1 pass vbr: Allow for lookahead alt-ref in real-time mode.
Marco [Wed, 3 Aug 2016 00:37:32 +0000 (17:37 -0700)]
1 pass vbr: Allow for lookahead alt-ref in real-time mode.

For 1 pass vbr real-time mode:
Allow for the usage of alt-ref frame when non-zero lag-in-frames is used.
Use non-filtered alt-ref, and select usage based on fast scene/content
analysis/detection within the lag of frames.

Positive gains on ytlive set: overall avgPSNR ~3-4%.
Several clips are up between 5-14%, a few clips are neutral/small change.

Current speed decrease is about ~5-10%.

Use the flag USE_ALTREF_FOR_ONE_PASS to enable this feature
(off by default for now).

Change-Id: I802d2bf3d44f9cf01f6d15c76be9c90192314769

8 years agovp9: 1 pass vbr: some adjustments to gf interval.
Marco [Mon, 10 Oct 2016 18:42:47 +0000 (11:42 -0700)]
vp9: 1 pass vbr: some adjustments to gf interval.

Put limit on gf interval based on lag, and allow
for the adjustment on next gf group also on key frame.

Small/neutral change on ytlive metrics.

Change only affects 1 pass vbr real-time mode.

Change-Id: I339c8f4398848698b6e10fe9482c52ca661b94a5

8 years agoMerge "vp8: Change default gf behavior for 1 pass cbr."
Marco Paniconi [Mon, 10 Oct 2016 23:06:30 +0000 (23:06 +0000)]
Merge "vp8: Change default gf behavior for 1 pass cbr."

8 years agoMerge "[vpx highbd lpf NEON 2/6] vertical 4"
Linfeng Zhang [Mon, 10 Oct 2016 16:57:50 +0000 (16:57 +0000)]
Merge "[vpx highbd lpf NEON 2/6] vertical 4"

8 years agoMerge "[vpx highbd lpf NEON 1/6] horizontal 4"
Linfeng Zhang [Mon, 10 Oct 2016 16:56:22 +0000 (16:56 +0000)]
Merge "[vpx highbd lpf NEON 1/6] horizontal 4"

8 years agoOptimize vpx_mbpost_proc_across_ip_msa function
Kaustubh Raste [Mon, 10 Oct 2016 12:33:28 +0000 (18:03 +0530)]
Optimize vpx_mbpost_proc_across_ip_msa function

Removed HADD_SW_S32 calculation

Change-Id: I7384dc881451d197404d09beb7c27b222e1d6875

8 years agoOptimize vpx_get4x4sse_cs_msa function
Kaustubh Raste [Mon, 10 Oct 2016 11:01:57 +0000 (16:31 +0530)]
Optimize vpx_get4x4sse_cs_msa function

Reuse CALC_MSE_B macro

Change-Id: I39f0a92ac2dbb5fa8628df1a5d556cfdc42a3648

8 years agoMerge "Optimize vp9 loopfilter msa functions"
Kaustubh Raste [Sat, 8 Oct 2016 05:05:15 +0000 (05:05 +0000)]
Merge "Optimize vp9 loopfilter msa functions"

8 years agoOptimize vp9 loopfilter msa functions
Kaustubh Raste [Fri, 7 Oct 2016 13:13:31 +0000 (18:43 +0530)]
Optimize vp9 loopfilter msa functions

Updated code to process in 8bit as saturation/clipping takes care of
overflow
Removed unused macro

Change-Id: I113df60286fb28b216df800d95b2d3695ef71440

8 years agovp8: Change default gf behavior for 1 pass cbr.
Marco [Thu, 6 Oct 2016 23:01:04 +0000 (16:01 -0700)]
vp8: Change default gf behavior for 1 pass cbr.

In 1 pass CBR, with error_resilience off, allow for
special logic to change the default gf behaviour.
In this CL: boost is turned off and the gf period
is set to a multiple of cyclic refresh period.

Change only affect 1 pass CBR mode, i.e, when the flag
gf_update_onepass_cbr is set.

Including the previous change (3ec8e11: to allow cyclic refresh
for error_resilience off), comparing metrics on RTC set for
error_resilience off vs on: avgPSNR/SSIM up by ~6%.

Change-Id: Id5b3fb62a4f04de5a805bd1b418f2b349574e0bc

8 years agoMerge "write_modes: add MACROBLOCKD as a parameter"
Vignesh Venkatasubramanian [Fri, 7 Oct 2016 18:09:08 +0000 (18:09 +0000)]
Merge "write_modes: add MACROBLOCKD as a parameter"

8 years agowrite_modes: add MACROBLOCKD as a parameter
Vignesh Venkatasubramanian [Tue, 4 Oct 2016 20:50:32 +0000 (13:50 -0700)]
write_modes: add MACROBLOCKD as a parameter

This will enable bit stream packing of each tile column in
parallel.

BUG=webm:1309

Change-Id: Ie349d8cc5825326218ffda893a50730b2e68ed34

8 years agoOptimize vp8 loopfilter msa functions
Kaustubh Raste [Fri, 7 Oct 2016 10:18:31 +0000 (15:48 +0530)]
Optimize vp8 loopfilter msa functions

Updated code to process in 8bit as saturation/clipping takes care of overflow

Change-Id: I35fb2c0e702fd91309cc391c5a7745a3b619a64c

8 years agoMerge "Fix build failure in libvpx_example_test-multi-target."
James Zern [Fri, 7 Oct 2016 01:53:40 +0000 (01:53 +0000)]
Merge "Fix build failure in libvpx_example_test-multi-target."

8 years ago[vpx highbd lpf NEON 2/6] vertical 4
Linfeng Zhang [Wed, 5 Oct 2016 17:45:03 +0000 (10:45 -0700)]
[vpx highbd lpf NEON 2/6] vertical 4

BUG=webm:1300

Change-Id: Ia33a9f2d6c7e2e6b3497ad6f1a09439a85b33983

8 years ago[vpx highbd lpf NEON 1/6] horizontal 4
Linfeng Zhang [Wed, 5 Oct 2016 17:15:07 +0000 (10:15 -0700)]
[vpx highbd lpf NEON 1/6] horizontal 4

BUG=webm:1300

Change-Id: Idf441806e6bf397ff5ecd8776146b3f781f50c40

8 years agoMerge changes from topic '8bit-hbd-idct'
James Zern [Thu, 6 Oct 2016 19:37:18 +0000 (19:37 +0000)]
Merge changes from topic '8bit-hbd-idct'

* changes:
  vpx_dsp/idct*_neon.asm: simplify immediate loads
  enable idct*_1_add_neon in high-bitdepth builds

8 years agoFix build failure in libvpx_example_test-multi-target.
Marco [Thu, 6 Oct 2016 19:11:37 +0000 (12:11 -0700)]
Fix build failure in libvpx_example_test-multi-target.

Due to change in command line to sample encoder from:
7eff8f3 Update to vpx_temporal_svc_encoder command line.

This caused the tests in vpx_temporal_svc_encoder.sh to fail.

Change-Id: Ic667da81955ad117d04610af21877fed1d4f188f

8 years agoMerge "Remove vpx_realloc()"
Alex Converse [Thu, 6 Oct 2016 18:42:05 +0000 (18:42 +0000)]
Merge "Remove vpx_realloc()"

8 years agoMerge "Modify vp8 idct msa functions store method"
Kaustubh Raste [Thu, 6 Oct 2016 02:25:42 +0000 (02:25 +0000)]
Merge "Modify vp8 idct msa functions store method"

8 years agovpx_dsp/idct*_neon.asm: simplify immediate loads
James Zern [Wed, 5 Oct 2016 18:50:06 +0000 (11:50 -0700)]
vpx_dsp/idct*_neon.asm: simplify immediate loads

mov supports 0-65535

Change-Id: I019de0d784836d7bd60e6b36f2cdeefb541cb3fd