mkvmuxer can write matroska v4 elements in all modes, but does
not always confirm that the doc type is high enough for all
elements written. The main culprits are Colour and its
children. Avoid problems by using 4 as the default version.
This avoids problems in all cases but those where users who
know what they are doing have written the EBML header manually.
Update the test files because the new default causes the file
compare abuse in the muxer tests to fail.
Update expected doc type version in the parsing tests.
BUG=webm:1201
Change-Id: I4c69000af4c1d5efe66315c17f3953344ef04993
libwebm_util:
- Add 90khz -> nanosecond conversion.
vpxpes_parser:
- Get rid of VpxPesParser::VpxFrame and use VideoFrame.
- Store/Accumulate (when neccessary) PES payloads in
VideoFrames.
- Change type of size constants from int to size_t.
- Return offset accounting for origin from FindStartCode().
- Check all PTS marker bits (instead of checking the second
marker twice).
video_frame:
- Add nanosecond_pts mutator.
webm2pes:
- Write DTS/PTS presence flag correctly when PTS is not
present.
Change-Id: I10f16cd03bb3a51205a25331527ddceb3769ba03
Honor TEST_TMPDIR environment variable for creating temporary test
files in non-windows platforms. This helps in environments where
we cannot create a temporary file in the current directory.
Change-Id: I39e0a19580635d752171e0573dd21ec838cb81a4
Migrated from the webm-tools repository with minor tweaks to
fix its build in the new location.
Last location/revision:
https://chromium.googlesource.com/webm/webm-tools
a7e97e8f0a913ddd97444392bb8816f44a4821a1
Change-Id: Icfad43d9fdd37fc413a6a28b57b370c97c7c28df
Wrapping mkvmuxer and mkvparser in the libwebm namespace is no
longer necessary now that the tree reorganization is complete.
Put mkvmuxer and mkvparser namespaces back in the global
namespace to avoid unnecessary churn in downstream code.
Change-Id: I13a4fe0143d20bb2bb6038078c68636ff2af0c29
- Use .cc and .h everywhere.
- Update includes/include guards.
- Remove extra makefile targets necessitated by previous mix
of cpp/cc.
Change-Id: I7aad29152d4177937f8f42927c16c6572228c104
(that is not already)
Some details:
- mkvmuxer and mkvparser wrapped by libwebm
- Matroska element constants moved from mkvmuxer to libwebm
- integer types moved from mkvmuxer to libwebm
Change-Id: Ic91e887e50adbc2d735bf6264534a5d01135df31
Move file utility classes and functions from testing/test_util to
common/file_util, and make them part of libwebm.
Change-Id: If5b25a63b20efacc16b0fecaa8876ade4ecc4b26
Was missing cstdint and breaking builds on less forgiving
target systems. Also, make std namespace usage consistent.
Change-Id: I961b3ad66f8650fdebbb76a957c914c1b06e2de5
Fix the build and tidy up a couple things along the way.
- Add -std=c++11 to CMakeLists.txt CXX flags.
- Add missing include to libwebm_utils.h (<memory>).
- Setup CMAKE_CXX_FLAGS properly (allow user override).
- Add missing URL for gtest repo to README.libwebm.
BUG=https://bugs.chromium.org/p/webm/issues/detail?id=1136
Change-Id: I894729216737ff92f58a7b7601484ba8fba73b25
Super frame index is at the end of the frame; not the beginning. Adjust
length to process instead of offsetting the start point for breaking up
the super frame.
Change-Id: I71910f24cc060934bb974548a29617b985985ed9