Initial Clear Key DRM Engine
Adds the initial pieces of a sample DRM Engine that accepts keys in the clear through the decrypt call instead of using the DrmClientPlugin and its key ladder. This is to help unblock teams writing code that consumes DRM Engines while Widevine continues working their real DRM engine. This is based on the in-progress Widevine DRM Engine. This change contains the DRM Engine glue pieces (.so entry point, DrmPluginFactory, etc.) and a CryptoPlugin implementation. However, said CryptoPlugin will not work until an implementation of OEMCrypto is provided in a future checkin and the CryptoPlugin is hooked up to it. For ease of loading, this library also implements the old CryptoFactory interface and entry point. If asked to create a CryptoPlugin with no data, it will defer to the old Widevine Crypto Plugin. Change-Id: I0bfbec7e32439a50a2956488dd970284f0075e61
This commit is contained in:
committed by
Jeff Tinker
parent
d5aa1e41d3
commit
04bfbb0198
32
libclearkeydrmengine/Android.mk
Normal file
32
libclearkeydrmengine/Android.mk
Normal file
@@ -0,0 +1,32 @@
|
||||
LOCAL_PATH := $(call my-dir)
|
||||
|
||||
# We depend on the static libraries from our subdirectories to build this
|
||||
# shared library
|
||||
include $(call all-subdir-makefiles)
|
||||
|
||||
include $(CLEAR_VARS)
|
||||
|
||||
LOCAL_SRC_FILES := \
|
||||
src/WVCreateDrmPluginFactory.cpp \
|
||||
src/WVDrmPluginFactory.cpp \
|
||||
|
||||
LOCAL_C_INCLUDES := \
|
||||
frameworks/native/include \
|
||||
frameworks/av/include \
|
||||
vendor/widevine/libclearkeydrmengine/include \
|
||||
vendor/widevine/libclearkeydrmengine/crypto/include \
|
||||
vendor/widevine/libclearkeydrmengine/oemcrypto/include \
|
||||
|
||||
LOCAL_STATIC_LIBRARIES := \
|
||||
libwvclearkeycryptoplugin \
|
||||
|
||||
LOCAL_SHARED_LIBRARIES := \
|
||||
liblog \
|
||||
libutils \
|
||||
libdl \
|
||||
|
||||
LOCAL_MODULE := libclearkeydrmengine
|
||||
|
||||
LOCAL_MODULE_TAGS := optional
|
||||
|
||||
include $(BUILD_SHARED_LIBRARY)
|
||||
Reference in New Issue
Block a user