For mpd codes, rename dash_packager to edash_packager; for media codes,
add namespace edash_packager.
Change-Id: I1120e6110c734cd02bdbe15f1cf7abddcdfdd7ea
Renamed EncryptionKeySource and WidevineEncryptionKeySource to KeySource and
WidevineKeySource respectively.
Replaced Initialize method with FetchKeys.
Added unit tests.
content_id parameter is now binary. Specified in command line with hex string.
Change-Id: I8010ca62d036cefb3a7c105e0eefee25bbf06d61
These checks were disabled in Chromium due to historical reason.
Also fix compilation errors as a result of the above mentioned change.
Change-Id: I5d240f2f11aa5920598f954d696a15bdcbf78fd8
This change also updates the WidevineEncryptionKeySource to be able to support
KeyRotation enabled and disabled requests simultaneously.
Change-Id: I5178cafc0dbabbb64ac9af9969d3bf7d8117a4dd
There are two different problems:
1. int64/uint64 formatting: %lu formats unsigned long. However, the
definition of long is different on 32-bit machine and 64-bit machine.
We need to use a macro to format int64/uint64 correctly.
2. The packager target is dependent on openssl.
Change-Id: I5d51a500c3cb8bcd4b4049ab7ec5a985ac486a76
With libcurl, HttpFetcher now supports timeout and https.
Two additional changes:
1. Remove happyhttp which is no longer needed;
2. Add README.packager for curl
Bug: 13658515
Bug: 14301830
Change-Id: I13c2835e7feca9abf36e5bb8f7bc35a7db9ec94c
Also add support for format tags.
Also change default fragment_duration to 10s, i.e. to have the same
value as --segment_duration. So by default, only one fragment per
(sub)segment is generated.
Change-Id: I21123723c3998b656037a397eb7b58b3d91721bb
The key production thread was started in constructor. The default http
fetcher might have already been used to fetch keys before it is modified
by set_http_fetcher. This could lead to flaky unittest.
Change-Id: I977b6450862d87ffeb5cb219bcd46b33d877e550
Issued warning rather than exiting with an error so that playback
may (hopefully) continue. We see this type of situation with the
Envivio encoders, which effect trivial changes in encoding midstream.
Change-Id: Ifa552066f602157adbfa0b882cb75e479b067645
This CL also includes two related changes:
1. Support serialization of raw PSSH box;
2. Refactor segmenter interface a bit.
Change-Id: I668aa01a5a5ff524ad6fe74976339a3fd499120a
Remove Initialize() and Add AddKey().
Also remove fixed_encryptor_source.* and move the functionality to
encryptor_source.*.
Change-Id: I4fb61013177874a8b81854f10b2deda83accc683
The main thread may run ahead of the closure thread. In this case,
Stop() could have been called before the first Push() call.
Change-Id: Ib6d94d451a8215fff572ea13f9567ba786d77fa5
The crash happens if the thread is created but never started. An
improper Join triggered the crash. We should not call Join if the thread
is not started.
Change-Id: Icace740889089d3b2e15cf6c76c2b0887eb84535
ClosureThread runs a Closure in a platform thread. Chromium Thread class
involves message loop, so we choose to implement our own based on the
lower level SimpleThread which wraps PlatformThread.
Change-Id: Ibb759f7debcc027c0764195ca93506f9a202110b
User should not need to care about how and when to call these APIs.
Internal code should call them automatically.
Change-Id: Ibc85a709d4e82ecc7b477986cabf09dcfc2e100c
1. Use size_t for MediaSample size;
2. Get rid of stringstream in media_sample.cc and media_stream.cc.
Change-Id: I11fe650305a732ae6a18546ac68692e03ecedae4