webm/libwebm.git
8 days agoUpdate PATENTS to reflect s/VP8/WebM/g 61/71161/1 master
Lou Quillio [Mon, 11 Aug 2014 19:26:15 +0000 (12:26 -0700)]
Update PATENTS to reflect s/VP8/WebM/g

Sync with http://www.webmproject.org/license/additional/

modified:   PATENTS.TXT

Change-Id: I3e1b3a570b26ada0e6e0d344f1783ef0e3cd5fa1

4 weeks agomkvmuxerutil: Use rand() in MSVC builds. 16/70916/1
Tom Finegan [Fri, 18 Jul 2014 18:37:06 +0000 (11:37 -0700)]
mkvmuxerutil: Use rand() in MSVC builds.

Instead of rand_s(), which can make things unpleasant for downstream
projects.

Change-Id: Ie172867c28aaa43223dc5fb694eb4a4fd26515d6

5 weeks agomkvmuxer: Overload WriteEbmlHeader for backward compatibility 88/70788/3
Vignesh Venkatasubramanian [Wed, 9 Jul 2014 17:27:34 +0000 (10:27 -0700)]
mkvmuxer: Overload WriteEbmlHeader for backward compatibility

WriteEbmlHeader function was updated on
a321704b4c7f90793ffe55497978fe7b6676944c. It is a public function that
is exposed outside of the library. Overload it with an old signature
to maintain compatibility. The overloaded function writes the
doc_type_version as 2 by default (thereby retaining the old behavior).

Change-Id: If887a1bfa3e81e7e639c986a922aa5155faab2cf

8 weeks agomkvmuxer: write correct DocTypeVersion 93/70593/3
James Zern [Fri, 20 Jun 2014 23:57:14 +0000 (16:57 -0700)]
mkvmuxer: write correct DocTypeVersion

Change-Id: I9a463394dec5e69ae8a7b5a1378f19d390e441e4
2: default
4: if CodecDelay/SeekPreRoll/DiscardPadding are present

2 months agomkvmuxer: fix DiscardPadding 15/70515/3
James Zern [Mon, 16 Jun 2014 19:31:38 +0000 (12:31 -0700)]
mkvmuxer: fix DiscardPadding

DiscardPadding is a signed int.
this change fixes 2 things:
- allows negative values for discard padding
- fixes cases where an unsigned value would be written such that on read
  the sign would be flipped

Change-Id: I9418da7a22c09768e02d5b61da8d01c2bccb5dee

2 months agoInclude crop elements when calculating size of Video element 29/70429/1
Sergey Ulanov [Fri, 6 Jun 2014 06:19:05 +0000 (23:19 -0700)]
Include crop elements when calculating size of Video element

Change acf788 added Crop* elements support, but they were not
added when calculating size of Video element.

Change-Id: I64495cc35406a28b86b40d915dbc291f45aa1263

2 months agomkvparser: fix DiscardPadding extraction 58/70358/1
James Zern [Fri, 30 May 2014 21:44:28 +0000 (14:44 -0700)]
mkvparser: fix DiscardPadding extraction

the element length was being read twice; the second attempt would
consume a portion of the discard padding field often failing due to
limitations in GetUIntLength.

Change-Id: Ibbe3f082e2d05460734a0e1f7d23f3c665e3f24b

2 months agomkvmuxer: fix style guide violations 39/70339/1
Vignesh Venkatasubramanian [Thu, 29 May 2014 15:30:30 +0000 (08:30 -0700)]
mkvmuxer: fix style guide violations

fix a few style guide violations in mkvmuxer.cpp

Change-Id: If800a5d6851f8ba4b904341fd054e1c2091e281e

2 months agoMerge "UUIDs can have their high bit set"
Vignesh Venkatasubramanian [Fri, 23 May 2014 16:01:20 +0000 (09:01 -0700)]
Merge "UUIDs can have their high bit set"

2 months agoAdd support for CropLeft, CropRight, CropTop and CropBottom elements. 48/70248/1
Sergey Ulanov [Thu, 22 May 2014 02:46:36 +0000 (19:46 -0700)]
Add support for CropLeft, CropRight, CropTop and CropBottom elements.

Change-Id: Ic5993a3e04b3eefccc3016fbe6b49d1e4a5fc05d

3 months agoMerge "muxer: codec_id is a mandatory element"
Vignesh Venkatasubramanian [Sun, 18 May 2014 19:48:29 +0000 (12:48 -0700)]
Merge "muxer: codec_id is a mandatory element"

3 months agomkvmuxer: Reject frames if invalid track number is passed. 00/70200/3
Vignesh Venkatasubramanian [Fri, 16 May 2014 20:42:13 +0000 (13:42 -0700)]
mkvmuxer: Reject frames if invalid track number is passed.

Reject frames if an invalid track number is passed. Also change sample_muxer
to reject files which have Block elements with invalid track numbers.

Fixes Issue #659: https://code.google.com/p/webm/issues/detail?id=659

Change-Id: Ie6cf39a409b68bb4d2261f308409ee0c36d5dd8e

3 months agomuxer: codec_id is a mandatory element 25/69925/2
Vignesh Venkatasubramanian [Tue, 29 Apr 2014 07:24:11 +0000 (00:24 -0700)]
muxer: codec_id is a mandatory element

codec_id element for a Track is mandatory and it does not have a default.
Rejecting the file if that happens.

Change-Id: I4fb0dfcd4c09eeabf22634db7fdf6ca818c93917

3 months agoUUIDs can have their high bit set 84/69484/2
Vignesh Venkatasubramanian [Fri, 16 May 2014 18:25:22 +0000 (11:25 -0700)]
UUIDs can have their high bit set

mkvparser::UnserializeUInt() assumes that unsigned values never have
their high bit set. This is too limiting for UUIDs. In addition, the
Chapters::Atom::Parse() method would truncate a "negative" 64-bit UUID
value to 32 bits and return the truncated value as a status code.
This value then might or might not be treated as an error by the caller
depending on whether the truncated value was itself negative.

Change-Id: I15624ac62d0b02691a1405ee6a5f7eb441b3bc48

3 months agomake Mkv(Reader|Writer)(FILE*) explicit 93/69993/1
James Zern [Fri, 2 May 2014 18:47:44 +0000 (11:47 -0700)]
make Mkv(Reader|Writer)(FILE*) explicit

Change-Id: I2c6e0df3049903f8ea53babeacffaa87f6c222b0

3 months agomkvparser: fix a bunch of windows warnings 73/69973/2
Vignesh Venkatasubramanian [Thu, 1 May 2014 18:57:30 +0000 (11:57 -0700)]
mkvparser: fix a bunch of windows warnings

fix a bunch of windows warnings in parser.

Change-Id: Ia9a03879540595306d8fa2b90ceb9b3b5b0d93a6

3 months agoMerge "clang-format on mkvparser.[ch]pp"
Vignesh Venkatasubramanian [Thu, 1 May 2014 18:50:03 +0000 (11:50 -0700)]
Merge "clang-format on mkvparser.[ch]pp"

3 months agoclang-format on mkvparser.[ch]pp 38/69738/3
Vignesh Venkatasubramanian [Mon, 14 Apr 2014 17:31:50 +0000 (10:31 -0700)]
clang-format on mkvparser.[ch]pp

Conformance of mkvparser.[ch]pp to Google C++ style guide.

Change-Id: I459adac3da1496b432b71b3580b4dbd63037df2b

3 months agoclang-format re-run. 27/69927/2
Vignesh Venkatasubramanian [Tue, 29 Apr 2014 07:35:56 +0000 (00:35 -0700)]
clang-format re-run.

Re-running clang-format to take into account the recent change in it.
(https://gerrit.chromium.org/gerrit/#/c/69926/ )

Change-Id: Ie11afcaaf07a1967f65fd765f1a7c7112c85875a

3 months agoChange AlignTrailingComments to false in .clang-format 26/69926/1
Vignesh Venkatasubramanian [Tue, 29 Apr 2014 07:38:14 +0000 (00:38 -0700)]
Change AlignTrailingComments to false in .clang-format

AlignTrailingComments set to true seems to be causing some unwanted
alignments. Turning it off.

Change-Id: I5fd99db90b00c76cc7891f2cd1c80ec69ae97697

3 months agoMerge "muxer: Reject file if TrackType is never specified"
Vignesh Venkatasubramanian [Tue, 29 Apr 2014 07:18:55 +0000 (00:18 -0700)]
Merge "muxer: Reject file if TrackType is never specified"

3 months agoMerge "clang-format on mkvmuxertypes.hpp and webmids.hpp"
Vignesh Venkatasubramanian [Mon, 28 Apr 2014 17:40:43 +0000 (10:40 -0700)]
Merge "clang-format on mkvmuxertypes.hpp and webmids.hpp"

3 months agomuxer: Reject file if TrackType is never specified 99/69899/2
Vignesh Venkatasubramanian [Sat, 26 Apr 2014 10:14:05 +0000 (03:14 -0700)]
muxer: Reject file if TrackType is never specified

According to matroska specification, TrackType is a mandatory element without a
default value [1]. But we have been producing invalid matroska files when
TrackType is never specified because we write 0 by default.

This patch will reject writing a track without specifying the TrackType value.
Specifically, this path will be triggered when Segment::AddTrack() is called
but there is no subsequent call to Track::set_type().

[1] http://www.matroska.org/technical/specs/index.html#TrackType

Fixes issue #769: https://code.google.com/p/webm/issues/detail?id=769

Change-Id: I4d75d169fd96c7e1fad278561f0e7a3e1135989c

3 months agoMerge "clang-format on webvttparser.(cc|h)"
Vignesh Venkatasubramanian [Sat, 26 Apr 2014 05:19:26 +0000 (22:19 -0700)]
Merge "clang-format on webvttparser.(cc|h)"

3 months agoclang-format on webvttparser.(cc|h) 49/69749/2
Vignesh Venkatasubramanian [Mon, 14 Apr 2014 19:12:35 +0000 (12:12 -0700)]
clang-format on webvttparser.(cc|h)

Conformance of webvttparser.(cc|h) to Google C++ style guide.

Change-Id: I19610c5795c0bd2446c07a6c2abde58c3286b2ea

3 months agoMerge "clang-format on mkvmuxerutil.[ch]pp"
Vignesh Venkatasubramanian [Sat, 26 Apr 2014 05:09:48 +0000 (22:09 -0700)]
Merge "clang-format on mkvmuxerutil.[ch]pp"

3 months agoMerge "clang-format on mkvwriter.[ch]pp"
Vignesh Venkatasubramanian [Sat, 26 Apr 2014 05:09:17 +0000 (22:09 -0700)]
Merge "clang-format on mkvwriter.[ch]pp"

3 months agoMerge "clang-format on mkvreader.[ch]pp"
Vignesh Venkatasubramanian [Sat, 26 Apr 2014 05:09:02 +0000 (22:09 -0700)]
Merge "clang-format on mkvreader.[ch]pp"

3 months agoMerge "clang-format on sample.cpp"
Vignesh Venkatasubramanian [Sat, 26 Apr 2014 05:08:38 +0000 (22:08 -0700)]
Merge "clang-format on sample.cpp"

3 months agoMerge "clang-format on sample_muxer.cpp"
Vignesh Venkatasubramanian [Sat, 26 Apr 2014 05:08:27 +0000 (22:08 -0700)]
Merge "clang-format on sample_muxer.cpp"

3 months agoMerge "clang-format on sample_muxer_metadata.(cc|h)"
Vignesh Venkatasubramanian [Sat, 26 Apr 2014 05:07:59 +0000 (22:07 -0700)]
Merge "clang-format on sample_muxer_metadata.(cc|h)"

3 months agoMerge "clang-format on vttreader.cc"
Vignesh Venkatasubramanian [Sat, 26 Apr 2014 05:07:46 +0000 (22:07 -0700)]
Merge "clang-format on vttreader.cc"

3 months agoMerge "clang-format on vttdemux.cc"
Vignesh Venkatasubramanian [Sat, 26 Apr 2014 05:06:42 +0000 (22:06 -0700)]
Merge "clang-format on vttdemux.cc"

4 months agoclang-format on mkvreader.[ch]pp 43/69743/2
Vignesh Venkatasubramanian [Mon, 14 Apr 2014 19:03:32 +0000 (12:03 -0700)]
clang-format on mkvreader.[ch]pp

Conformance of mkvreader.[ch]pp to Google C++ style guide.

Change-Id: I9928a1a7daf9afaa30355b17b3eeeb2966626031

4 months agoclang-format on mkvmuxertypes.hpp and webmids.hpp 52/69752/2
Vignesh Venkatasubramanian [Mon, 14 Apr 2014 19:17:02 +0000 (12:17 -0700)]
clang-format on mkvmuxertypes.hpp and webmids.hpp

Conformance of mkvmuxertypes.hpp and webmids.hpp to Google C++ style guide.

Change-Id: Ib5e524f75f04ae6f6f5f24600d70b8448d01964c

4 months agoclang-format on sample_muxer.cpp 45/69745/2
Vignesh Venkatasubramanian [Mon, 14 Apr 2014 19:06:47 +0000 (12:06 -0700)]
clang-format on sample_muxer.cpp

Conformance of sample_muxer.cpp to Google C++ style guide.

Change-Id: I8d7ef884fbaac8ebbf12fc3e3215532ced5ac29b

4 months agoclang-format on vttdemux.cc 50/69750/2
Vignesh Venkatasubramanian [Mon, 14 Apr 2014 19:14:06 +0000 (12:14 -0700)]
clang-format on vttdemux.cc

Conformance of vttdemux.cc to Google C++ style guide.

Change-Id: Id8838ddec286f935c8a3c1b78d9d9027b467165f

4 months agoclang-format on dumpvtt.cc 51/69751/1
Vignesh Venkatasubramanian [Mon, 14 Apr 2014 19:15:04 +0000 (12:15 -0700)]
clang-format on dumpvtt.cc

Conformance of dumpvtt.cc to Google C++ style guide.

Change-Id: I5fa11e79e95e61c1a1d923ba76ac7ae343c9c8e4

4 months agoclang-format on vttreader.cc 47/69747/1
Vignesh Venkatasubramanian [Mon, 14 Apr 2014 19:11:27 +0000 (12:11 -0700)]
clang-format on vttreader.cc

Conformance of vttreader.cc to Google C++ style guide.

Change-Id: Id5d2baf0977bca9ab938831cf6e6204acd4ed647

4 months agoclang-format on sample_muxer_metadata.(cc|h) 46/69746/1
Vignesh Venkatasubramanian [Mon, 14 Apr 2014 19:09:20 +0000 (12:09 -0700)]
clang-format on sample_muxer_metadata.(cc|h)

Conformance of sample_muxer_metadata.(cc|h) to Google C++ style guide.

Change-Id: I500a8cdbc443981ecae6ac2a7d8de7cab1c72e28

4 months agoclang-format on sample.cpp 44/69744/1
Vignesh Venkatasubramanian [Mon, 14 Apr 2014 19:05:21 +0000 (12:05 -0700)]
clang-format on sample.cpp

Conformance of sample.cpp to Google C++ style guide.

Change-Id: Icb6bfce6af5df04775a086e080e6fa742c6d68f9

4 months agoclang-format on mkvwriter.[ch]pp 37/69737/1
Vignesh Venkatasubramanian [Mon, 14 Apr 2014 17:30:33 +0000 (10:30 -0700)]
clang-format on mkvwriter.[ch]pp

Conformance of mkvwriter.[ch]pp to Google C++ style guide.

Change-Id: I997545b366277b7f1235b9fa7cc30a4969098553

4 months agoclang-format on mkvmuxerutil.[ch]pp 36/69736/1
Vignesh Venkatasubramanian [Mon, 14 Apr 2014 17:28:59 +0000 (10:28 -0700)]
clang-format on mkvmuxerutil.[ch]pp

Conformance of mkvmuxerutil.[ch]pp to Google C++ style guide.

Change-Id: Ib66b73adb2682cd5560f6f363fc04d75ab3815c6

4 months agoclang-format on mkvmuxer.[ch]pp 52/69552/2
Vignesh Venkatasubramanian [Fri, 11 Apr 2014 18:41:01 +0000 (11:41 -0700)]
clang-format on mkvmuxer.[ch]pp

Conformance of mkvmuxer.[ch]pp to Google C++ style guide.

Change-Id: I9bcd14710adbad4f32aa1a6be2ea7e40fb715e91

4 months agoUpdate .clang-format to allow short functions in one line 00/69600/1
Vignesh Venkatasubramanian [Fri, 11 Apr 2014 18:24:46 +0000 (11:24 -0700)]
Update .clang-format to allow short functions in one line

Update .clang-format so that it allows short functions and constructors in a
single line if it fits.

Change-Id: I60788089fc7a4e2f4c4df6947368ebc0f3fa8c49

4 months agoMerge "Add support for DateUTC and DefaultDuration in MKV Muxer."
Tom Finegan [Thu, 10 Apr 2014 23:13:21 +0000 (16:13 -0700)]
Merge "Add support for DateUTC and DefaultDuration in MKV Muxer."

4 months agoMerge "Add .clang-format"
Vignesh Venkatasubramanian [Wed, 9 Apr 2014 18:55:47 +0000 (11:55 -0700)]
Merge "Add .clang-format"

4 months agoAdd .clang-format 27/69527/4
Vignesh Venkatasubramanian [Wed, 9 Apr 2014 18:36:13 +0000 (11:36 -0700)]
Add .clang-format

Add .clang-format file so that it can be used to maintain
the same style throughout the library.

Change-Id: I22bd21055f565a886b5a880856810f4b35b22cce

4 months agoAdd support for DateUTC and DefaultDuration in MKV Muxer. 39/69539/2
Sergey Ulanov [Wed, 9 Apr 2014 04:44:14 +0000 (21:44 -0700)]
Add support for DateUTC and DefaultDuration in MKV Muxer.

BUG=crbug.com/321825

Change-Id: I5ff8c5b9fd4e6be23ef2bc91a7a4ba021db6441f

4 months agoFixing a warning in mkvmuxerutil.cpp 29/69529/2
Vignesh Venkatasubramanian [Tue, 8 Apr 2014 23:05:39 +0000 (16:05 -0700)]
Fixing a warning in mkvmuxerutil.cpp

Changing a constant from int32 to uint64 to fix a warning in
mkmuxerutil.cpp

Change-Id: Ifd9f76ea4be848eff4d98a797d2d4dcd22f11478

4 months agoAdding support for user file ownership in MkvReader 53/69453/5
Vignesh Venkatasubramanian [Thu, 3 Apr 2014 06:25:55 +0000 (23:25 -0700)]
Adding support for user file ownership in MkvReader

Adding a constructor to MkvReader that will enable user application
ownership of the file.

Change-Id: I10f8f71715392df3d4b78c7c11076e19c30e1af6

5 months agomkvmuxerutil: Getting rid of strict-aliasing warning 47/69247/2
Vignesh Venkatasubramanian [Fri, 14 Mar 2014 21:37:35 +0000 (14:37 -0700)]
mkvmuxerutil: Getting rid of strict-aliasing warning

Replacing a reinterpret_cast from float& to uint32& with a union to get rid of
"dereferencing type-punned pointer will break strict-aliasing rules" warning.
This warning is produced on passing -O3 in gcc.

Change-Id: Ie942597f418e3659e3ff29a909c43dd99266c04d

5 months agoSupport user ownership of files in MkvWriter 10/69210/2
Vignesh Venkatasubramanian [Wed, 12 Mar 2014 19:18:48 +0000 (12:18 -0700)]
Support user ownership of files in MkvWriter

Overloading MkvWriter's constructor so that it can wrap a user owned
FILE pointer. Doing this so that applications which handle the file opening
and closing by themselves don't have to have their own implementation of the
IMkvWriter interface.

Change-Id: I69c57f3e6927ea13b616c425e3b5f179d2e69215

5 months agoMerge "vttdemux: Add VS2013 project."
Tom Finegan [Mon, 10 Mar 2014 18:49:55 +0000 (11:49 -0700)]
Merge "vttdemux: Add VS2013 project."

5 months agovttdemux: Add VS2013 project. 63/69163/2
Tom Finegan [Fri, 7 Mar 2014 18:35:48 +0000 (10:35 -0800)]
vttdemux: Add VS2013 project.

And add it to the libwebm VS2013 solution.

Change-Id: I9957b47b291722bc0e5eb435795252cf780f968b

5 months agoAdd VS2010 DLL build configurations for vttdemux. 70/69170/1
Tom Finegan [Sat, 8 Mar 2014 00:53:47 +0000 (16:53 -0800)]
Add VS2010 DLL build configurations for vttdemux.

- Link to libwebm instead of building sources.
- Add missing dependency on libwebm.

Change-Id: I8f977f767f6104d07f716c7c5ebecda249c202f2

5 months agoMerge "mkvmuxer: Silence MSVC warning that suggests making code non-portable."
Tom Finegan [Fri, 7 Mar 2014 00:40:59 +0000 (16:40 -0800)]
Merge "mkvmuxer: Silence MSVC warning that suggests making code non-portable."

5 months agoMerge "vttdemux: created win32 project"
Matthew Heaney [Thu, 6 Mar 2014 22:36:03 +0000 (14:36 -0800)]
Merge "vttdemux: created win32 project"

5 months agovttdemux: created win32 project 46/69146/3
Matthew Heaney [Fri, 28 Feb 2014 20:33:58 +0000 (12:33 -0800)]
vttdemux: created win32 project

Change-Id: I2a1ce12bc374f7493c50021cbe4fc4a4716a6829

5 months agoAdd Visual Studio 2013 projects. 11/69111/3
Tom Finegan [Wed, 5 Mar 2014 00:42:11 +0000 (16:42 -0800)]
Add Visual Studio 2013 projects.

Basically identical to the 2010 projects, but with platform
toolset set to VS 2013, and output files/paths updated to
avoid collisions with VS 2010 output.

Change-Id: I02b827288319db22eeb0beeed71261dc0673d6ef

5 months agomkvmuxer: Silence MSVC warning that suggests making code non-portable. 12/69112/2
Tom Finegan [Wed, 5 Mar 2014 00:46:33 +0000 (16:46 -0800)]
mkvmuxer: Silence MSVC warning that suggests making code non-portable.

Change-Id: I19bfa107bf01b1e10ac5a43040d409f4d620f4a7

5 months agomkvparser: Silence MSVC warning that suggests making code non-portable. 52/68952/1
Tom Finegan [Tue, 25 Feb 2014 17:36:32 +0000 (09:36 -0800)]
mkvparser: Silence MSVC warning that suggests making code non-portable.

Change-Id: Ia8b4cd39711105a5b3462b512160f9250e8a5966

6 months agoMerge "mkvparser: Fix unused variable warnings when NDEBUG is defined."
Tom Finegan [Thu, 6 Feb 2014 04:56:22 +0000 (20:56 -0800)]
Merge "mkvparser: Fix unused variable warnings when NDEBUG is defined."

6 months agomkvparser: Fix unused variable warnings when NDEBUG is defined. 72/68672/3
Tom Finegan [Thu, 6 Feb 2014 02:50:46 +0000 (18:50 -0800)]
mkvparser: Fix unused variable warnings when NDEBUG is defined.

Change-Id: I98b1121768e5650c2184acbf35636a15e9241148

6 months agomkvparser/sample: Fix incorrect printf format specifiers. 73/68673/1
Tom Finegan [Thu, 6 Feb 2014 02:50:00 +0000 (18:50 -0800)]
mkvparser/sample: Fix incorrect printf format specifiers.

Change-Id: I8b61f429f7bb1da7b3def612f6413895f8cb945d

6 months agoMerge "Fix mingw build."
Tom Finegan [Fri, 24 Jan 2014 19:13:56 +0000 (11:13 -0800)]
Merge "Fix mingw build."

6 months agoFix mingw build. 97/68497/3
Tom Finegan [Fri, 24 Jan 2014 06:31:42 +0000 (22:31 -0800)]
Fix mingw build.

Change-Id: Iec913e0cf5849bec459e98df59b0e0bd8e02965b

6 months agoMerge "mkvparser: Add basic cues walking to sample."
Tom Finegan [Fri, 24 Jan 2014 06:29:12 +0000 (22:29 -0800)]
Merge "mkvparser: Add basic cues walking to sample."

6 months agoMerge "mkvmuxer: Add DiscardPadding support."
Tom Finegan [Thu, 23 Jan 2014 23:34:12 +0000 (15:34 -0800)]
Merge "mkvmuxer: Add DiscardPadding support."

6 months agomkvparser: Add basic cues walking to sample. 90/68490/4
Tom Finegan [Thu, 23 Jan 2014 23:19:32 +0000 (15:19 -0800)]
mkvparser: Add basic cues walking to sample.

Change-Id: Ia90e760f04083fa60b44f4d372e118474fc59fee

6 months agomkvparser/mkvreader/sample: CRLF -> LF 04/68504/1
Tom Finegan [Thu, 23 Jan 2014 18:57:06 +0000 (10:57 -0800)]
mkvparser/mkvreader/sample: CRLF -> LF

Change-Id: Id4a5bea411d104289548b276d0e996352cc816b1

6 months agomkvparser sample: clang-formatify 03/68503/5
Tom Finegan [Thu, 23 Jan 2014 18:38:20 +0000 (10:38 -0800)]
mkvparser sample: clang-formatify

Exception asterisk placement, which was left as before to match the rest of
libwebm.

Change-Id: I3947acc936cca68df72a5bcd8dec17ed40658ba6

6 months agomkvmuxer: Add DiscardPadding support. 21/68421/8
Tom Finegan [Thu, 23 Jan 2014 07:26:26 +0000 (23:26 -0800)]
mkvmuxer: Add DiscardPadding support.

Also a bit of refactoring to remove some duplicate code.

Change-Id: Ia3d17461ae5f6275534e06c31f348bdfc4bba169

6 months agoMinor clean up: msvc warnings/include order/comment text. 89/68489/2
Tom Finegan [Wed, 22 Jan 2014 22:03:40 +0000 (14:03 -0800)]
Minor clean up: msvc warnings/include order/comment text.

Change-Id: I2b54abcb9f535715d8713930942447c0b0f5f862

7 months agoMerge "sample_muxer: Silence MSVC warning."
Tom Finegan [Thu, 16 Jan 2014 21:01:54 +0000 (13:01 -0800)]
Merge "sample_muxer: Silence MSVC warning."

7 months agoAdd license header in sample_muxer_metadata.cc. 29/68429/1
Sergey Ulanov [Thu, 16 Jan 2014 19:31:13 +0000 (11:31 -0800)]
Add license header in sample_muxer_metadata.cc.

This is required by the checklicenses.py script in chromium.

Change-Id: Ice6155b1332adcbda74532e558438083212e1511

7 months agosample_muxer: Silence MSVC warning. 19/68419/1
Tom Finegan [Wed, 15 Jan 2014 23:00:59 +0000 (15:00 -0800)]
sample_muxer: Silence MSVC warning.

Disable C4996; A warning that encourages users to make their code
require the "secure" variant of functions like tmpnam(). Doing so
just happens to make the resulting code require the MSVC runtime.

Change-Id: I0329ce3aa93da060110d24a4bc7f48a7f9c87227

7 months agoMerge "mkvmuxer: Fix warnings."
Tom Finegan [Wed, 15 Jan 2014 22:36:06 +0000 (14:36 -0800)]
Merge "mkvmuxer: Fix warnings."

7 months agomkvmuxer: CRLF->LF webmids.h. 13/68413/3
Tom Finegan [Wed, 15 Jan 2014 20:37:15 +0000 (12:37 -0800)]
mkvmuxer: CRLF->LF webmids.h.

Match the other muxer sources. Also fix declaration order
of elements in the track grouping.

Change-Id: I06fdb98eb42815af96e80e33379ef73d41b470b3

7 months agomkvmuxer: Fix warnings. 12/68412/1
Tom Finegan [Wed, 15 Jan 2014 20:14:27 +0000 (12:14 -0800)]
mkvmuxer: Fix warnings.

Remove useless spam from build output.

Change-Id: Iae200d32cda1fc11cd471772725345d0979e97bc

7 months agomkvmuxer: Add support for VP9 and Opus tracks. 50/68350/3
Tom Finegan [Thu, 9 Jan 2014 22:56:15 +0000 (14:56 -0800)]
mkvmuxer: Add support for VP9 and Opus tracks.

Also make codec ID constants really constant.

Change-Id: I951d25e83ce507afb1ca475e2d5dbfe6402f3d61

7 months agomkvmuxer: Add support for writing CodecDelay and SeekPreRoll elements. 46/68346/2
Tom Finegan [Thu, 9 Jan 2014 20:03:24 +0000 (12:03 -0800)]
mkvmuxer: Add support for writing CodecDelay and SeekPreRoll elements.

Change-Id: Iad8c671b76c4b97abad58946df7f3c0ebe6cb01b

7 months agomkvparser: Add support for CodecDelay, DiscardPadding, and SeekPreRoll elements. 10/68310/3
Tom Finegan [Thu, 9 Jan 2014 01:29:44 +0000 (17:29 -0800)]
mkvparser: Add support for CodecDelay, DiscardPadding, and SeekPreRoll elements.

Change-Id: Ic9e6ebcc2ba533f8cc1ab933d0bf55782ccab932

9 months agoInitializing last_block_duration_ to zero. 08/67708/1
Vignesh Venkatasubramanian [Wed, 30 Oct 2013 18:13:38 +0000 (11:13 -0700)]
Initializing last_block_duration_ to zero.

Adding a missing initialization.

Change-Id: Id4223765968745a46653139b2a9f1537102c3618

9 months agoMerge "Fixing a bug in Chapter::Clear"
Vignesh Venkatasubramanian [Fri, 25 Oct 2013 18:13:05 +0000 (11:13 -0700)]
Merge "Fixing a bug in Chapter::Clear"

9 months agoAdding set_uid to Chapter Class 36/67636/2
Vignesh Venkatasubramanian [Fri, 25 Oct 2013 16:16:40 +0000 (09:16 -0700)]
Adding set_uid to Chapter Class

Adding set_uid function to the Chapter class. It can be used to
achieve deterministic output from the muxer. For example, for files
with only one segment, track number or track id can be used for
chapter uid.

Change-Id: I2e94c6150e32cb9019a6623af7919acc099aa20d

9 months agoFixing a bug in Chapter::Clear 35/67635/1
Vignesh Venkatasubramanian [Fri, 25 Oct 2013 16:12:11 +0000 (09:12 -0700)]
Fixing a bug in Chapter::Clear

Replacing a typo'd < with > in Chapter::Clear of mkvmuxer.

Change-Id: I8784d19dbca5a8a62c92ed14e2efa61d96c5375f

9 months agoAdding AddLastFrame to Segment 74/67574/5
Vignesh Venkatasubramanian [Mon, 21 Oct 2013 19:29:57 +0000 (12:29 -0700)]
Adding AddLastFrame to Segment

Adding AddLastFrame function to the Segment muxer so that the duration
of the Segment can be accurately calculated given the last Block's duration.
We now provide an AddLastFrame function which will take duration of that block
as a parameter. When this function is used to add the last frame, the duration
of it is taken into account when computing the Segment's duration.

Change-Id: I3e1456299fefa1a4dd6d845c47292951d1ce3ad0

12 months agoAdd dependency checks to Makefile. 11/66211/2 libwebm-1.0.0.26
Tom Finegan [Mon, 19 Aug 2013 18:03:45 +0000 (11:03 -0700)]
Add dependency checks to Makefile.

Avoid unfortunate things like breaking the library because the make file
was not previously checking dependencies.

Change-Id: Iab20c3cfa0d1475dfb5c54127646b351df1c4c50

12 months agoIgnore dependency files and build products. 10/66210/1
Tom Finegan [Mon, 19 Aug 2013 18:02:23 +0000 (11:02 -0700)]
Ignore dependency files and build products.

Change-Id: I4e9da395b8e06a696e77389d0bc863b8837eceee

12 months agoFix mkvmuxer::Track::set_uid(). 09/66209/1
Tom Finegan [Mon, 19 Aug 2013 18:01:49 +0000 (11:01 -0700)]
Fix mkvmuxer::Track::set_uid().

Modifying const variables doesn't work.

Change-Id: Ie1aa9ce1779002973ec93f808ba5e86c569b9df4

12 months agoAdd set_uid() to mkvmuxer::Track. 03/66103/1
Tom Finegan [Fri, 16 Aug 2013 17:49:28 +0000 (10:49 -0700)]
Add set_uid() to mkvmuxer::Track.

Allow users of libwebm's MKV muxer to control the Track UID. This,
for example, allows creation of tests that rely on checksum comparisons
to verify output from the library.

Change-Id: I8b052e6dd5af734d76122b2a1b6b16382ffba214

13 months agoHandling chunking_ being set to true on repositioning cues. 25/60225/2
Vignesh Venkatasubramanian [Thu, 27 Jun 2013 17:24:56 +0000 (10:24 -0700)]
Handling chunking_ being set to true on repositioning cues.

CopyAndMoveCuesBeforeClusters should return false (fail gracefully)
if chunking_ is set to true.

Change-Id: Idf4d573e3f15b59c25ee0774a7875e5dfda9c02e

13 months agoUpdate Segment size if Cues size changes on repositioning 05/59805/1
Vignesh Venkatasubramanian [Mon, 24 Jun 2013 18:55:53 +0000 (11:55 -0700)]
Update Segment size if Cues size changes on repositioning

Files created with Segment::CopyAndMoveCuesBeforeClusters can't be parsed by
libwebm because the Segment size was not updated to account for the change
in Cue size. Fixing that.

Change-Id: I993f63e5c279f131cd39c54bee40163da00b8cbd

14 months agoRepositing Cues before Clusters 93/58593/2
Vignesh Venkatasubramanian [Thu, 13 Jun 2013 22:25:03 +0000 (15:25 -0700)]
Repositing Cues before Clusters

A whole new approach to repositioning Cues before Clusters. This
patchset adds a new function CopyAndMoveCuesBeforeClusters to the
Segment class. This function should be called after
Segment::Finalize() to obtain a copy of the same output file with
Cues positioned before the Clusters.

Removing everything else that was added to accomplish the same in
the previous few commits.

Also, adding std:: qualifier to one of the variables in
sample_muxer_metadata which was missed accidentally in the previous
commit.

Change-Id: I2810d06a6251325add2f5e54d32d1da6e2fe143f

14 months agoFully qualifiying usage of std::string 96/58396/1
Vignesh Venkatasubramanian [Wed, 12 Jun 2013 18:23:35 +0000 (11:23 -0700)]
Fully qualifiying usage of std::string

Replacing "using std::string" with fully qualified namespace on
each occurance of string in sample_muxer_metadata.cc and
webvttparser.cc.

Also fixing a formatting nit in mkvwriteeofreader.cpp

Change-Id: Icf713f9e489fbdc9af14e83d0cb7ba2e89e65ab4

14 months agoChanging IMkvReadableWriter to IMkvWriteEOFReader 18/58218/2
Vignesh Venkatasubramanian [Tue, 11 Jun 2013 19:32:21 +0000 (12:32 -0700)]
Changing IMkvReadableWriter to IMkvWriteEOFReader

Changing the IMkvReadableWriter interface to IMkvWriteEOFReader.
Also changing the default implementation.

Change-Id: Id37ffd7ef0af2ff7a392fb4fb0b1b134664ab20f

14 months agoAdding mkvreadablewriter 71/57371/1
Vignesh Venkatasubramanian [Mon, 3 Jun 2013 21:26:20 +0000 (14:26 -0700)]
Adding mkvreadablewriter

Adding mkvreadablewriter files which was missed from previous commit.

Change-Id: I84363ca897ebe758a42538c179ad60c2adfe9247

14 months agoSupport for placing Cues before Clusters 45/57045/7
Vignesh Venkatasubramanian [Fri, 24 May 2013 22:50:13 +0000 (15:50 -0700)]
Support for placing Cues before Clusters

Adding support for placing Cues element before the Cluster element. We
recompute the new offsets using a recursive algorithm and update the Cues and
Seek Heads with the updates offsets.

Change-Id: I038f1a403b1defa853b9026bd3e48f4ad1006866

15 months agoMerge "Fixing mistyped element name in mkvmuxerutil"
Vignesh Venkatasubramanian [Tue, 21 May 2013 00:11:11 +0000 (17:11 -0700)]
Merge "Fixing mistyped element name in mkvmuxerutil"