vttdemux is a tool for demuxing a webm file containing
WebVTT metadata tracks, extracting the embedded metadata
from each track and storing it as a standalone WebVTT file.
Change-Id: I8897b3dc502c49c92f5b79925939baa5a9490aaa
Formerly, it was only possible to create instances of
the Track subclasses, VideoTrack and AudioTrack. However,
we now populate WebM files with WebVTT metadata blocks,
so we must allow for a third kind of track object.
We now enable instances of type Track to be created,
by providing a new factory function, Track::Create, and
making all Track methods non-pure and with a generic
implementation.
Change-Id: I7d4c965eb566b9fc2f5ceefe1d43723cf8c1e5f0
Previously the Parser class had an internal function to parse
the character stream into separate lines. This functionality
was separated out into its own class, LineReader, in order
to make this functionality available to clients too.
Change-Id: Ic5a1b0b73d7a253cf21cb6b4804b4941fd69c8ab
library.
I'm building two different object files now: the ones for
libwebm.a are compiled normally (*_a.o), and the ones for
libwebm.so are compiled with -fPIC and linked with -shared
(*_so.o).
Change-Id: I76471ab225a006c7e169bc0d69df9a0731ff6681
- Segment::CreateInstance was treating the available data as EOF
and returning errors.
- Added a check for potential underflow if the segment was not the
first element after the EBML header.
Change-Id: I481bf0eea71eeb3def3bf54ec251be0b2ae13536
A few adjustments we made such that the webvttparser
now conforms more closely to the Google C++ style guide.
Change-Id: Iefb2242678ceea6ab5b9daa3a046980deb6cd91c
- Added ContentEncAESSettings, AESSettingsCipherMode,
AESSettingsCipherInitData elements to the parser and muxer.
- Changed ParseContentEncodingsEntry, ParseContentEncodingEntry,
and ParseEncryptionEntry to use PasreElementHeader.
- Added ParseContentEncAESSettingsEntry function.
- PS6 removed AESSettingsCipherInitData.
- PS9 Addressed comments, Fixed some LINT issues, and converted
mkvwriter.h/.cpp to Unix line endings.
- PS10 Addressed comments.
Change-Id: I9d96a0c194f74a6c9bf0001aa0286196e410f07e
Change vs2008 output and intermediate directories to:
1. Avoid build output collisions when using vs2008 and vs2010 on the
same system (makes no difference until subsequent commit adding
vs2010 support).
2. Keep the tree clean.
Change-Id: Ie819e57421b7df90244eebffc0f5e608bc135930
- For muxed content with default settings the cues was getting
output on the audio track when it should be on the video track
by default.
- Added check to command line parameter parsing to make sure
there are enough parameters.
- If Cues are set to output on one type of track the other type
is now disabled.
Change-Id: I96ef1978dc3f442f34364f6dee6cfb01571c7289
In several cases, the parser would parse a header
(say, a track header, or the segment info header)
in the constructor for the type. The parser had
assumed (incorrectly) that the file was well-formed,
but this turned out to be an incorrect assumption.
The parse errors triggered some assertion failures,
but this is not acceptable in a production system.
The parser solved that problem by separating the
construction of the header object from the parsing
of the file. There is now a separate parse method
to be called after construction of the object,
which returns a status whether the parse was
successful.
This change fixes the bugs from the following
tracker issues:
http://code.google.com/p/webm/issues/detail?id=399http://code.google.com/p/webm/issues/detail?id=400
Change-Id: Idb09154ae7008429d8613ce3b3e8294f5a12de86