summaryrefslogtreecommitdiffstats
path: root/dom/media/ipc/MFCDMParent.h
diff options
context:
space:
mode:
Diffstat (limited to 'dom/media/ipc/MFCDMParent.h')
-rw-r--r--dom/media/ipc/MFCDMParent.h12
1 files changed, 10 insertions, 2 deletions
diff --git a/dom/media/ipc/MFCDMParent.h b/dom/media/ipc/MFCDMParent.h
index b4ef1b831b..921d86be73 100644
--- a/dom/media/ipc/MFCDMParent.h
+++ b/dom/media/ipc/MFCDMParent.h
@@ -52,7 +52,8 @@ class MFCDMParent final : public PMFCDMParent {
uint64_t Id() const { return mId; }
mozilla::ipc::IPCResult RecvGetCapabilities(
- const bool aIsHWSecured, GetCapabilitiesResolver&& aResolver);
+ const MFCDMCapabilitiesRequest& aRequest,
+ GetCapabilitiesResolver&& aResolver);
mozilla::ipc::IPCResult RecvInit(const MFCDMInitParamsIPDL& aParams,
InitResolver&& aResolver);
@@ -97,6 +98,13 @@ class MFCDMParent final : public PMFCDMParent {
private:
~MFCDMParent();
+ enum class CapabilitesFlag {
+ HarewareDecryption,
+ NeedHDCPCheck,
+ NeedClearLeadCheck,
+ };
+ using CapabilitesFlagSet = EnumSet<CapabilitesFlag, uint8_t>;
+
static LPCWSTR GetCDMLibraryName(const nsString& aKeySystem);
static HRESULT GetOrCreateFactory(
@@ -108,7 +116,7 @@ class MFCDMParent final : public PMFCDMParent {
Microsoft::WRL::ComPtr<IMFContentDecryptionModuleFactory>& aFactoryOut);
static void GetCapabilities(const nsString& aKeySystem,
- const bool aIsHWSecure,
+ const CapabilitesFlagSet& aFlags,
IMFContentDecryptionModuleFactory* aFactory,
MFCDMCapabilitiesIPDL& aCapabilitiesOut);