This is for cross platform support. gyp_packager.py is modified
from build/gyp_chromium and adapted to packager code.
New build instructions:
1. Setup gyp: ./gyp_packager.py
clang is not enabled by default, which can be enabled by overriding
GYP_DEFINE environment variable, i.e. "GYP_DEFINES='clang=1
use_openssl=1' ./gyp_packager.py".
Ninja is the default build system. User can also change to make by
overriding GYP_GENERATORS to make, i.e. "GYP_GENERATORS='make'
./gyp_packager.py".
2. The first step generates the make files but does not start the
build process. Ninja is the default build system. Refer to Ninja
manual on how to do the build.
Common syntaxes: ninja -C out/{Debug/Release} [Module]
Module is optional. If not specified, build everything.
Step 1 is only required if there is any gyp file change. Otherwise, you
may just run ninja.
Change-Id: I89cade7278bfdd3992644457e896e5a10085568b
chromium/src/base and chromium/src/build will be pulled using repo
manifest @ https://widevine-internal-review.googlesource.com/#/c/9071
Also ignore base and build in .gitignore.
Bug: 12588544
Change-Id: Iec9ad12d61c7b7719e066b30a6672c558ef15851
The information is generated by Edwin's copyright.py script with some
minor manual modifications.
Chromium's original copyright notice is not replaced.
Also add LICENSE file taken from
https://sites.google.com/a/google.com/ospo/releasing#TOC-BSD-License
Change-Id: I231f09af96a0a611b1ca81e95cab82e12d7f529b
MuxerListener takes MuxerOptions, reference time scale, and container
type which should be passed to MediaInfo creation.
Change-Id: I54c23476120e9ef77fc1df7e781b3a9acf0ff520
It assumed that the first element is Period but it could be a BaseURL
which caused a DCHECK crash.
Change-Id: I75bdafdd312bfbcdf81cc76b44f8e2d0f1542976
The order affects the output. Even though XML does not care about the
order of subelements, it makes more sense for BaseURL element to appear
above SegmentBase.
Change-Id: Idd1e73446be84640828358ef4d7a74688428f6b5
Some players do not like non-zero starting PTS. We need to do PTS
normalization to make it work on those players.
Bug: 12686658
Change-Id: I0958c25395e4ea87d8208db9a5f6c5816827eb99
Added functions to add MediaInfo::ContentProtectionXml to
RepresentationBaseXmlNode. This allows adding ContentProtection elements
using MediaInfo protobuf.
Change-Id: I46aa97ba8cbf1548388ebbb61ac163786dfa0be8
I am not sure whether it is a good idea to define command line flags
in the actual source. I created several flags definition .h to host
these flags for now.
Change-Id: Ib6ca60d8656e8015a64dafff8e0a98a47676bbd2
A MuxerListener implementation.
MediaInfo protobuf is dumped out to a file as human readable string.
Change-Id: I1b1d52b4d11d969efc07b413ff25cb26fb1aa2b4
Info from muxer is delegated to a function in internal namespace to
create MediaInfo protobuf structure.
Change-Id: I7c00ce02c9ab23f022cf485e582d771ce61107cf
Defines an abstract request signer class and two implementations of the
signer class, AesRequestSigner for AES-CBC signing and RsaRequestSigner
for RSA-PSS signing.
WidevineEncryptorSource now uses Signer for signature generation.
Change-Id: I4528409a9be998535bccde40fdadb412e4bbdaf3
This only matters if you pull clang for building the packager.
clang binaries gets pulled in to third_party/llvm-build if you run
the script in tools/clang/scripts/update.sh.
clang is useful for ASAN and style (and better compiler error output).
Change-Id: Id615d739f80e92036fe13c3152569e51aed8a7f0
Use EncryptorSource::CreateEncryptor for encryptor creation.
EncryptorSource no longer owns the created encryptor.
Change-Id: I34d1f32262b7692bcb347d3b084fd06cbae7850f
TextFormat class methods that output human readable messsages need
Message instance where LITE uses MessageLite.
Change-Id: I4ff14aa9334acdad608f0b02c81d9cb765e70a60
Work on some TODOs.
Mandatory mimeType field was missing from Representation.
All duration in the MPD is now float.
Change-Id: I85b8511bc1c43759d80f831bee371c398895cf39
The original code assumes CompositionOffset is always valid and
has the same number of samples as other table, which is not true
if CTTS table is empty for non-fragmented mp4.
Change-Id: If4ecc1159de33202db4ab36df8e32c2a6900daf8