Commit Graph

54 Commits

Author SHA1 Message Date
Sylvestre Ledru
804b8b8883 Bug 1204606 - Reformat of dom/media r=jya
# skip-blame

Differential Revision: https://phabricator.services.mozilla.com/D12251

--HG--
extra : moz-landing-system : lando
2018-11-19 13:25:37 +00:00
Bryce Van Dyk
ebabdad8ee Bug 1487811 - P3: Add CDM10 functions to IPDL. r=cpearce
The CDM10 interface makes 2 notable changes here:
1) Instead of the binary choice between unencrypted and encrypted (which assumed
cenc encryption), the interface now allows for specification of encryption used.
Practically this means we will eventually need to support choosing between not
encrypted, cenc, or cbcs.
2) The interface adds a bool for hardware secure codecs for use when
initializing the CDM.

This changeset adjusts the IPDL for the CDM to accommodate these changes. The
changes are also supported in surrounding code, but are not fully plumbed to
either the web, or the CDM.

Fully supporting new encryption schemes and hardware secure codecs will require
further work which is beyond the scope of this bug.

Some formatting drive bys so new formatting and old formatting both match
expected formatting by clang-format.

Depends on D5629

Differential Revision: https://phabricator.services.mozilla.com/D5630

--HG--
extra : moz-landing-system : lando
2018-09-13 14:49:45 +00:00
James Cheng
8f80fefaf0 Bug 1403830 - [Part1] Remove gmp-decryption.h and its related code. r=cpearce
MozReview-Commit-ID: G8RHADhfd3c

--HG--
extra : rebase_source : 125098fb689e5d031f042c9b3976a8163f41ff51
2017-09-28 15:50:28 +08:00
Chris Pearce
6425456721 Bug 1342822 - Backed out changeset 70bc7d4e8512 (bug 1338924). r=gerald
MozReview-Commit-ID: DXGgfMMghOD

--HG--
extra : rebase_source : e5d329122754dfab6750ff2aedadc1f65a52f0f8
2017-02-27 13:58:27 +13:00
Chris Pearce
4c05a6c492 Bug 1338924 - Pass duration of sample being decrypted to CDM. r=gerald
MozReview-Commit-ID: 3UujuYPpfJi
2017-02-14 11:29:32 +13:00
Chris Pearce
302ca1dbee Bug 1332530 - Remove GMP enum storage names. r=gerald
Note: Only the Adobe GMP used enum storage, so not that it's unused we may
as well remove this.

MozReview-Commit-ID: JtmQ69eJzaI

--HG--
extra : rebase_source : 29929e680dc1692b957b34ce274c4944743768e8
2017-01-20 15:06:00 +13:00
Chris Pearce
6b15c34475 Bug 1332530 - Remove librlz and EME/GMP device binding code. r=gerald
MozReview-Commit-ID: FzJ220XlrJi

--HG--
extra : rebase_source : 0945a3b46bcc90de9b48f56da46090cb2f777411
2017-01-20 13:47:48 +13:00
Chris Pearce
fe31d4bd44 Bug 1332149 - Don't expose plugin-container or sandbox vouchers to GMPs. r=gerald
MozReview-Commit-ID: JZBoEptskf0

--HG--
extra : rebase_source : c2de46c71eced8fc9ad00f9fbb95f9dc9f5ee6ba
2017-01-19 14:57:30 +13:00
Chris Pearce
abf5ab3771 Bug 1331829 - Remove async shutdown GMP API. r=gerald
Now that we're not supporting Adobe EME anymore, we don't need to
provide a mechanism for GMPs to block browser shutdown.

MozReview-Commit-ID: KUC94IBQiod

--HG--
extra : rebase_source : ed521f28e272de11b2d0c4546b98baf6bd7c6e72
2017-01-18 15:01:56 +13:00
Chris Pearce
22f4a343b5 Bug 1329543 - Remove obsolete GMPDecryptor7 interface that was only used by Primetime. r=gerald
This basically rolls back aec9905b06fe from bug 1278198.

MozReview-Commit-ID: Drho21X6npW

--HG--
extra : rebase_source : 372bc7f4771ec0268535e3df2a745bc9fae8bd3b
2017-01-16 15:12:15 +13:00
Chris Pearce
af0e6c4ab5 Bug 1329543 - Remove PGMPAudioDecoder. r=gerald
MozReview-Commit-ID: nwW4s4MtJX

--HG--
extra : rebase_source : 95079ac628f301f8ceb8b5540c7ea95a15deb931
2017-01-14 16:14:32 +08:00
Chris Pearce
f98c7aa8b5 Bug 1313202 - Convert InvalidAccessErrors coming out of the Widevine CDM to TypeErrors like Chrome does. r=gerald
MozReview-Commit-ID: FEY08LZheTf

--HG--
extra : rebase_source : e6ddc8a5f7740a5e09822ea1b16ca58b05dee919
2016-10-27 14:04:10 +13:00
Kilik Kuo
4d162fcd4a Bug 1303922 - Part 1: Make EME keystatuschanged information notified in batch. r=cpearce
MozReview-Commit-ID: IeExaQ62qTF

--HG--
extra : transplant_source : t%D4%AFxu%D6%40%F8hU%D2%94%D4q8q%EDy%08-
2016-10-04 17:18:46 +08:00
Bryce Van Dyk
e06afda01b Bug 1279077 - Update GMP/EME path to support webm. r=cpearce
Update handling of VP8, VP9 to enable decryption and decoding via widevine.
Update handling with further validation to make sure that invalid video types
are rejected when trying to create widevine decryptor session or init widevine
decoders.

MozReview-Commit-ID: 8FOvUJfxr6L

--HG--
extra : rebase_source : 0f6aed8256d7f106a598b09e6f11efe80f0e4bb2
2016-07-29 15:53:22 +12:00
Chris Pearce
30716f1d57 Bug 1278198 - Adapt Adobe GMP's obsolete GMPDecryptor interface to new interface. r=gerald
The Adobe GMP only supports up to GMPDecryptor version 7. We're now up to
version 9.  So we need to provide an adaptor to convert the old version to run
with the new interface.

MozReview-Commit-ID: 5dKreev7JMv

--HG--
extra : rebase_source : b9aa1b66ad23e9f7ddbe60b71c94c161ad974818
2016-07-14 13:33:48 +12:00
Chris Pearce
f49856bc79 Bug 1278198 - Pipe through distinctive identifier and persistent state allowed. r=gerald
MozReview-Commit-ID: A92e0XGp5s4

--HG--
extra : rebase_source : 09f7ba18c9b81263aa345cc7f34f0ef2a2548482
2016-07-07 17:26:15 +12:00
Chris Pearce
46a1552995 Bug 1271242 - Remove GMPDecryptorCallback::SetCapabilities(). r=jwwang
Now that GMPParent detects whether gmp-clearkey can decode using AAC/H.264
using WMF before reporting gmp-clearkey's GMPParent can decode AAC/H.264, we
don't need the GMPDecryptorCallback::SetCapabilities() callback from the GMP to
signal to the PDMFactory that the GMP can decode. We can now trust what the
GMPService tells us.

So we can remove the "waiting for CDM caps" step in the state machine's startup
sequence. And all the plumbing. :)

If we need more caps, like for an decode-and-render path, we can declare those
as API strings in the info file.


MozReview-Commit-ID: E0QhU4cYhjo

--HG--
extra : rebase_source : 7d15ab6a45bac88c15c053f416d941b5fe0807b0
2016-05-10 10:28:38 +12:00
Nicholas Nethercote
524b34adf6 Bug 1237151 (part 1) - Remove ignored qualifiers in dom/media/gmp/. r=cpearce.
--HG--
extra : rebase_source : a4934ff402b3402731d6070d36dd713368d09a1f
2016-01-07 15:43:37 -08:00
Chris Pearce
373cfa1365 Bug 1229508 - Support current and previous GMP_API_DECRYPTORs. r=gerald
To allow GMPs time to update to new GMPDecryptor versions, we support the
latest GMPDecryptor version, and the previous.

In order to support a consistent interface to Gecko, we adapt the previous
GMPDecryptor version to the latest in the GMP child process.  So Gecko always
thinks it's talking to the latest version.

We also make gmp-fake deliberately support the previous GMPDecryptor version,
to ensure this code path remains tested.
2015-12-02 15:37:09 +13:00
Chris Pearce
f14cc10a3d Bug 1227790 - Update GMP API to include new MediaKeyStatus types. r=jwwang 2015-11-26 13:51:05 +13:00
Chris Pearce
c078618d1a Bug 1188235 - Make GMPStorage immune to record name hash collisions. r=gerald 2015-08-11 16:05:19 +12:00
Kilik Kuo
bf15291935 Bug 1186375 - Add GMP EME render flags and APIs for query. r=cpearce 2015-07-22 19:07:14 +08:00
Chris Pearce
4c18608471 Bug 1147692 - Remove gmp-decryptor backwards compatibility hack. r=edwin 2015-06-26 08:06:25 -07:00
Ryan VanderMeulen
7ac18353e6 Backed out changeset cbe9a2aea954 (bug 1147692) for test_eme_canvas_blocked.html failures.
CLOSED TREE
2015-06-25 16:05:41 -04:00
Chris Pearce
e8b350b32d Bug 1147692 - Remove gmp-decryptor backwards compatibility hack. r=edwin 2015-06-25 11:19:42 -07:00
Chris Pearce
e61fe5c00d Bug 1143278 - Make gmp-clearkey not require a Win8 only DLL to decode audio on Win7. r=edwin 2015-04-13 13:39:46 +12:00
Edwin Flores
b790668a1f Bug 1147689 - Preserve compatibility with eme-decrypt-v6 - r=cpearce 2015-03-26 22:58:43 +13:00
Edwin Flores
d888a5c88f Bug 1147689 - Increment eme-decrypt API version to v7 - r=cpearce 2015-03-26 22:58:43 +13:00
Edwin Flores
46cbfd3c6b Bug 1147689 - Pass the session ID(s) of an encrypted frame into EME CDMs - r=cpearce 2015-03-26 22:57:36 +13:00
Phil Ringnalda
571ce099b4 Back out 7f1f85ee4ba6 (bug 1143278) for Win7 near-permaorange in test_eme_canvas_blocked.html 2015-03-15 18:30:53 -07:00
Chris Pearce
151f899496 Bug 1143278 - Make gmp-clearkey not require a Win8 only DLL to decode audio on Win7. r=edwin 2015-03-15 11:30:24 +13:00
Chris Pearce
e4ef49ff55 Bug 1136986 - Fix unthreadsafe uses of GMPVideoHost in gmp-clearkey. r=edwin 2015-02-28 10:23:33 +13:00
JW Wang
4d6309bd93 Bug 1083658 - add "output-downscaled" to GMP. r=cpearce. 2015-02-01 09:18:39 +08:00
JW Wang
c1dd9140a5 Bug 1121332. Part 1 - add media key status to gmp-api. r=cpearce. 2015-01-31 13:22:12 +13:00
JW Wang
bfc4d164a1 Bug 1124939 - Add "individualization-request" to MediaKeyMessageType. r=bz 2015-01-26 20:08:00 +01:00
JW Wang
a9391d3408 Bug 1102852 - add MediaKeyMessageType to and remove destinationURL from MediaKeyMessageEvent. r=cpearce,bz 2015-01-15 11:25:47 +13:00
Chris Pearce
7ba4d8b1c1 Bug 1111391 - Enable keyMessages to be sent before create/load session promise is resolved. r=jwwang 2015-01-09 14:30:07 +13:00
Chris Pearce
a23d2bdf73 Bug 1109457 - Add persistent session to our ClearKey CDM. r=edwin 2014-12-19 09:54:34 +13:00
Ryan VanderMeulen
7acf8539fb Backed out changesets 70428bb355a4 and a0ba2f134695 (bug 1109457) for EME failures and crashes on OSX 10.6. 2014-12-18 00:22:19 -05:00
Chris Pearce
65cccb08b1 Bug 1109457 - Add persistent session to our ClearKey CDM. r=edwin 2014-12-18 16:16:13 +13:00
Ryan VanderMeulen
bf0212ce4f Backed out changeset dc6994acf4e3 (bug 1109457) for EME test failures and crashes.
CLOSED TREE
2014-12-17 20:57:12 -05:00
Chris Pearce
ddd4b18d14 Bug 1109457 - Add persistent session to our ClearKey CDM. r=edwin 2014-12-18 13:23:27 +13:00
Chris Pearce
515d668bfb Bug 1109861 - Add delegate to manage waiting for the CDM to mark key usable. r=kinetik 2014-12-11 15:59:37 +13:00
Chris Pearce
b392b7de2a Bug 1077159 - Use macros for GMP API names, to make them implicitly versionable. r=jesup 2014-12-10 09:35:26 +13:00
Chris Pearce
d928f41d37 Bug 1104970 - Store GMPStorage record names at the start of each record. r=jesup 2014-12-03 13:36:00 +01:00
Chris Pearce
fe82002fba Bug 1100499 - Add GMP API to enumerate records stored on disk. r=jesup 2014-11-21 12:25:12 +13:00
Chris Peterson
433d74c532 Bug 1098134 - Fix or suppress warnings in gmp-api, gmp-clearkey, and gmp-plugin and mark as FAIL_ON_WARNINGS. r=cpearce 2014-11-14 00:36:20 -08:00
Chris Pearce
8d2e1be533 Bug 1049273 - Expose GMP voucher to GMP at runtime if its present. r=jesup 2014-11-14 21:39:39 +13:00
Chris Pearce
7c37352690 Bug 1088488 - Remove old mechanism that GMPs could use to retrieve the device-bound node id. r=jesup 2014-11-14 21:39:24 +13:00
Chris Pearce
eb5bfa0cf3 Bug 1088488 - On Windows only, use librlz and SHA256 code to generate a device-bound node id inside plugin-container, pass to GMP. r=henri,r=jesup 2014-11-14 21:39:18 +13:00