Граф коммитов

265 Коммитов

Автор SHA1 Сообщение Дата
Jay Harris 21c0f1fb53 Bug 1318965 - Improves the logging in Clearkey r=cpearce
MozReview-Commit-ID: DTQAI7ffMm7

--HG--
extra : rebase_source : 432ab764dcec12da295294615e8024a9fdfe7662
extra : histedit_source : bf2a4bdaadf44f7da935ce2c659a7f039e562388
2017-01-18 14:49:58 +13:00
Jay Harris 845adb059f Bug 1318965 - Changes the way the the 'DeinitializeDecoder' method in the ClearkeyCDM works r=cpearce
It is now more inline with the api spec in content_decryption_module

MozReview-Commit-ID: KmZzyfvHv5p

--HG--
extra : rebase_source : 783430c2d92018d686ddd8779bea1939936c618a
extra : histedit_source : 653ab1e717ce57c0f3eebfb3e6eddc6fa20d5884
2017-01-18 14:49:04 +13:00
Jay Harris 1be3b00a10 Bug 1318965 - Removes the custom AtomicRefCount r=cpearce
MozReview-Commit-ID: BAGocY4nGiM

--HG--
extra : rebase_source : a2d545834d4d033073a58940416a8d26765af2af
extra : histedit_source : ab70291573de634e0f3b05b9364bd8bb3f95f70d
2016-12-16 11:57:58 +13:00
Jay Harris f44f926c07 Bug 1318965 - Converts gmp-clearkey to use Chromium ContentDecryptionModule8 interface used by widevine r=cpearce
MozReview-Commit-ID: 6lOzItuuvdd

--HG--
extra : rebase_source : b1e98ecd166954f0a9e7e9ad8544504210998f49
extra : histedit_source : 7d73e59040f8f5c15bc26c388b4b40bf2ec1e5fe
2017-01-12 09:52:05 +13:00
Jay Harris f4929b46d1 Bug 1319159 - Updates how 'ParseChromiumManifest' works so that it doesn't assume Widevine (now it assumes Widevine or Clearkey..). r=cpearce
MozReview-Commit-ID: 8m6hPIiUPT

--HG--
extra : rebase_source : 457da21982f35b66eac1ff32316ceee243139652
extra : histedit_source : 4ebc011309b9013952435bf0ff32206a73de0854
2016-12-22 11:28:40 +13:00
Wes Kocher 813009d982 Backed out 2 changesets (bug 1319159) for frequent media test failures a=backout
Backed out changeset afb84605c3c4 (bug 1319159)
Backed out changeset a14cade8b962 (bug 1319159)

MozReview-Commit-ID: 1ZWV6BPE8ne

--HG--
extra : source : 68c824ad72b817189143af771bb34408c72ad495
2017-01-13 13:23:56 -08:00
Wes Kocher 07fd8cebf7 Backed out 3 changesets (bug 1318965) for frequent media test failures a=backout
Backed out changeset 3f756d8ee4cf (bug 1318965)
Backed out changeset 4bdf65d60c9e (bug 1318965)
Backed out changeset c1e2b6c14a7f (bug 1318965)

MozReview-Commit-ID: 6CPk5oS5AOw

--HG--
extra : source : babe3f8a0258fb592e17a590450de6ceb09460c3
2017-01-13 13:23:31 -08:00
Jay Harris 36c1319590 Bug 1318965 - Removes the custom AtomicRefCount r=cpearce
MozReview-Commit-ID: BAGocY4nGiM

--HG--
extra : rebase_source : 18562465c37b686ca1653862e5c4e096d9efefe9
extra : amend_source : ecc2ab9b15950c6291ea386004d82a67d5dde368
2016-12-16 11:57:58 +13:00
Jay Harris 06bce5da83 Bug 1318965 - Converts gmp-clearkey to use Chromium ContentDecryptionModule8 interface used by widevine r=cpearce
MozReview-Commit-ID: 6lOzItuuvdd

--HG--
extra : rebase_source : 7f70380be5628c3e6668cf9fa235c8d2525bf1dc
extra : amend_source : 8d6afebb484ed59cf02907cab8991e6f232b0f69
2017-01-12 09:52:05 +13:00
Jay Harris 6f7214ca07 Bug 1319159 - Updates how 'ParseChromiumManifest' works so that it doesn't assume Widevine (now it assumes Widevine or Clearkey..). r=cpearce
MozReview-Commit-ID: 8m6hPIiUPT

--HG--
extra : rebase_source : 1e8de4d233e15cda3f08f1ca556ea4f82eb6cebe
extra : amend_source : 50a7e80ff09bd6cb1f4033425c136b4552cbda41
2016-12-22 11:28:40 +13:00
Ting-Yu Chou e551a0b979 Bug 1322465 part 7 - Use explicit/MOZ_IMPLICIT for the unary constructors in media/. r=cpearce,Ehsan
MozReview-Commit-ID: Ln63tzmkynd

--HG--
extra : rebase_source : 869cca55da15d2394411571f741d8ed2728c3265
2016-12-16 15:56:40 +08:00
Jay Harris 7a7b0325f0 Bug 1319197 - Remove audio decoding from gmp-clearkey. r=cpearce
MozReview-Commit-ID: EA0AAoDjWUh

--HG--
extra : transplant_source : 1D%21%1C%21%15%F7A%CD%EF-%C9%8FS%ECl%A8%9A%DC%B5
2016-11-22 14:32:26 +13:00
Chris Pearce 812726afd0 Bug 1308821 - Ensure ClearKey doesn't parse a keyids initdata format session type parameter. r=kikuo
The specification doesn't require there to be a 'type' member of
the keyids init data format.

MozReview-Commit-ID: 7mOm7KwyyuC

--HG--
extra : source : c9fb674f3cb8dff4fe8734e0426e67825878015d
2016-10-09 20:42:01 -07:00
Chris Pearce d0ce61581c Bug 1313266 - Make gmp-clearkey reject with TypeError instead of InvalidAccessError on invalid input. r=gerald
The spec expects this, and now we pass more web platform tests.

MozReview-Commit-ID: 9HJFp2ebczk

--HG--
extra : source : 6d50c9068b52d8846e4d528d150f3f3dbd9a233d
2016-10-27 14:59:02 +13:00
Phil Ringnalda 62997f0b4b Backed out changeset 9b132e52aa0a (bug 1308821) for wpt encrypted-media/clearkey timeouts and unexpected passes 2016-10-26 19:07:49 -07:00
Chris Pearce 04141020eb Bug 1313202 - Make ClearKey resolve MediaKeySession.closed promise before promise returned by MediaKeySession.close(). r=gerald
MozReview-Commit-ID: KWwN6W07Cba

--HG--
extra : rebase_source : 4eb210a5816981a26e9792e3141564e6b235ea20
2016-10-27 10:35:16 +13:00
Chris Pearce b6dbc9a4a9 Bug 1308821 - Ensure ClearKey doesn't parse a keyids initdata format session type parameter. r=kikuo
The specification doesn't require there to be a 'type' member of
the keyids init data format.

MozReview-Commit-ID: 7mOm7KwyyuC

--HG--
extra : rebase_source : 88b729ae0b0f851763bbd06ec48bae2d6ac1c47e
2016-10-09 20:42:01 -07:00
Sebastian Hengst ab415c7049 Backed out changeset 736a78915259 (bug 1310879) 2016-10-19 11:25:00 +02:00
Chris Pearce a8a56efe47 Bug 1310879 - Remove persistent license support from gmp-clearkey. r=kikuo
MozReview-Commit-ID: LlBUD4xPpRC

--HG--
extra : rebase_source : 3cec8951cee990271d724c59b4c7f9d517a820a2
2016-10-18 16:10:05 +13:00
Kilik Kuo 26bd0bc8ef Bug 1308424-[Part1] Verify the license response size while updating session. r=cpearce
MozReview-Commit-ID: IXZLWnbYTn9

--HG--
extra : rebase_source : fbf015e56443320c55960121e4d59379d9ffabcd
2016-10-07 18:16:30 +08:00
Carsten "Tomcat" Book ec76d557f1 Merge mozilla-central to autoland 2016-10-12 12:07:59 +02:00
James Cheng ff7e2ab548 Bug 1309171 - Reduce an unnecessary copy by universal reference. r=gerald
MozReview-Commit-ID: 6lED8WcGtje

--HG--
extra : rebase_source : e246e607f0a48b7cc12683eac3bc0f37639936dc
2016-10-11 18:07:06 +08:00
Phil Ringnalda 798404cf65 Backed out changeset f47181dc6ad7 (bug 1308424) for unexpectedly passing encrypted-media-update-disallowed-input.html 2016-10-11 19:23:29 -07:00
Kilik Kuo d3d72c3b63 Bug 1308424- Verify the license response size while updating session. r=cpearce
MozReview-Commit-ID: AmyCOutPvWn

--HG--
extra : rebase_source : 8fd1c98ba5039fc55ee3e5ac8b9cfc61f9dee4e2
2016-10-07 18:16:30 +08:00
Chris Pearce cc1ef8649c Bug 1308076 - Move PSSH parser gtests into media/psshparser/gtest. r=glandium
MozReview-Commit-ID: G760z2sIQpO

--HG--
rename : media/gmp-clearkey/0.1/gtest/TestClearKeyUtils.cpp => media/psshparser/gtest/TestPsshParser.cpp
rename : media/gmp-clearkey/0.1/gtest/moz.build => media/psshparser/gtest/moz.build
extra : source : a409d51e3efa0099344ff4b8ebc414ddb50ce829
2016-10-07 21:34:54 +13:00
Chris Pearce a00a07e25a Bug 1308076 - Consistently put expected value where it's expected in EXPECT_EQ() in Pssh Parser gtest. r=jwwang
The expected value comes first in the EXPECT_EQ gtest macro. So reorder our
calls to this macro in the Pssh Parser gtests to match that.

This makes it easier to read what's the expected value when the test fails.


MozReview-Commit-ID: LJ4ND2gRPi4

--HG--
extra : source : 34254ffcdb6fe9e053449210556fb2333f7a205a
2016-10-07 21:17:42 +13:00
Chris Pearce 591af22fc7 Bug 1308076 - Fixup PSSH parser gtests. r=jwwang
We're now obliged to be stricter, taking from the example of the Web Platform
Tests.

MozReview-Commit-ID: AJNDoRZ9BF8

--HG--
extra : source : 5180fdf042b03362b882ceb3a8ac0e664049bd64
2016-10-07 21:12:18 +13:00
Chris Pearce 3bb7ad5953 Bug 1308076 - Rename CLEARKEY_KEY_LEN to CENC_KEY_LEN. r=jwwang
This better reflects that it's used for all CENC keys, not just ClearKey keys.

MozReview-Commit-ID: 9uCzDKVDLjc

--HG--
extra : source : 3307b3e0d411ceb9888f10afdbebc07ab9efce61
2016-10-07 11:14:04 +13:00
Chris Pearce 8b3c096a18 Bug 1308076 - Don't statically link mfplat.lib into gmp-clearkey. r=glandium
We're loading functions from that library dynamically in gmp-clearkey anyway,
we don't need to statically link this.


MozReview-Commit-ID: AKwP5aWLsK3

--HG--
extra : source : 857f21f44316ef8125fedf8db22b5d3191d9c7e9
2016-10-07 11:20:05 +13:00
Chris Pearce 35e13f726f Bug 1308076 - Move ClearKeyCencParser to PsshParser library. r=glandium
To validate the PSSH init data passed to EME, I'd like to reuse the same
PSSH parser that the ClearKey CDM shared library uses. So move the code
out of gmp-clearkey and into its own library, so we can link it statically
into code that needs to use it.



MozReview-Commit-ID: 7xSUSmCueJz

--HG--
rename : media/gmp-clearkey/0.1/ClearKeyCencParser.cpp => media/psshparser/PsshParser.cpp
rename : media/gmp-clearkey/0.1/ClearKeyCencParser.h => media/psshparser/PsshParser.h
extra : source : 78dcbc5d3c26547c63269eb14034a67863cf28de
2016-10-06 20:23:38 +13:00
Sebastian Hengst 2bb0f9b7a2 Backed out changeset 68f1d429368c (bug 1308076)
--HG--
rename : media/psshparser/PsshParser.cpp => media/gmp-clearkey/0.1/ClearKeyCencParser.cpp
rename : media/psshparser/PsshParser.h => media/gmp-clearkey/0.1/ClearKeyCencParser.h
2016-10-11 10:41:25 +02:00
Sebastian Hengst b3064bba8d Backed out changeset b2ef285116b3 (bug 1308076) 2016-10-11 10:41:20 +02:00
Sebastian Hengst bd612c1fd3 Backed out changeset 4ce11c2f2e69 (bug 1308076) 2016-10-11 10:41:08 +02:00
Sebastian Hengst 8718521d1f Backed out changeset 11fc2627544c (bug 1308076) 2016-10-11 10:41:04 +02:00
Sebastian Hengst 57c3796c20 Backed out changeset 2ce4a30bdf86 (bug 1308076) 2016-10-11 10:41:00 +02:00
Sebastian Hengst 8a98e7cddd Backed out changeset 5862e3ccc989 (bug 1308076) 2016-10-11 10:40:56 +02:00
Chris Pearce c18aa7f516 Bug 1308076 - Move PSSH parser gtests into media/psshparser/gtest. r=glandium
MozReview-Commit-ID: G760z2sIQpO

--HG--
rename : media/gmp-clearkey/0.1/gtest/TestClearKeyUtils.cpp => media/psshparser/gtest/TestPsshParser.cpp
rename : media/gmp-clearkey/0.1/gtest/moz.build => media/psshparser/gtest/moz.build
extra : rebase_source : 80fc084137ca84f9263cb056c27f296b8f05111c
2016-10-07 21:34:54 +13:00
Chris Pearce ba946f19e0 Bug 1308076 - Consistently put expected value where it's expected in EXPECT_EQ() in Pssh Parser gtest. r=jwwang
The expected value comes first in the EXPECT_EQ gtest macro. So reorder our
calls to this macro in the Pssh Parser gtests to match that.

This makes it easier to read what's the expected value when the test fails.


MozReview-Commit-ID: LJ4ND2gRPi4

--HG--
extra : rebase_source : 85ca2dcff57354253b801fbd598c89698c74c2d6
2016-10-07 21:17:42 +13:00
Chris Pearce 2f998b9d61 Bug 1308076 - Fixup PSSH parser gtests. r=jwwang
We're now obliged to be stricter, taking from the example of the Web Platform
Tests.

MozReview-Commit-ID: AJNDoRZ9BF8

--HG--
extra : rebase_source : 79b13d1d7d1b6b6b4a382b6a17af81606af608fa
2016-10-07 21:12:18 +13:00
Chris Pearce a0900b6998 Bug 1308076 - Rename CLEARKEY_KEY_LEN to CENC_KEY_LEN. r=jwwang
This better reflects that it's used for all CENC keys, not just ClearKey keys.

MozReview-Commit-ID: 9uCzDKVDLjc

--HG--
extra : rebase_source : dfd7fe864be6825a86dfed4f60b448a5edac286f
2016-10-07 11:14:04 +13:00
Chris Pearce 48ecbebd03 Bug 1308076 - Don't statically link mfplat.lib into gmp-clearkey. r=glandium
We're loading functions from that library dynamically in gmp-clearkey anyway,
we don't need to statically link this.


MozReview-Commit-ID: AKwP5aWLsK3

--HG--
extra : rebase_source : 23ab95e7bb2f756ef1df7f97b96ec7da0953533f
2016-10-07 11:20:05 +13:00
Chris Pearce 10c6ab2576 Bug 1308076 - Move ClearKeyCencParser to PsshParser library. r=glandium
To validate the PSSH init data passed to EME, I'd like to reuse the same
PSSH parser that the ClearKey CDM shared library uses. So move the code
out of gmp-clearkey and into its own library, so we can link it statically
into code that needs to use it.



MozReview-Commit-ID: 7xSUSmCueJz

--HG--
rename : media/gmp-clearkey/0.1/ClearKeyCencParser.cpp => media/psshparser/PsshParser.cpp
rename : media/gmp-clearkey/0.1/ClearKeyCencParser.h => media/psshparser/PsshParser.h
extra : rebase_source : 3f621aa1d99c6a73f6b5f3ca9d1f84022266a833
2016-10-06 20:23:38 +13:00
Kilik Kuo 21f4832a64 Bug 1303662 - Avoid accessing uninitialized member while debugging. r=cpearce
MozReview-Commit-ID: IX4bI9HB8Ub

--HG--
extra : rebase_source : c3d33f757e228788546b234711f3f8e4f51424ce
2016-10-07 18:40:34 +08: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
Kilik Kuo eafec00033 Bug 1289968 - [Part2] Provide max length limitation for KeyIds and Webm Initdata, then correct cooresponding web-platform-tests meta file. r=gerald
MozReview-Commit-ID: DbaF1wZXwav

--HG--
extra : transplant_source : %F4%FF%5E%E4%DBN%B8%15%23%2A%BD%E3%D4P%DF%A8%98n%F7%ED
2016-09-17 03:24:49 +08:00
Chris Pearce ee9ca0dd5e Bug 1289968 - [Part1] Ensure ClearKey doesn't assume keyIds can only be 16 bytes. r=cpearce
MozReview-Commit-ID: Hf2IQsAHa4r

--HG--
extra : transplant_source : %D1%2C%B2j%1C%F5%A7%A9%D8%0B%EEE%92%B1%DC1%A5A%BC%8B
2016-08-01 16:28:10 +12:00
Igor 175543fda8 Bug 1293384 - Part 2: Rename Snprintf.h header to Sprintf.h. r=froydnj 2016-08-14 23:43:21 -07:00
Chris Pearce a2a8662207 Bug 1289931 - Fire InvalidAccessError instead of AbortError when ClearKey's generateRequest is passed invalid initData. r=gerald
Google's Web Platform EME test expects this, and it makes sense.

MozReview-Commit-ID: CCuEHYintob

--HG--
extra : rebase_source : 7b2a9f38b5c22ecb0af8b9a2e270eaa7d0bf2da0
2016-07-28 11:08:27 +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 1ea9b742f5 Bug 1278198 - Update EME code to reflect new WebIDL name changes. r=gerald
MozReview-Commit-ID: EssCsJxBBwt

--HG--
extra : rebase_source : 154746eca911e2250f3fa94a6a2d4b2624910e50
2016-07-04 14:14:01 +12:00
Iris Hsiao 371d555f4a Backed out changeset 656b778e0f15 (bug 1278198) 2016-07-22 12:06:50 +08:00
Iris Hsiao b2381608d3 Backed out changeset af577b7547c4 (bug 1278198) 2016-07-22 12:06:00 +08:00
Iris Hsiao 8494189c07 Backed out changeset c9e56c91112e (bug 1278198) 2016-07-22 12:05:35 +08:00
Chris Pearce 831d889b55 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 : f944a40e2287c7a7dd01a2fb145a9e5882dd2368
2016-07-14 13:33:48 +12:00
Chris Pearce 06a7c88a23 Bug 1278198 - Pipe through distinctive identifier and persistent state allowed. r=gerald
MozReview-Commit-ID: A92e0XGp5s4

--HG--
extra : rebase_source : 6bf51883e4236a0dff1485c4335578f38debdc09
2016-07-07 17:26:15 +12:00
Chris Pearce bc86455eb5 Bug 1278198 - Update EME code to reflect new WebIDL name changes. r=gerald
MozReview-Commit-ID: EssCsJxBBwt

--HG--
extra : rebase_source : 5ac95874355dd70d97f6749143542b5cfb5abfc8
2016-07-04 14:14:01 +12:00
Tom Tromey 5538d692d3 Bug 1286877 - do not set c-basic-offset for python-mode; r=gps
This removes the unnecessary setting of c-basic-offset from all
python-mode files.

This was automatically generated using

    perl -pi -e 's/; *c-basic-offset: *[0-9]+//'

... on the affected files.

The bulk of these files are moz.build files but there a few others as
well.

MozReview-Commit-ID: 2pPf3DEiZqx

--HG--
extra : rebase_source : 0a7dcac80b924174a2c429b093791148ea6ac204
2016-07-14 10:16:42 -06:00
Chris Pearce b6c7bf750a Bug 1287000 - Ensure ClearKey's CENC PSSH parser can handle PSSH boxes with a 0 size field. r=jwwang
Google's Web Platform EME tests contain a CENC PSSH box with a 0 size field.
Our existing PSSH parser in our ClearKey plugin doesn't handle this well, it
gets stuck in an infinite loop. We should really handle everything that Chrome
handles, so we should handle this input.

We also shouldn't really be using raw pointers in the PSSH parser.

So rewrite the PSSH parser to use a ByteReader, and handle an invalid 0 sized
common SystemID box.

Also add gtests for the parser, and skip over PSSH boxes with unknown SystemIDs
(if they have valid sizes that is).


MozReview-Commit-ID: CdVPpphAJV

--HG--
extra : rebase_source : e9a1b439f8b371653c2c97322a2db64cafef6dd8
2016-07-15 09:31:07 +12:00
Gerald Squelart 23c839e07f Bug 1274637 - Detect OOB copy attempts in clearkey decryptor - r=cpearce
MozReview-Commit-ID: LgXe8xrQvzs
2016-05-26 19:46:40 +02:00
Benoit Girard 89a2736994 Bug 1278036 - Rename Endian.h to BigEndian.h for case insensitive Linux builds. r=cpearce
MozReview-Commit-ID: CePIpZZEjD

--HG--
rename : media/gmp-clearkey/0.1/Endian.h => media/gmp-clearkey/0.1/BigEndian.h
extra : rebase_source : a05ccec4e75da7f0bc1eb1a38c2f7e84b82d31ce
2016-06-05 13:24:51 -04:00
Chris Peterson 8a9e2d2bd4 Bug 1272513 - Part 2: Remove redundant -Wshadow CXXFLAGS from moz.build files. r=glandium 2016-05-14 00:54:55 -07: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
Jacek Caban 01fffbb313 Bug 1257270 - Use std::nullptr_t instead of nullptr_t in WMFUtils.h. r=cpearce 2016-03-17 10:39:46 +01:00
Mike Shal f33175df08 Bug 1254950 - Remove several media Makefile.ins; r=ted
MozReview-Commit-ID: 4dvngHQnH0b
2016-03-14 18:02:02 -04:00
Chris Pearce 966cf53003 Bug 1232527 - Call into WMF PDM to determine if WMF can decode instead of using GMPVideoDecoderTrialCreator. r=jwwang
Resurrect WMFDecoderModule::HasAAC() and HasH264(), and use those in
MediaKeySystemAccess.cpp to figure out whether we gmp-clearkey can decode,
rather than assuming Vista and later is always able to decode, as that's not
a valid assumption; Vista may not have the required Platfor Update installed,
or we may be on Windows N or KN without the Media Feature Pack.

--HG--
extra : commitid : 2QrVAGQ5OJa
extra : rebase_source : 8ad6e5c5f87cf2b2489f049543c021723927901a
2015-12-15 14:50:59 +13:00
Chris Pearce 9654972991 Bug 1230026 - Support 'webm' initDataType format for MP4 ClearKey initData. r=gerald 2015-12-04 07:24:11 +13: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 d6743b5aff Bug 1186406 - Copy input to ClearKey's decoder, so we can return its containing shmem earlier. r=gerald
We're failing in the "Very rough kill-switch" case in
GMPVideoDecoderParent::Decode() we find that too many shmems are in use when we
come to send a "Decode" message to the GMP, and that causes an error which
percolates up to cause the test failure.

This patch changes gmp-clearkey to copy the input encrypted and compressed
sample and immediately return the shmem to the parent process. We are
copying the data anyway when we decrypt, so we can rejigg things so that we
don't actually end up doing a second copy.
2015-12-01 18:13:58 +13:00
Chris Pearce efc8956d13 Bug 1228461 - Implement keyids initData type for ClearKey. r=gerald 2015-11-27 17:13:40 +13:00
Chris Pearce ad73151891 Bug 1228461 - Don't assert we must have keys for keyIds we've seen in ~ClearKeySession(). r=gerald 2015-11-27 17:13:35 +13:00
Mike Hommey 6a40d83fb7 Bug 1224452 - Straighten up a couple things in some moz.builds. r=gps
We're going to change how e.g. CFLAGS are printed out in backend.mk, and
to fit that model, the data in the corresponding moz.build variables
need to be straightened up.
2015-11-26 08:50:52 +09:00
Chris Pearce f74bb6b010 Bug 1226430 - Remove alg from ClearKey license parser. r=gerald 2015-11-23 09:58:51 +13:00
Chris Pearce efe66b4aca Bug 1214469 - Ensure gmp-clearkey accounts for mNumInputTasks when flushing. r=gerald 2015-10-14 19:42:24 +13:00
Chris Peterson 71920a9550 Bug 1207030 - Enable -Wshadow flag in more directories that have no -Wshadow warnings. r=glandium 2015-09-22 21:39:03 -07:00
Edwin Flores e12b94321f Bug 1185388 - Limit the number of cores used by WMF in ClearKey CDM - r=cpearce 2015-09-01 17:31:48 +12:00
Nicholas Nethercote f44287005f Bug 1198334 (part 1) - Replace the opt-in FAIL_ON_WARNINGS with the opt-out ALLOW_COMPILER_WARNINGS. r=glandium.
The patch removes 455 occurrences of FAIL_ON_WARNINGS from moz.build files, and
adds 78 instances of ALLOW_COMPILER_WARNINGS. About half of those 78 are in
code we control and which should be removable with a little effort.

--HG--
extra : rebase_source : 82e3387abfbd5f1471e953961d301d3d97ed2973
2015-08-27 20:44:53 -07:00
Jacek Caban 8f93a52f18 Bug 1197282 - Include <atomic> in VideoDecoder.h. r=cpearce 2015-08-25 12:40:20 +02:00
Edwin Flores 970d4a0c2b Bug 1195939 - Flush decode queue on Reset() in gmp-clearkey - r=cpearce 2015-08-19 15:06:36 -07:00
Ryan VanderMeulen 10835ff78b Backed out changeset 18f274867bcc (bug 1195939) for Windows EME test failures.
CLOSED TREE
2015-08-18 23:06:55 -04:00
Edwin Flores 1c281c3c56 Bug 1195939 - Flush decode queue on Reset() in gmp-clearkey - r=cpearce
--HG--
extra : rebase_source : 50f989518611a723342193837fac89a9c2d9e14f
2015-08-18 13:48:38 -07:00
Birunthan Mohanathas a8939590de Bug 1182996 - Fix and add missing namespace comments. rs=ehsan
The bulk of this commit was generated by running:

  run-clang-tidy.py \
    -checks='-*,llvm-namespace-comment' \
    -header-filter=^/.../mozilla-central/.* \
    -fix
2015-07-13 08:25:42 -07:00
Gerald Squelart 0cf2393949 Bug 1182363 - Added missing 'else' to prevent wrong error logging. r=edwin 2015-07-09 18:22:00 +02:00
Chris Pearce e811a7d2e6 Bug 1181436 - Use 'gmp-api/' prefix consistently in includes in gmp-clearkey. r=gerald 2015-07-08 17:12:47 +12:00
Gerald Squelart f4ccd23df1 Bug 1173631 - [EME] Implement async shutdown in clearkey GMP. r=cpearce
--HG--
extra : rebase_source : d6e510b5e081d581524a38a684a9cc677a5bde34
2015-06-11 22:05:00 +02:00
Chris Pearce 461ef61358 Bug 1169129 - Test that an EME GMP can instantiate a plugin before report we support that keySystem. r=edwin 2015-06-05 21:55:51 +12:00
Botond Ballo 2e2a504271 Bug 1119980 - Use 'snprintf' instead of 'sprintf' to avoid a warning on Lollipop-based builds. r=froydnj
--HG--
extra : source : 7468f9a3aa03520a29e138d4df431f0b5d90967c
2015-05-26 14:33:55 -04:00
Phil Ringnalda 49dd872168 Back out 3 changesets (bug 1119980) for emulator-l bustage
CLOSED TREE

Backed out changeset 12ce98475c6e (bug 1119980)
Backed out changeset bdb8d05f8870 (bug 1119980)
Backed out changeset a68a18840492 (bug 1119980)
2015-05-25 18:48:51 -07:00
Botond Ballo 9934d127c1 Bug 1119980 - Use 'snprintf' instead of 'sprintf' to avoid a warning on Lollipop-based builds. r=froydnj
--HG--
extra : rebase_source : 4e915a12ba662ed45788238a5f0a45533888bd92
2015-05-25 20:45:17 -04:00
Chris Pearce 82d33ace6a Bug 1160914 - Use locks for gmp-clearkey threadsafe refcounting when std::atomic is not easily available. r=edwin 2015-05-06 11:40:42 +12:00
Chris Pearce 05f051d1ba Bug 1160914 - Make gmp-clearkey's decoders threadsafe refcounted, to handle DecodingComplete while GMPVideoHost::CreateFrame() is waiting. r=edwin 2015-05-06 11:40:40 +12:00
Wes Kocher b7143cd0e7 Backed out changeset ddb936f4e78a (bug 1160914) for build bustage CLOSED TREE 2015-05-04 16:32:41 -07:00
Chris Pearce b62f7d16fb Bug 1160914 - Make gmp-clearkey's decoders threadsafe refcounted, to handle DecodingComplete while GMPVideoHost::CreateFrame() is waiting. r=edwin 2015-05-05 11:21:55 +12:00
Jacek Caban 3a45303395 Bug 1156131 - mingw cross compilation fixup. 2015-04-29 17:39:35 +02:00
Chris Pearce fa0f746b0c Bug 1156131 - Use correct DLL on WinVista, 7, and 8 for WMF decoding in gmp-clearkey. r=edwin 2015-04-20 20:07:24 +12:00
Chris Pearce c7b1e2eadc Bug 1143278 - Support IYUV and I420 in gmp-clearkey on Windows, as Win 7 Enterprise N's H.264 decoder doesn't output I420. r=edwin 2015-04-13 13:39:56 +12:00
Chris Pearce 4ffa422c6e Bug 1143278 - Use a different CLSID to instantiate the H264 decoder MFT in gmp-clearkey, as Win 7 Enterprise N requires that. r=edwin 2015-04-13 13:39:53 +12:00
Chris Pearce bdd3e51ab8 Bug 1143278 - Add more null checks in gmp-clearkey's decoders. r=edwin 2015-04-13 13:39:49 +12: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
Chris Pearce 1fa249bfb8 Bug 1150437 - Make gmp-clearkey consistently Apache2 licensed. r=edwin,jwwang,kentuckyfriedtakahe 2015-04-03 09:08:27 +13:00
Andrea Marchesini e6f385fb3d Bug 1148527 - Indentation fix after bug 1145631, r=ehsan 2015-03-27 18:52:19 +00: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 f99988363e Bug 1145405 - Add shutdown checks to main thread dispatches in ClearKey CDM - r=cpearce 2015-03-23 07:59:42 +13:00
Ehsan Akhgari 883849ee32 Bug 1145631 - Part 1: Replace MOZ_OVERRIDE and MOZ_FINAL with override and final in the tree; r=froydnj
This patch was automatically generated using the following script:

function convert() {
echo "Converting $1 to $2..."
find . \
       ! -wholename "*/.git*" \
       ! -wholename "obj-ff-dbg*" \
         -type f \
      \( -iname "*.cpp" \
         -o -iname "*.h" \
         -o -iname "*.c" \
         -o -iname "*.cc" \
         -o -iname "*.idl" \
         -o -iname "*.ipdl" \
         -o -iname "*.ipdlh" \
         -o -iname "*.mm" \) | \
    xargs -n 1 sed -i -e "s/\b$1\b/$2/g"
}

convert MOZ_OVERRIDE override
convert MOZ_FINAL final
2015-03-21 12:28:04 -04: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 0dc4e2d797 Bug 1141386 - Test case for gmp-clearkey's base64 key/keyId decoding. r=edwin 2015-03-10 19:46:20 +13:00
Chris Pearce 2af0bf1fce Bug 1141386 - Don't always assume base64 encoded EME key/Ids have padding stripped. r=edwin 2015-03-10 19:46:09 +13:00
Chris Pearce cac8145b4b Bug 1141386 - Backout c2de53dd52d4 and 6fdc1033f217 for breaking the build. r=bustage. 2015-03-10 17:04:33 +13:00
Chris Pearce 11bfbec7ff Bug 1141386 - Test case for gmp-clearkey's base64 key/keyId decoding. r=edwin 2015-03-10 16:49:15 +13:00
Chris Pearce 896fc7df01 Bug 1141386 - Don't always assume base64 encoded EME key/Ids have padding stripped. r=edwin 2015-03-10 16:49:03 +13:00
Chris Pearce d2907f0381 Bug 1140797 - Prevent fatal assert when doing base64 decode in gmp-clearkey. r=edwin 2015-03-09 08:27:18 +13:00
Chris Pearce 50770662aa Bug 1140797 - Make gmp-clearkey buildable outside of mozilla-central. r=edwin 2015-03-09 08:27:05 +13:00
Chris Pearce 889621fe9a Bug 1138777 - Don't do sync dispatch in gmp-clearkey AudioDecoder. r=edwin 2015-03-04 23:20:29 +13:00
Chris Pearce 1618c6fa37 Bug 1137489 - Fix unified build failure in gmp-clearkey. r=edwin 2015-02-28 16:15:18 +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
Chris Pearce 2880c3a9b1 Bug 1124031 part 4 - Enforce min CDM version from keySystem string. r=bz 2015-02-20 14:38:08 +13:00
Jacek Caban 1de69a46f1 Bug 1133479 - Fixed media/gmp-clearkey build on mingw. r=cpearce 2015-02-17 11:18:04 +01:00
Chris Peterson 7eb58b57db Bug 1133291 - Remove unused code from Clear Key's openaes. r=cpearce 2015-02-15 22:07:10 -08:00
JW Wang 11407de1f6 Bug 1130917 - Part 2 - improve error handling of StoreData() and ReadData(). r=edwin. 2015-02-10 18:18:00 +01:00
Edwin Flores 82f6804a0c Bug 1075199 - Output a different clearkey.info depending on platform - r=cpearce,gps
--HG--
rename : media/gmp-clearkey/0.1/clearkey.info => media/gmp-clearkey/0.1/clearkey.info.in
2015-02-03 16:59:39 +13:00
Edwin Flores bc2814dfe3 Bug 1075199 - More logging in ClearKey CDM - r=cpearce 2015-01-27 18:35:36 +13:00
Edwin Flores 4e3006ddd2 Bug 1075199 - WMF decoding in ClearKey CDM - r=cpearce 2015-01-16 10:37:54 +13:00
Edwin Flores f68bdd6433 Bug 1075199 - Import WMF decoding code from cpearce's gmp-clearkey implementation - r=cpearce 2015-01-16 10:37:54 +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
Edwin Flores e49b1630b3 Bug 1118383 - Plug memory leak in openaes - r=cpearce 2015-01-27 19:10:11 +13: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
Edwin Flores 1f04f15482 Bug 1075199 - Separate session management from ClearKeyDecryptionManager - r=cpearce
--HG--
rename : media/gmp-clearkey/0.1/ClearKeyDecryptionManager.cpp => media/gmp-clearkey/0.1/ClearKeySessionManager.cpp
2015-01-12 20:15:55 +13:00
Masatoshi Kimura bf312ad056 Bug 1120062 - Part 1: Remove most Nullptr.h includes. r=waldo 2015-01-11 11:34:52 +09: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 ee2a73fe1c Bug 1109457 - Prevent potential for Join()ing a pointer held in free'd memory in gmp-clearkey. r=edwin 2014-12-19 09:55:05 +13:00
Chris Pearce 67369e80dd Bug 1109457 - Use Contains instead of std.find to detect whether we have keys in gmp-clearkey, and don't overwrite old decryptors when we get a new key. r=edwin. 2014-12-19 09:55:00 +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 91c26dceb7 Bug 1109457 - Use Contains instead of std.find to detect whether we have keys in gmp-clearkey, and don't overwrite old decryptors when we get a new key. r=edwin. 2014-12-18 16:16:20 +13: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 5b926c8fae Bug 1110497 - Reject promises for clearkey updates with invalid license data. r=edwin 2014-12-15 14:24:30 +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
Landry Breuil ffaaba4c8e Bug 1092023: comment out oaes_get_seed() definition r=edwin
It's unused (the sole caller is already commented out),
and uses deprecated ftime() & sys/timeb.h which are not
available on OpenBSD and Android NDK r10c.
Dont build openaes/rand.c, OAES_HAVE_ISAAC is not defined.
Remove now unused rand.c & rand.h.
2014-11-24 23:46:08 +01: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 Peterson a05d3eba03 Back out changeset c98cb03a8475 (Bug 1098134) for Windows build bustage. 2014-11-14 00:09:58 -08:00
Chris Peterson afa32e1976 Bug 1098134 - Fix or suppress warnings in gmp-api, gmp-clearkey, and gmp-plugin and mark as FAIL_ON_WARNINGS. r=cpearce 2014-10-22 00:40:18 -07:00
Mike Shal 41d9ecebaf Bug 1087088 - Don't install libclearkey to dist/bin; r=ted 2014-10-30 11:07:18 -04:00
Mike Hommey 47c853314f Bug 1077148 part 4 - Add and use new moz.build templates for Gecko programs and libraries. r=gps
There are, sadly, many combinations of linkage in use throughout the tree.
The main differentiator, though, is between program/libraries related to
Gecko or not. Kind of. Some need mozglue, some don't. Some need dependent
linkage, some standalone.

Anyways, these new templates remove the need to manually define the
right dependencies against xpcomglue, nspr, mozalloc and mozglue
in most cases.

Places that build programs and were resetting MOZ_GLUE_PROGRAM_LDFLAGS
or that build libraries and were resetting MOZ_GLUE_LDFLAGS can now
just not use those Gecko-specific templates.
2014-10-30 13:06:12 +09:00
Gabriel Ivanica 5a40b96b5b Bug 1089705 - Replace "assert" with "MOZ_ASSERT" in some media code. r=dholbert 2014-10-29 00:43:18 +02:00
Daniel Holbert a01932fc4c Bug 1083373 part 2: Assert that array index is in-bounds, and cast it from char to size_t to fix clang warning. r=edwin 2014-10-27 23:17:54 -07:00