Commit Graph

113 Commits

Author SHA1 Message Date
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
James Zern
c93dc38ca3 Merge "examples.mk: quiet vcproj script exec by default" 2015-08-05 00:42:36 +00:00
James Zern
a2746d7096 examples.mk: quiet vcproj script exec by default
the full command line can be seen with V=1 as with the other gen*
scripts

Change-Id: Id045b57e0f9af17d82d79201bbc1241b25a2b821
2015-08-03 19:31:32 -07:00
James Zern
fcb4253c9c update libyuv to r1456
picks up build warning fixes for visual studio 2015

Change-Id: Idea85fa70d1aeb2a46ea355b87fe41ec5b2b9520
2015-07-31 18:34:20 -07:00
KO Myung-Hun
6d52fe2e71 Support building shared libraries on OS/2
Change-Id: I5750db0504cb69ead52f9f44bf583e693bffbb7e
2015-06-03 13:48:34 +09:00
Johann
cad0eca25c Don't #define snprintf in VS 2015 or higher.
In VS 2015 and higher snprintf is supplied and therefore vsnprintf
doesn't need to be defined. This also avoids problems caused by
_snprintf being different from snprintf.

This fixes a build break with VS 2015 and improves security.

Originally submitted via chromium by brucedawson@chromium.org
https://codereview.chromium.org/1055603003

Additionally break this MSVC-specific tweak to a new file, which will
become the home of all such MSVC-specific things.

This requires adding a dependency on msvc.h to every example which uses
args.c and tools_common.h

Change-Id: I35b5f8e7ea00f6627403aabc9ea79b0412557a99
2015-05-27 18:28:25 -07:00
Tom Finegan
3d7063d4b0 Remove claims of universal target support from the build system.
These targets no longer build (PPC support was removed from
libvpx). Remove the dead code and misleading help output.

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

Change-Id: Ib35614806adeae970f3821da0d8dbcc54ab8d868
2015-05-12 19:16:49 -07:00
James Zern
aaccf6566d configure: add --(disable|enable)-dependency-tracking
defaults to enabled. when disabled skips dependency file (.d) generation
allowing for faster one-time builds.

Change-Id: I2d7d7f905f1663315b8eb2b2e81fffb6fcb15829
2015-02-09 16:38:49 -08:00
Dmitry Kovalev
5ba8c79869 Enabling example code build for both VP8 and VP9.
Change-Id: I1bf7e34e6735461e4e587b6b806c2abc3fe63013
2014-09-11 15:46:37 -07:00
Dmitry Kovalev
cb1f97e880 Adding lossless encoding example.
Change-Id: Ib8498c3127c397b453beff140503b2aca0d11cfc
2014-09-11 11:27:38 -07:00
Dmitry Kovalev
0c1b9c7999 vp8_multi_resolution_encoder: Huge cleanup.
Change-Id: I65b2c1fbed5a306949843315999d10368a100431
2014-08-28 11:10:28 -07:00
James Zern
2f5e0faefd add libyuv/scale_neon64.cc
from r1051, missed in r1060 snapshot update

Change-Id: I3756d8d29fc0dd4c4491efa84b8f8837edde23a7
2014-08-22 18:16:44 -07:00
James Zern
3a7d467da9 libyuv: update to r1041
Change-Id: I38dad398844ee424a7a92a745ab703645018d02b
2014-08-12 22:54:05 -07:00
Marco Paniconi
5f732c2031 Fix build for examples/vp8_multi_resolution_encoder.
Change-Id: I7ec4e0e05487fe80d93e31e0f6a21f326b5c7276
2014-07-07 16:59:07 -07:00
James Zern
f66590cd7c *.mk: pass SRC_PATH_BARE to all GEN_VCPROJ invocations
this will enable stripping of the path from the object file name

Change-Id: Ia5ff575cfa4fe946200878b0aded05832609f316
2014-06-02 16:42:14 -07:00
Deb Mukherjee
47031c0a54 Updates libyuv to version 1005
Also adds compile check and a libyuv configure flag

Change-Id: Ib9f0f4a71c4083e6f0aea7b5a5d175531ef0f66b
2014-05-20 17:19:57 -07:00
James Zern
f12ebfc939 make spatial svc an experiment
disabled by default, enable with:
--enable-experimental --enable-spatial-svc

this disables vp9_spatial_svc_encoder and svc_test, further work is
needed to remove internal lib references

Change-Id: I6a487ecbf07eb98843a99d96e17f08f960b63088
2014-05-14 19:47:23 -07:00
Tom Finegan
a77d6d0dbb Rename vpx_temporal_scalable_patterns.c
New name: vpx_temporal_svc_encoder.c
Also, update comment to note that example supports VP8 and VP9.

Change-Id: I6fffab81296f918ebca740192a5c609593852dff
2014-05-14 11:21:15 -07:00
Tom Finegan
cea4167030 Rename vp9_spatial_scalable_encoder.
Rename it to vp9_spatial_svc_encoder.

Change-Id: I756936039df5bf6bea2d7525a7edeac01df94352
2014-05-13 15:52:43 -07:00
Tom Finegan
732e49b666 Remove bitrotted example code: example_xma
Doesn't work. Doesn't build. Not supported.

Change-Id: I5a2f9965afdda82370049c10ebcbe77ac4c6c9b9
2014-05-09 10:55:55 -07:00
Tom Finegan
f06de3b0a6 Remove decode_with_partial_drops example.
Bitrotted and non-functional. Does one of two things: Crashes or reports
errors and quits.

Change-Id: Ia9c391ecd6e716b183d925247bf3dc0509ce4586
2014-05-07 10:51:18 -07:00
Vignesh Venkatasubramanian
dbd24710c7 Changing webmdec to use libwebm
Changing webmdec to use libwebm for WebM file parsing.

Change-Id: I2a57a7b44dbed05eaa04409e1e75e6fc03b30fbc
2014-04-24 11:58:42 -07:00
Vignesh Venkatasubramanian
2dcbf8c9e6 Changing webmenc to use libwebm
Changing webmenc to use libwebm for WebM file muxing.

Change-Id: I38ccc74f35c6b9684a87d04d8f9354dbe9a3263b
2014-04-04 10:07:08 -07:00
Deb Mukherjee
4298be38bd Fix build for resize_util
Fix that handles undefined CONFIG_SHARED

Change-Id: I585bd03078f9061d010880a294bf0ac423f0981a
2014-04-03 14:06:20 -07:00
Paul Wilkins
80577dff4b Revert "Changing webmenc to use libwebm"
Temporary revert.
Problems with conflicting definitions of type off_t
in MSVC builds that need resolving.

c:\Program Files (x86)\
  Microsoft Visual Studio 9.0\VC\include\wchar.h(479) :
  "error C2371: 'off_t' : redefinition; different basic types
c:\on2experimental\libvpx\tools_common.h(26) :
   see declaration of 'off_t'"

This reverts commit 92a4c59112.

Change-Id: I535e40a18842a92e3e6e0b29e5fba66313010803
2014-04-02 13:29:25 +01:00
Vignesh Venkatasubramanian
92a4c59112 Changing webmenc to use libwebm
Changing webmenc to use libwebm for WebM file muxing.

Change-Id: I42eb688953865003214c05bdf2076ee00db28970
2014-03-28 07:39:05 -07:00
Vignesh Venkatasubramanian
19e31c7ef5 Merge "Adding a configure flag to control WebM container support" 2014-03-17 10:06:49 -07:00
Vignesh Venkatasubramanian
0ffa3836f3 Adding a configure flag to control WebM container support
Adding a --(enable|disable)-webm-io flag to control WebM container input and
output support. For now, enabling WebM IO by default only when there is a C++
compiler. Doing so because eventually we will move WebM IO to libwebm and it
is built using C++.

Change-Id: I210ac36c23528e382ed41d3c4322291720481492
2014-03-14 14:44:47 -07:00
Alex Converse
61ecd7f105 Add VP9 support to the set maps example.
Change-Id: I8c3be3ed4d6bbc5fa3042a2d5637407d4d56afee
2014-03-11 10:44:22 -07:00
Minghai Shang
2740507142 Merge "[svc] 1. Add two pass RC options in vp9_spatial_scalable_encoder. 2. Add read/write for RC stats file The two pass RC for svc does not work yet. This is just the first step. We need further development to make it working. Change-Id: I8ef0e177dff0b5ed3c97a916beea5123717cc6f2" 2014-03-07 14:02:35 -08:00
James Zern
87a3129e52 Merge "move resize_util.c to examples/" 2014-03-06 11:42:19 -08:00
Dmitry Kovalev
c3cd6b3e5c Merging force-keyframe example into simple_encoder.
The only difference between two examples was usage of VPX_EFLAG_FORCE_KF
flag for frame encoding. Moving this functionality into simple_encoder
with additional command line option.

Change-Id: Ia3c4209be073eeb541d4ac6b41bd0f12812f6676
2014-03-05 12:01:56 -08:00
Dmitry Kovalev
cb4eb7901d Converting vp8cx_set_ref example to use new API.
Change-Id: I8e40811c85c2246da75d9f06c4fda1a5079fcc71
2014-03-05 10:38:17 -08:00
James Zern
98e16b1b3d move resize_util.c to examples/
Change-Id: I0bc68e129ea408095869c9e7b0b15d83e22dbf4e
2014-03-03 18:03:23 -08:00
Dmitry Kovalev
6440e2955d Merge "Merging error-resilient example into simple_encoder." 2014-03-03 12:10:37 -08:00
Minghai Shang
b0c146eea9 [svc] 1. Add two pass RC options in vp9_spatial_scalable_encoder.
2. Add read/write for RC stats file
The two pass RC for svc does not work yet. This is just the first
step. We need further development to make it working.
Change-Id: I8ef0e177dff0b5ed3c97a916beea5123717cc6f2
2014-02-28 14:22:57 -08:00
Dmitry Kovalev
4334c07357 Reusing mem_get_le{16, 32} defined in vpx_ports/mem_opts.h.
Change-Id: If4b5209ac14aaba6f1c1014bc0497baa8eabfaff
2014-02-26 16:32:09 -08:00
Dmitry Kovalev
194e6f2983 Merging error-resilient example into simple_encoder.
The only difference between two examples was a setting of
g_error_resilient flag in error-resilient example. Moving this
functionality into simple_encoder with additional command line option.

Change-Id: I0245793320125926e1bf208cc1e87aef39ca478d
2014-02-25 16:34:49 -08:00
James Zern
8e3ef6c0e1 Merge "move nestegg to third_party" 2014-02-22 11:43:37 -08:00
James Zern
20eb5cb653 move vp9_spatial_scalable_encoder.c to examples/
Change-Id: Id5c889cb87ad33a21d83a415a23e957e8ee3218f
2014-02-21 17:57:27 -08:00
James Zern
bb3b9aa93f move nestegg to third_party
Change-Id: Idf58109195a88dec66c5e1ea6a51c61e6c659ff1
2014-02-21 17:16:04 -08:00
James Zern
354c566044 restore examples to doxygen output
these were incorrectly stripped in:
50fa585 Removing examples code generation and making them static.

Change-Id: Idb475ad5b303634311e9f616604312cb925cc6a9
2014-02-14 19:38:20 -08:00
Dmitry Kovalev
8837b022d9 Adapting vp8_set_maps.c example to use new APIs.
Change-Id: Id6e6b5a96c907261abe4348624241b4568707c1d
2014-02-13 14:18:05 -08:00
Dmitry Kovalev
14db3bf532 Using video writer API from vp9_spatial_scalable_encoder.
Change-Id: I6c2748bef22cdbbc9574d7a8dfc1ed55f4f6b05f
2014-02-12 11:23:49 -08:00
Dmitry Kovalev
c761bd78fa Merge "Cleaning up {simple, twopass}_encoder examples." 2014-02-10 14:27:48 -08:00
Dmitry Kovalev
592936b497 Cleaning up {simple, twopass}_encoder examples.
Change-Id: Ide9c408f4cee7408741ef8c0ffac01645a5a67ca
2014-02-07 11:37:39 -08:00
Dmitry Kovalev
4f8a30b116 Converting vpx_temporal_scalable_patterns to use VpxVideoWriter.
Change-Id: I69e868295b9798ba1599a411926de0891680032f
2014-02-07 11:07:55 -08:00
Dmitry Kovalev
6adaec4f50 Merge "Adding video reader/writer APIs." 2014-02-06 12:52:32 -08:00
Marco Paniconi
4864ab21b0 Layer based rate control for CBR mode.
This patch adds a buffer-based rate control for temporal layers,
under CBR mode.

Added vpx_temporal_scalable_patters.c encoder for testing temporal
layers, for both vp9 and vp8 (replaces the old vp8_scalable_patterns).

Updated datarate unittest with tests for temporal layer rate-targeting.

Change-Id: I8900a854288b9354d9c697cfeb0243a9fd6790b1
2014-02-06 09:24:45 -08:00
Dmitry Kovalev
37e6fd3d76 Adding video reader/writer APIs.
Right now only IVF format is supported which is enough for example code.
Other formats like y4m, webm, raw yuv will be supported later.

Change-Id: I34c6f20731c1851947587ca5c589d7856b675164
2014-02-05 20:34:51 -08:00