Modular DRM for MediaPlayer
Bug: 34559906
Test: Manual through the test app
Change-Id: I286f9ff199c34563b7b8643de725f8d1534ea06c
diff --git a/media/libmediaplayerservice/nuplayer/NuPlayerSource.h b/media/libmediaplayerservice/nuplayer/NuPlayerSource.h
index 0429ef1..e7cca27 100644
--- a/media/libmediaplayerservice/nuplayer/NuPlayerSource.h
+++ b/media/libmediaplayerservice/nuplayer/NuPlayerSource.h
@@ -20,9 +20,10 @@
#include "NuPlayer.h"
+#include <media/ICrypto.h>
+#include <media/mediaplayer.h>
#include <media/stagefright/foundation/AMessage.h>
#include <media/stagefright/MetaData.h>
-#include <media/mediaplayer.h>
#include <utils/Vector.h>
namespace android {
@@ -55,6 +56,8 @@
kWhatQueueDecoderShutdown,
kWhatDrmNoLicense,
kWhatInstantiateSecureDecoders,
+ // Modular DRM
+ kWhatDrmInfo,
};
// The provides message is used to notify the player about various
@@ -132,6 +135,17 @@
virtual void setOffloadAudio(bool /* offload */) {}
+ // Modular DRM
+ virtual status_t prepareDrm(
+ const uint8_t /*uuid*/[16], const Vector<uint8_t> &/*drmSessionId*/,
+ sp<ICrypto> */*crypto*/) {
+ return INVALID_OPERATION;
+ }
+
+ virtual status_t releaseDrm() {
+ return INVALID_OPERATION;
+ }
+
protected:
virtual ~Source() {}
@@ -143,6 +157,8 @@
void notifyVideoSizeChanged(const sp<AMessage> &format = NULL);
void notifyInstantiateSecureDecoders(const sp<AMessage> &reply);
void notifyPrepared(status_t err = OK);
+ // Modular DRM
+ void notifyDrmInfo(const sp<ABuffer> &buffer);
private:
sp<AMessage> mNotify;