diff options
Diffstat (limited to 'include/media/stagefright/FileSource.h')
-rw-r--r-- | include/media/stagefright/FileSource.h | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/include/media/stagefright/FileSource.h b/include/media/stagefright/FileSource.h index 8a215ea..4307263 100644 --- a/include/media/stagefright/FileSource.h +++ b/include/media/stagefright/FileSource.h @@ -23,6 +23,7 @@ #include <media/stagefright/DataSource.h> #include <media/stagefright/MediaErrors.h> #include <utils/threads.h> +#include <drm/DrmManagerClient.h> namespace android { @@ -37,15 +38,29 @@ public: virtual status_t getSize(off_t *size); + virtual DecryptHandle* DrmInitialization(DrmManagerClient *client); + + virtual void getDrmInfo(DecryptHandle **handle, DrmManagerClient **client); + protected: virtual ~FileSource(); private: FILE *mFile; + int mFd; int64_t mOffset; int64_t mLength; Mutex mLock; + /*for DRM*/ + DecryptHandle *mDecryptHandle; + DrmManagerClient *mDrmManagerClient; + int64_t mDrmBufOffset; + int64_t mDrmBufSize; + unsigned char *mDrmBuf; + + ssize_t readAtDRM(off_t offset, void *data, size_t size); + FileSource(const FileSource &); FileSource &operator=(const FileSource &); }; |