diff options
author | Chong Zhang <chz@google.com> | 2013-05-03 21:54:17 -0700 |
---|---|---|
committer | Chong Zhang <chz@google.com> | 2013-05-17 16:18:28 -0700 |
commit | 308bcaa44e578279e61be32b572fdb0b11b1e4c7 (patch) | |
tree | 3b76d5e38e37ca9f59c689bfb6aef11a75a35249 /include/media/IHDCP.h | |
parent | 6d101328e34557fa251b7d52d4d8dbf59620d099 (diff) | |
download | frameworks_av-308bcaa44e578279e61be32b572fdb0b11b1e4c7.zip frameworks_av-308bcaa44e578279e61be32b572fdb0b11b1e4c7.tar.gz frameworks_av-308bcaa44e578279e61be32b572fdb0b11b1e4c7.tar.bz2 |
wifi-display: add support for metadata mode on encoder output
pass buffer_handle_t from encoder output to HDCP encryptor input
Bug: 8968123
Change-Id: Iea8007ce568641e213fd2e3cf6947a6f7a95746c
Diffstat (limited to 'include/media/IHDCP.h')
-rw-r--r-- | include/media/IHDCP.h | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/include/media/IHDCP.h b/include/media/IHDCP.h index 6d27b18..54fefa3 100644 --- a/include/media/IHDCP.h +++ b/include/media/IHDCP.h @@ -17,6 +17,7 @@ #include <binder/IInterface.h> #include <media/hardware/HDCPAPI.h> #include <media/stagefright/foundation/ABase.h> +#include <ui/GraphicBuffer.h> namespace android { @@ -59,6 +60,20 @@ struct IHDCP : public IInterface { const void *inData, size_t size, uint32_t streamCTR, uint64_t *outInputCTR, void *outData) = 0; + // Encrypt data according to the HDCP spec. "size" bytes of data starting + // at location "offset" are available in "buffer" (buffer handle). "size" + // may not be a multiple of 128 bits (16 bytes). An equal number of + // encrypted bytes should be written to the buffer at "outData" (virtual + // address). This operation is to be synchronous, i.e. this call does not + // return until outData contains size bytes of encrypted data. + // streamCTR will be assigned by the caller (to 0 for the first PES stream, + // 1 for the second and so on) + // inputCTR _will_be_maintained_by_the_callee_ for each PES stream. + virtual status_t encryptNative( + const sp<GraphicBuffer> &graphicBuffer, + size_t offset, size_t size, uint32_t streamCTR, + uint64_t *outInputCTR, void *outData) = 0; + // DECRYPTION only: // Decrypt data according to the HDCP spec. // "size" bytes of encrypted data are available at "inData" |