webm/libwebm.git
6 weeks agomkvparser: Dead code removal. 54/74354/1 master
Tom Finegan [Wed, 15 Apr 2015 06:35:10 +0000 (23:35 -0700)]
mkvparser: Dead code removal.

Change-Id: Ic4cf359ecc80641b97f40c20639ce9c32b34077d

6 weeks agoChange assertions to checks when preloading Cues 33/74333/3
Leonel Togniolli [Sat, 11 Apr 2015 00:36:41 +0000 (01:36 +0100)]
Change assertions to checks when preloading Cues

If a malformed webm file contains invalid information on the Cues
the segment, the parser would assert.

Instead, now it ignores the Cues and skips the segment.

Change-Id: I9270f6a0935ce9e9a3765a5f324ae542c1ade1c7

6 weeks agoFix track transversal when listing Cues on sample 19/74319/2
Leonel Togniolli [Thu, 9 Apr 2015 02:48:38 +0000 (03:48 +0100)]
Fix track transversal when listing Cues on sample

It could skip tracks or crash if track numbers were non-sequential or tracks were missing.

Change-Id: I485bd4c14c73500775f2944b4486f9a5e154a5e8

6 weeks agoTweak .gitignore so git status is clean after checkout and build: 14/74314/1
Leonel Togniolli [Wed, 8 Apr 2015 23:38:17 +0000 (00:38 +0100)]
Tweak .gitignore so git status is clean after checkout and build:
- added missing underscore to sample_muxer
- added cmake and make related files

Change-Id: Id9a6f12be83d28c95941098b57b61a7a11510f1b

2 months agoMakefile.unix: s/samplemuxer/sample_muxer/ 18/74118/1
James Zern [Wed, 18 Mar 2015 22:31:46 +0000 (15:31 -0700)]
Makefile.unix: s/samplemuxer/sample_muxer/

this matches the target name used in CMakeLists.txt and the writing app
stored in the output file

Change-Id: I161675c6bff8ebfa041331a329589441d3874514

2 months agoAdd support to parse stereo mode, display width and display height in mkvparser 57/74057/2
Sasi Inguva [Thu, 12 Mar 2015 07:09:02 +0000 (00:09 -0700)]
Add support to parse stereo mode, display width and display height in mkvparser

Change-Id: I7ff99275b70e96b84601c32836f1b79f95fcf0d4

2 months agoparser: Fix bug in Chapters::Atom::Parse() 59/73959/1
Vignesh Venkatasubramanian [Tue, 3 Mar 2015 20:08:28 +0000 (12:08 -0800)]
parser: Fix bug in Chapters::Atom::Parse()

Reading the UID is considered to be failed only if status is < 0
and not the value read.

Change-Id: I88fee3aa5b8c323d099930a6823406c012b70f81

2 months agocmake: Set library and project name the proper way on Windows. 96/73896/1
Tom Finegan [Mon, 2 Mar 2015 20:43:56 +0000 (12:43 -0800)]
cmake: Set library and project name the proper way on Windows.

Revert previous hack and use target properties to correct project
and library names.

Change-Id: Ib35da1cedcedf86f3f020d879cd39199fd236572

2 months agoSet library name to match Windows expectations. 71/73871/1
Tom Finegan [Wed, 25 Feb 2015 23:37:05 +0000 (15:37 -0800)]
Set library name to match Windows expectations.

Back to libwebm.lib from webm.lib.

Change-Id: I6ced362c987a7b5d3d56365a1ed53de7bf9f849b

2 months agoFix CMakefile to generate libwebm.a 68/73868/1
Vignesh Venkatasubramanian [Wed, 25 Feb 2015 22:04:04 +0000 (14:04 -0800)]
Fix CMakefile to generate libwebm.a

The existing CMakeLists.txt ends up generating a static library
with name "liblibwebm.a" rather than "libwebm.a". This patch fixes
it.

Change-Id: I4dabac5158530714a38045b8af29e75ade0a939e

3 months agoAdd CMakeLists.txt and msvc_runtime.cmake. 72/73772/5
Tom Finegan [Fri, 13 Feb 2015 19:23:40 +0000 (11:23 -0800)]
Add CMakeLists.txt and msvc_runtime.cmake.

- These files facilitate project/makefile generation.
- Remove old Visual Studio projects.
- Rename Makefile to Makefile.unix.

Change-Id: If786edd75d44c462538526c286eccc5cbf15d828

3 months agoparser: Fix memory leak in Chapter parsing 05/73705/2
Vignesh Venkatasubramanian [Fri, 6 Feb 2015 22:51:42 +0000 (14:51 -0800)]
parser: Fix memory leak in Chapter parsing

Fix a memory leak in parsing Chapters element.

Change-Id: I95324299014174d3f0926d96022eeb747b07d1a7

3 months agomkvmuxer: Fix MoveCuesBeforeClustersHelper recursive call. 43/73643/1
Vignesh Venkatasubramanian [Tue, 3 Feb 2015 02:34:18 +0000 (18:34 -0800)]
mkvmuxer: Fix MoveCuesBeforeClustersHelper recursive call.

The third parameter of the MoveCuesBeforeClustersHelper recursive function
should always be the size of the cues element without the master element's size
(i.e.) it should be the sum of size of all Cue Points. This way, the changes in
the Length of the master element itself will be computed correctly.

Change-Id: I05ff1606fb74168f80ffed81fd3c0de3f237c579

4 months agoallow subtitle tracks with ContentEncodings 74/73474/1
Lajos Molnar [Tue, 13 Jan 2015 20:41:04 +0000 (12:41 -0800)]
allow subtitle tracks with ContentEncodings

This is allowed by matroska spec

Change-Id: I1842b6e7c6bab4ba0f86938bbe6b110be0c5435f

7 months agoDoLoadCluster: tolerate empty clusters 01/71701/2
James Zern [Wed, 1 Oct 2014 05:51:47 +0000 (22:51 -0700)]
DoLoadCluster: tolerate empty clusters

previously only empty clusters of known size were accepted; with
clusters of unknown size the cluster has been successfully parsed and a
working copy of the file position updated, so parsing can continue.
clusters of this type are discarded as clusters of known size currently
are.

Change-Id: I3ef848768519ab7f1887a11629c50af72249cead

9 months agoUpdate PATENTS to reflect s/VP8/WebM/g 61/71161/1
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

10 months 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

10 months 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

11 months 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

11 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

11 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

11 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

11 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

12 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"

12 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

12 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"

12 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

12 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

12 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

12 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

12 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

12 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"

12 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

12 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

12 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

12 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"

12 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"

13 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

13 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)"

13 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

13 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"

13 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"

13 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"

13 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"

13 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"

13 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)"

13 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"

13 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"

13 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

13 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

13 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

13 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

13 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

13 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

13 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

13 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

13 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

13 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

13 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

13 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

13 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."

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

13 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

13 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

13 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

13 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

14 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

14 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

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

14 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

14 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

14 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."

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

14 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

14 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

14 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

14 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

15 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."

15 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

15 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

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

16 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

16 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."

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

16 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

16 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

16 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

16 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

16 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

16 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."

16 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

16 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

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

16 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

16 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

16 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

16 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

16 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

18 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

19 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"