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

Unified Diff: media/filters/decrypting_video_decoder.cc

Issue 331863004: Revert 276344 "Add callback in VideoDecoder and AudioDecoder to ..." (Closed) Base URL: svn://svn.chromium.org/chrome/branches/2049/src/
Patch Set: Created 6 years, 6 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
« no previous file with comments | « media/filters/decrypting_video_decoder.h ('k') | media/filters/decrypting_video_decoder_unittest.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: media/filters/decrypting_video_decoder.cc
===================================================================
--- media/filters/decrypting_video_decoder.cc (revision 277175)
+++ media/filters/decrypting_video_decoder.cc (working copy)
@@ -32,8 +32,7 @@
void DecryptingVideoDecoder::Initialize(const VideoDecoderConfig& config,
bool live_mode,
- const PipelineStatusCB& status_cb,
- const OutputCB& output_cb) {
+ const PipelineStatusCB& status_cb) {
DVLOG(2) << "Initialize()";
DCHECK(task_runner_->BelongsToCurrentThread());
DCHECK(state_ == kUninitialized ||
@@ -45,7 +44,6 @@
DCHECK(config.is_encrypted());
init_cb_ = BindToCurrentLoop(status_cb);
- output_cb_ = BindToCurrentLoop(output_cb);
weak_this_ = weak_factory_.GetWeakPtr();
config_ = config;
@@ -76,14 +74,13 @@
decode_cb_ = BindToCurrentLoop(decode_cb);
if (state_ == kError) {
- base::ResetAndReturn(&decode_cb_).Run(kDecodeError);
+ base::ResetAndReturn(&decode_cb_).Run(kDecodeError, NULL);
return;
}
// Return empty frames if decoding has finished.
if (state_ == kDecodeFinished) {
- output_cb_.Run(VideoFrame::CreateEOSFrame());
- base::ResetAndReturn(&decode_cb_).Run(kOk);
+ base::ResetAndReturn(&decode_cb_).Run(kOk, VideoFrame::CreateEOSFrame());
return;
}
@@ -119,7 +116,7 @@
if (state_ == kWaitingForKey) {
DCHECK(!decode_cb_.is_null());
pending_buffer_to_decode_ = NULL;
- base::ResetAndReturn(&decode_cb_).Run(kAborted);
+ base::ResetAndReturn(&decode_cb_).Run(kAborted, NULL);
}
DCHECK(decode_cb_.is_null());
@@ -148,7 +145,7 @@
if (!init_cb_.is_null())
base::ResetAndReturn(&init_cb_).Run(DECODER_ERROR_NOT_SUPPORTED);
if (!decode_cb_.is_null())
- base::ResetAndReturn(&decode_cb_).Run(kAborted);
+ base::ResetAndReturn(&decode_cb_).Run(kAborted, NULL);
if (!reset_cb_.is_null())
base::ResetAndReturn(&reset_cb_).Run();
@@ -244,7 +241,7 @@
pending_buffer_to_decode_ = NULL;
if (!reset_cb_.is_null()) {
- base::ResetAndReturn(&decode_cb_).Run(kAborted);
+ base::ResetAndReturn(&decode_cb_).Run(kAborted, NULL);
DoReset();
return;
}
@@ -254,7 +251,7 @@
if (status == Decryptor::kError) {
DVLOG(2) << "DeliverFrame() - kError";
state_ = kError;
- base::ResetAndReturn(&decode_cb_).Run(kDecodeError);
+ base::ResetAndReturn(&decode_cb_).Run(kDecodeError, NULL);
return;
}
@@ -278,11 +275,13 @@
DVLOG(2) << "DeliverFrame() - kNeedMoreData";
if (scoped_pending_buffer_to_decode->end_of_stream()) {
state_ = kDecodeFinished;
- output_cb_.Run(media::VideoFrame::CreateEOSFrame());
- } else {
- state_ = kIdle;
+ base::ResetAndReturn(&decode_cb_).Run(
+ kOk, media::VideoFrame::CreateEOSFrame());
+ return;
}
- base::ResetAndReturn(&decode_cb_).Run(kOk);
+
+ state_ = kIdle;
+ base::ResetAndReturn(&decode_cb_).Run(kNotEnoughData, NULL);
return;
}
@@ -290,8 +289,7 @@
// No frame returned with kSuccess should be end-of-stream frame.
DCHECK(!frame->end_of_stream());
state_ = kIdle;
- output_cb_.Run(frame);
- base::ResetAndReturn(&decode_cb_).Run(kOk);
+ base::ResetAndReturn(&decode_cb_).Run(kOk, frame);
}
void DecryptingVideoDecoder::OnKeyAdded() {
« no previous file with comments | « media/filters/decrypting_video_decoder.h ('k') | media/filters/decrypting_video_decoder_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698