Closed Bug 1261192 Opened 4 years ago Closed 4 years ago

[EME] Adobe GMP can't be used for decoding content decrypted by gmp-clearkey

Categories

(Core :: Audio/Video: Playback, defect)

x86
Windows
defect
Not set

Tracking

()

RESOLVED FIXED
mozilla48
Tracking Status
firefox46 --- wontfix
firefox47 --- fixed
firefox48 --- fixed

People

(Reporter: cpearce, Assigned: cpearce)

References

(Blocks 1 open bug)

Details

Attachments

(1 file)

If WMF isn't available and we try to play ClearKey content, we're supposed to be able to use Adobe's GMP for decoding the content decrypted by gmp-clearkey. That's not working, because the Adobe audio decoder is throwing a kCryptoErr when the first decrypted audio packet is input.

This is because after the EMEDecryptor uses gmp-clearkey to decrypt the audio packet, the MediaRawData that it passes into GMPAudioDecoder to decode via the unencrypted decoding path with Adobe's GMP has it's crypto data still valid, even though the sample is now no longer encrypted. This leads the Adobe GMP to think it's encrypted, and it throws an error.

STR:
1. Open mse-clearkey on Windows N/KN or other Windows without WMF.
2. Observe playback error

Expected result:
mse-clearkey plays Sintel trailer.
The Adobe GMP unencrypted decoder can't decode unencrypted input which has
valid crypto data attached; it thinks the sample is encrypted, and returns a
crypto error and decoding fails. The sample should be decrypted by the time
we pass it to the wrapped decoder, so decoding should succeed without the
crypto data.


MozReview-Commit-ID: KjZcQyYiRqp
Attachment #8736940 - Flags: review?(gsquelart)
Attachment #8736940 - Flags: review?(gsquelart) → review+
https://hg.mozilla.org/integration/mozilla-inbound/rev/ba007e9d5ef1195d196c171859ce911e8cf8604f
Bug 1261192 - Make EMEDecryptor clear decrypted samples' crypto field before passing to wrapped MediaDataDecoder for decoding.  r=gerald
https://hg.mozilla.org/mozilla-central/rev/ba007e9d5ef1
Status: NEW → RESOLVED
Closed: 4 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla48
Comment on attachment 8736940 [details] [diff] [review]
Make EMEDecryptor clear decrypted samples' crypto field before passing to wrapped MediaDataDecoder for decoding

Approval Request Comment
[Feature/regressing bug #]: EME
[User impact if declined]: Some EME content will fail to play on Windows N and KN and Vista systems which lack system audio decoders
[Describe test coverage new/current, TreeHerder]: We have lots of EME mochitests
[Risks and why]: Pretty low; basically just clears some unnecessary metadata during our decoding operation.
[String/UUID change made/needed]: none.
Attachment #8736940 - Flags: approval-mozilla-aurora?
Comment on attachment 8736940 [details] [diff] [review]
Make EMEDecryptor clear decrypted samples' crypto field before passing to wrapped MediaDataDecoder for decoding

Fixes playback issues on windows, Aurora47+
Attachment #8736940 - Flags: approval-mozilla-aurora? → approval-mozilla-aurora+
Hi Chris, is this also an issue on 46? Just wondering if we need to uplift to Beta 46 or not.
Flags: needinfo?(cpearce)
I don't think this is critical enough to require uplift to 46.
Flags: needinfo?(cpearce)
(In reply to Chris Pearce (:cpearce) from comment #7)
> I don't think this is critical enough to require uplift to 46.

Got it. Thanks!
You need to log in before you can comment on or make changes to this bug.