- Add Box::WriteHeader and Box::HeaderSize methods. The concrete
box implementations should not need care about whether it is a
Box or FullBox normally.
- Rename Box::ReadWrite to Box::ReadWriteInternal to make it clear
that it is an internal methods. Make it private so it cannot be
incorrectly called in box implementions.
- Make an internal implementation of ComputeSizeInternal to compute
box size. |atom_size| is updated in ComputeSize, which wraps
ComputeSizeInternal.
Change-Id: I3fbcf8c527581b676d9d13f1ac1dd798da7c4d5f
Added two stream descriptors that are both used to tell the output
format. If it is not given, the packager will use the output file
extension to determine the output format.
Change-Id: Ib8d5dcf52956c2d451e77ea6a90d9502d4a77064
* Added WebM muxer that supports both single and multi-segment modes.
* WebM muxer supports MPD generation.
* Enabled WebM muxer and demuxer in packager.
b/22463220
b/25089245
b/25089714
Change-Id: I9f6e8fc51e08fbb1d685229c5cb54ea60f7bed8f
- Also set --clear_lead to 1 if encryption is enabled to make sure some
of the segments are encrypted.
- Also fixed glint errors.
Change-Id: Ie92ad3ea1a3fd95d059e424a114b863ac393e6bf
- Check whether if it can be parsed by libxml2 and check if the root
element is a 'tt' element.
- Added unit tests for determining TTML and WebVTT.
Change-Id: I4fea1881f0ab70970700601d8d7cea32cc04752c
- Since most use cases use notifier implementations that already uses
locks, removing locks from MpdBuilder.
- Added locks to MpdNotifier::Flush() implementations. Multiple threads
were able to write to the same file.
Issue #45, #49
Change-Id: I6e39824485672f40e6c947da97f1743fac174167
- Added ignores.txt file. When doing a tsan build,
tsan_blacklist gyp flag should point to the file.
Change-Id: Ia69f89f1906f0b386e081a7df5a7c867e411f8fd
Also update the code to generate CompressorName in VideoSampleEntry
for both AVC1 and various VP codecs.
Change-Id: I2355f8008a72806e852aa1ec6c80e9141b97d963
- Added factory methods for creating Representation and AdaptationSet in
tests.
- Since most tests only needed access to the constructors for
Representation and AdaptationSet, instead of using
FRIEND_TEST_ALL_PREFIXES() for each test case, added factory methods
on the test class.
- Check the 'frameRate' attribute in
CommonMpbBuilderTest.SetSampleDuration.
Change-Id: I57bd3a90b397f90c3a3a91de03eb96000f58ef58
Also includes its dependencies, like media/base/text_track_config.*
and media/filters/webvtt_util.h
Change-Id: I5b26245daf004da19b912b7c5b2c21ce4ba85688
Uses EXPECT_NEAR for comparison with an acceptable error bound. Also
increases error bound to 50ms.
Change-Id: I8fc61b3b915a50f8fe33b9ea72e123aefee25a80
- Neither live with or without key rotation did not output the right
result.
- No key rotation: did not produce any ContentProtection element.
- With key rotation: did not have DRM specific ContentProtection.
- To get key rotation working with shaka player, <cenc:pssh> elements
are removed.
Change-Id: I1f34d303ae1f3ea81820e3368ab66b8420498372