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

Unified Diff: content/renderer/media/android/media_source_delegate.cc

Issue 935243002: Decryptors can report kNoKey to WebMediaPlayer (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Android changes Created 5 years, 10 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: content/renderer/media/android/media_source_delegate.cc
diff --git a/content/renderer/media/android/media_source_delegate.cc b/content/renderer/media/android/media_source_delegate.cc
index a5bf0b619af9cc333cb384ddc8984fb6ef8871d4..25813a179581476fcbc30dbd9d0a2d1bbc4a08d2 100644
--- a/content/renderer/media/android/media_source_delegate.cc
+++ b/content/renderer/media/android/media_source_delegate.cc
@@ -152,7 +152,8 @@ void MediaSourceDelegate::InitializeMediaSource(
encrypted_media_init_data_cb,
const media::SetDecryptorReadyCB& set_decryptor_ready_cb,
const UpdateNetworkStateCB& update_network_state_cb,
- const DurationChangeCB& duration_change_cb) {
+ const DurationChangeCB& duration_change_cb,
+ const base::Closure& waiting_for_decryption_key_cb) {
DCHECK(main_task_runner_->BelongsToCurrentThread());
DCHECK(!media_source_opened_cb.is_null());
media_source_opened_cb_ = media_source_opened_cb;
@@ -160,6 +161,7 @@ void MediaSourceDelegate::InitializeMediaSource(
set_decryptor_ready_cb_ = media::BindToCurrentLoop(set_decryptor_ready_cb);
update_network_state_cb_ = media::BindToCurrentLoop(update_network_state_cb);
duration_change_cb_ = duration_change_cb;
+ waiting_for_decryption_key_cb_ = waiting_for_decryption_key_cb;
access_unit_size_ = kAccessUnitSizeForMediaSource;
chunk_demuxer_.reset(new media::ChunkDemuxer(
@@ -521,7 +523,8 @@ void MediaSourceDelegate::InitAudioDecryptingDemuxerStream() {
DCHECK(!set_decryptor_ready_cb_.is_null());
audio_decrypting_demuxer_stream_.reset(new media::DecryptingDemuxerStream(
- media_task_runner_, set_decryptor_ready_cb_));
+ media_task_runner_, set_decryptor_ready_cb_,
+ waiting_for_decryption_key_cb_));
audio_decrypting_demuxer_stream_->Initialize(
audio_stream_,
base::Bind(&MediaSourceDelegate::OnAudioDecryptingDemuxerStreamInitDone,
@@ -534,7 +537,8 @@ void MediaSourceDelegate::InitVideoDecryptingDemuxerStream() {
DCHECK(!set_decryptor_ready_cb_.is_null());
video_decrypting_demuxer_stream_.reset(new media::DecryptingDemuxerStream(
- media_task_runner_, set_decryptor_ready_cb_));
+ media_task_runner_, set_decryptor_ready_cb_,
+ waiting_for_decryption_key_cb_));
xhwang 2015/03/02 22:04:14 This fixes the decrypting-only part (where AesDecr
jrummell 2015/03/02 22:25:18 Acknowledged.
video_decrypting_demuxer_stream_->Initialize(
video_stream_,
base::Bind(&MediaSourceDelegate::OnVideoDecryptingDemuxerStreamInitDone,
« no previous file with comments | « content/renderer/media/android/media_source_delegate.h ('k') | content/renderer/media/android/webmediaplayer_android.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698