[GStreamer][EME][ClearKey] Request keys from CDMInstance rather than passing via...
authorcturner@igalia.com <cturner@igalia.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Fri, 18 Jan 2019 15:59:22 +0000 (15:59 +0000)
committercturner@igalia.com <cturner@igalia.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Fri, 18 Jan 2019 15:59:22 +0000 (15:59 +0000)
commit47ff4e75ab204d7eda7fe20ae4ba3ec853c85280
treedc200c30f7f001124b39f5d8d6825c1b721f29dc
parent2010d7a18e537782fd21a9e18b77ca76c99924d1
[GStreamer][EME][ClearKey] Request keys from CDMInstance rather than passing via bus messages
https://bugs.webkit.org/show_bug.cgi?id=192229

Reviewed by Xabier Rodriguez-Calvar.

Source/WebCore:

Covered by existing tests.

* platform/encryptedmedia/clearkey/CDMClearKey.cpp:
(WebCore::parseLicenseFormat): There is a defect in some C++11
compiles where they will copy this return value since the type
doesn't exactly match. Force a move with WTFMove.
* platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp:
(WebCore::MediaPlayerPrivateGStreamerBase::dispatchDecryptionKey):
Deleted. No longer used by anything.
* platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.h: Ditto.
* platform/graphics/gstreamer/eme/WebKitClearKeyDecryptorGStreamer.cpp:
Rename these methods to avoid "namespacing names".
(webkit_media_clear_key_decrypt_class_init):
(finalize):
(handleKeyResponse): This is a temporary fix, we need some more
reorganisation to be full driven by CDMInstance APIs for decryption.
(findAndSetKey):
(decrypt):
(webKitMediaClearKeyDecryptorFinalize): Deleted.
(webKitMediaClearKeyDecryptorHandleKeyResponse): Deleted.
(webKitMediaClearKeyDecryptorFindAndSetKey): Deleted.
(webKitMediaClearKeyDecryptorDecrypt): Deleted.
* platform/graphics/gstreamer/eme/WebKitCommonEncryptionDecryptorGStreamer.cpp: Ditto.
(webkit_media_common_encryption_decrypt_class_init):
(finalize):
(transformCaps):
(transformInPlace):
(isCDMInstanceAvailable):
(sinkEventHandler):
(queryHandler):
(changeState):
(setContext):
(webKitMediaCommonEncryptionDecryptorFinalize): Deleted.
(webkitMediaCommonEncryptionDecryptTransformCaps): Deleted.
(webkitMediaCommonEncryptionDecryptTransformInPlace): Deleted.
(webkitMediaCommonEncryptionDecryptIsCDMInstanceAvailable): Deleted.
(webkitMediaCommonEncryptionDecryptSinkEventHandler): Deleted.
(webkitMediaCommonEncryptionDecryptorQueryHandler): Deleted.
(webKitMediaCommonEncryptionDecryptorChangeState): Deleted.
(webKitMediaCommonEncryptionDecryptorSetContext): Deleted.
* platform/graphics/gstreamer/eme/WebKitCommonEncryptionDecryptorGStreamer.h:
* platform/graphics/gstreamer/mse/MediaPlayerPrivateGStreamerMSE.cpp:
(WebCore::MediaPlayerPrivateGStreamerMSE::attemptToDecryptWithLocalInstance):
Deleted. No longer passing key information over bus messages.
* platform/graphics/gstreamer/mse/MediaPlayerPrivateGStreamerMSE.h:

Tools:

* MiniBrowser/wpe/main.cpp:
(main): Enable encrypted-media by default.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@240148 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Source/WebCore/ChangeLog
Source/WebCore/platform/encryptedmedia/clearkey/CDMClearKey.cpp
Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp
Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.h
Source/WebCore/platform/graphics/gstreamer/eme/WebKitClearKeyDecryptorGStreamer.cpp
Source/WebCore/platform/graphics/gstreamer/eme/WebKitCommonEncryptionDecryptorGStreamer.cpp
Source/WebCore/platform/graphics/gstreamer/eme/WebKitCommonEncryptionDecryptorGStreamer.h
Source/WebCore/platform/graphics/gstreamer/mse/MediaPlayerPrivateGStreamerMSE.cpp
Source/WebCore/platform/graphics/gstreamer/mse/MediaPlayerPrivateGStreamerMSE.h
Tools/ChangeLog
Tools/MiniBrowser/wpe/main.cpp