OLD | NEW |
---|---|
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #include <cstring> | 5 #include <cstring> |
6 #include <string> | 6 #include <string> |
7 #include <vector> | 7 #include <vector> |
8 | 8 |
9 #include "base/basictypes.h" | 9 #include "base/basictypes.h" |
10 #include "base/compiler_specific.h" | 10 #include "base/compiler_specific.h" |
11 #include "base/logging.h" | |
11 #include "ppapi/c/pp_errors.h" | 12 #include "ppapi/c/pp_errors.h" |
12 #include "ppapi/c/pp_stdint.h" | 13 #include "ppapi/c/pp_stdint.h" |
13 #include "ppapi/c/private/pp_content_decryptor.h" | 14 #include "ppapi/c/private/pp_content_decryptor.h" |
14 #include "ppapi/cpp/completion_callback.h" | 15 #include "ppapi/cpp/completion_callback.h" |
15 #include "ppapi/cpp/core.h" | 16 #include "ppapi/cpp/core.h" |
16 #include "ppapi/cpp/instance.h" | 17 #include "ppapi/cpp/instance.h" |
17 #include "ppapi/cpp/logging.h" | 18 #include "ppapi/cpp/logging.h" |
18 #include "ppapi/cpp/module.h" | 19 #include "ppapi/cpp/module.h" |
19 #include "ppapi/cpp/pass_ref.h" | 20 #include "ppapi/cpp/pass_ref.h" |
20 #include "ppapi/cpp/resource.h" | 21 #include "ppapi/cpp/resource.h" |
(...skipping 592 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
613 pp::ContentDecryptor_Private::KeyError(key_system_, | 614 pp::ContentDecryptor_Private::KeyError(key_system_, |
614 session_id, | 615 session_id, |
615 kUnknownError, | 616 kUnknownError, |
616 0); | 617 0); |
617 } | 618 } |
618 | 619 |
619 void CdmWrapper::DeliverBlock(int32_t result, | 620 void CdmWrapper::DeliverBlock(int32_t result, |
620 const cdm::Status& status, | 621 const cdm::Status& status, |
621 const LinkedDecryptedBlock& decrypted_block, | 622 const LinkedDecryptedBlock& decrypted_block, |
622 const PP_DecryptTrackingInfo& tracking_info) { | 623 const PP_DecryptTrackingInfo& tracking_info) { |
624 DVLOG(2) << "DeliverBlock() - status " << status; | |
Tom Finegan
2012/10/11 23:57:56
This is going to cause link failures on windows bu
xhwang
2012/10/12 00:06:44
Yeah, I think we are trying to remove dependency o
ddorwin
2012/10/12 00:21:16
Done.
ddorwin
2012/10/12 00:21:16
Done.
| |
625 | |
623 PP_DCHECK(result == PP_OK); | 626 PP_DCHECK(result == PP_OK); |
624 PP_DecryptedBlockInfo decrypted_block_info; | 627 PP_DecryptedBlockInfo decrypted_block_info; |
625 decrypted_block_info.tracking_info = tracking_info; | 628 decrypted_block_info.tracking_info = tracking_info; |
626 decrypted_block_info.tracking_info.timestamp = decrypted_block->timestamp(); | 629 decrypted_block_info.tracking_info.timestamp = decrypted_block->timestamp(); |
627 | 630 |
628 switch (status) { | 631 switch (status) { |
629 case cdm::kSuccess: | 632 case cdm::kSuccess: |
630 decrypted_block_info.result = PP_DECRYPTRESULT_SUCCESS; | 633 decrypted_block_info.result = PP_DECRYPTRESULT_SUCCESS; |
631 PP_DCHECK(decrypted_block.get() && decrypted_block->buffer()); | 634 PP_DCHECK(decrypted_block.get() && decrypted_block->buffer()); |
632 break; | 635 break; |
633 case cdm::kNoKey: | 636 case cdm::kNoKey: |
634 decrypted_block_info.result = PP_DECRYPTRESULT_DECRYPT_NOKEY; | 637 decrypted_block_info.result = PP_DECRYPTRESULT_DECRYPT_NOKEY; |
635 break; | 638 break; |
636 case cdm::kDecryptError: | 639 case cdm::kDecryptError: |
637 decrypted_block_info.result = PP_DECRYPTRESULT_DECRYPT_ERROR; | 640 decrypted_block_info.result = PP_DECRYPTRESULT_DECRYPT_ERROR; |
638 break; | 641 break; |
639 default: | 642 default: |
640 PP_DCHECK(false); | 643 PP_DCHECK(false); |
641 decrypted_block_info.result = PP_DECRYPTRESULT_DECRYPT_ERROR; | 644 decrypted_block_info.result = PP_DECRYPTRESULT_DECRYPT_ERROR; |
642 } | 645 } |
643 | 646 |
644 const pp::Buffer_Dev& buffer = | 647 const pp::Buffer_Dev& buffer = |
645 decrypted_block.get() && decrypted_block->buffer() ? | 648 decrypted_block.get() && decrypted_block->buffer() ? |
646 static_cast<PpbBuffer*>(decrypted_block->buffer())->buffer_dev() : | 649 static_cast<PpbBuffer*>(decrypted_block->buffer())->buffer_dev() : |
647 pp::Buffer_Dev(); | 650 pp::Buffer_Dev(); |
648 | 651 |
649 pp::ContentDecryptor_Private::DeliverBlock(buffer, decrypted_block_info); | 652 pp::ContentDecryptor_Private::DeliverBlock(buffer, decrypted_block_info); |
650 } | 653 } |
651 | 654 |
652 void CdmWrapper::DeliverFrame( | 655 void CdmWrapper::DeliverFrame( |
653 int32_t result, | 656 int32_t result, |
654 const cdm::Status& status, | 657 const cdm::Status& status, |
655 const LinkedVideoFrame& video_frame, | 658 const LinkedVideoFrame& video_frame, |
656 const PP_DecryptTrackingInfo& tracking_info) { | 659 const PP_DecryptTrackingInfo& tracking_info) { |
660 DVLOG(2) << "DeliverFrame() - status " << status; | |
Tom Finegan
2012/10/11 23:57:56
Ditto.
ddorwin
2012/10/12 00:21:16
Done.
| |
657 PP_DCHECK(result == PP_OK); | 661 PP_DCHECK(result == PP_OK); |
658 PP_DecryptedFrameInfo decrypted_frame_info; | 662 PP_DecryptedFrameInfo decrypted_frame_info; |
659 decrypted_frame_info.tracking_info = tracking_info; | 663 decrypted_frame_info.tracking_info = tracking_info; |
660 | 664 |
661 switch (status) { | 665 switch (status) { |
662 case cdm::kSuccess: | 666 case cdm::kSuccess: |
663 PP_DCHECK(video_frame->format() == cdm::kI420 || | 667 PP_DCHECK(video_frame->format() == cdm::kI420 || |
664 video_frame->format() == cdm::kYv12); | 668 video_frame->format() == cdm::kYv12); |
665 PP_DCHECK(video_frame.get() && video_frame->frame_buffer()); | 669 PP_DCHECK(video_frame.get() && video_frame->frame_buffer()); |
666 decrypted_frame_info.result = PP_DECRYPTRESULT_SUCCESS; | 670 decrypted_frame_info.result = PP_DECRYPTRESULT_SUCCESS; |
(...skipping 51 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
718 } // namespace webkit_media | 722 } // namespace webkit_media |
719 | 723 |
720 namespace pp { | 724 namespace pp { |
721 | 725 |
722 // Factory function for your specialization of the Module object. | 726 // Factory function for your specialization of the Module object. |
723 Module* CreateModule() { | 727 Module* CreateModule() { |
724 return new webkit_media::CdmWrapperModule(); | 728 return new webkit_media::CdmWrapperModule(); |
725 } | 729 } |
726 | 730 |
727 } // namespace pp | 731 } // namespace pp |
OLD | NEW |