Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(5)

Unified Diff: webkit/media/crypto/ppapi/cdm_wrapper.cc

Issue 11028087: Add decoder de-initialize and reset to the Pepper CDM API. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Renaming and generalizing done... Created 8 years, 2 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: webkit/media/crypto/ppapi/cdm_wrapper.cc
diff --git a/webkit/media/crypto/ppapi/cdm_wrapper.cc b/webkit/media/crypto/ppapi/cdm_wrapper.cc
index 679abafc7ecbb2a8751313931f7a4f44002cfb4e..69d707451eaad306148933e00a712d4993fcae05 100644
--- a/webkit/media/crypto/ppapi/cdm_wrapper.cc
+++ b/webkit/media/crypto/ppapi/cdm_wrapper.cc
@@ -378,6 +378,10 @@ class CdmWrapper : public pp::Instance,
virtual void Decrypt(
pp::Buffer_Dev encrypted_buffer,
const PP_EncryptedBlockInfo& encrypted_block_info) OVERRIDE;
+ virtual void DeinitializeDecoder(PP_StreamType decoder_type,
+ uint32_t request_id) OVERRIDE;
+ virtual void ResetDecoder(PP_StreamType decoder_type,
+ uint32_t request_id) OVERRIDE;
virtual void DecryptAndDecodeFrame(
pp::Buffer_Dev encrypted_frame,
const PP_EncryptedVideoFrameInfo& encrypted_video_frame_info) OVERRIDE;
@@ -397,6 +401,12 @@ class CdmWrapper : public pp::Instance,
const cdm::Status& status,
const LinkedDecryptedBlock& decrypted_block,
const PP_DecryptTrackingInfo& tracking_info);
+ void DecoderDeinitializeDone(int32_t result,
+ PP_StreamType decoder_type,
+ uint32_t request_id);
+ void DecoderResetDone(int32_t result,
+ PP_StreamType decoder_type,
+ uint32_t request_id);
void DeliverFrame(int32_t result,
const cdm::Status& status,
const LinkedVideoFrame& video_frame,
@@ -530,6 +540,25 @@ void CdmWrapper::Decrypt(pp::Buffer_Dev encrypted_buffer,
encrypted_block_info.tracking_info));
}
+void CdmWrapper::DeinitializeDecoder(PP_StreamType decoder_type,
+ uint32_t request_id) {
+ // TODO(tomfinegan): Implement DeinitializeDecoder in clear key CDM, and call
+ // it here.
+ CallOnMain(callback_factory_.NewCallback(
+ &CdmWrapper::DecoderDeinitializeDone,
+ decoder_type,
+ request_id));
+}
+
+void CdmWrapper::ResetDecoder(PP_StreamType decoder_type,
+ uint32_t request_id) {
+ // TODO(tomfinegan): Implement ResetDecoder in clear key CDM, and call it
+ // here.
+ CallOnMain(callback_factory_.NewCallback(&CdmWrapper::DecoderResetDone,
+ decoder_type,
+ request_id));
+}
+
void CdmWrapper::DecryptAndDecodeFrame(
pp::Buffer_Dev encrypted_frame,
const PP_EncryptedVideoFrameInfo& encrypted_video_frame_info) {
@@ -607,6 +636,19 @@ void CdmWrapper::DeliverBlock(int32_t result,
pp::ContentDecryptor_Private::DeliverBlock(buffer, decrypted_block_info);
}
+void CdmWrapper::DecoderDeinitializeDone(int32_t result,
+ PP_StreamType decoder_type,
+ uint32_t request_id) {
+ pp::ContentDecryptor_Private::DecoderDeinitializeDone(decoder_type,
+ request_id);
+}
+
+void CdmWrapper::DecoderResetDone(int32_t result,
+ PP_StreamType decoder_type,
+ uint32_t request_id) {
+ pp::ContentDecryptor_Private::DecoderResetDone(decoder_type, request_id);
+}
+
void CdmWrapper::DeliverFrame(
int32_t result,
const cdm::Status& status,

Powered by Google App Engine
This is Rietveld 408576698