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

Unified Diff: media/filters/video_renderer_base.cc

Issue 8417019: Simplify VideoDecodeEngine interface by making everything synchronous. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: cleanup++ Created 9 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: media/filters/video_renderer_base.cc
diff --git a/media/filters/video_renderer_base.cc b/media/filters/video_renderer_base.cc
index 8334cd1392bccc87d005f878cc4df14b0926d461..97ef3e90bbfd5296ebd5bb32700804466cc06e92 100644
--- a/media/filters/video_renderer_base.cc
+++ b/media/filters/video_renderer_base.cc
@@ -363,18 +363,13 @@ void VideoRendererBase::PutCurrentFrame(scoped_refptr<VideoFrame> frame) {
}
void VideoRendererBase::ConsumeVideoFrame(scoped_refptr<VideoFrame> frame) {
- if (frame) {
- PipelineStatistics statistics;
- statistics.video_frames_decoded = 1;
- statistics_callback_.Run(statistics);
- }
+ DCHECK(frame);
- base::AutoLock auto_lock(lock_);
+ PipelineStatistics statistics;
+ statistics.video_frames_decoded = 1;
+ statistics_callback_.Run(statistics);
acolwell GONE FROM CHROMIUM 2011/10/28 17:38:47 Do we want to include end of stream or empty frame
scherkus (not reviewing) 2011/11/01 04:18:26 Moved below -- also shouldn't the decoder incremen
- if (!frame) {
- EnterErrorState_Locked(PIPELINE_ERROR_DECODE);
- return;
- }
+ base::AutoLock auto_lock(lock_);
// Decoder could reach seek state before our Seek() get called.
// We will enter kSeeking
@@ -383,14 +378,14 @@ void VideoRendererBase::ConsumeVideoFrame(scoped_refptr<VideoFrame> frame) {
// Synchronous flush between filters should prevent this from happening.
DCHECK_NE(state_, kStopped);
- if (frame.get() && !frame->IsEndOfStream())
+ if (!frame->IsEndOfStream())
acolwell GONE FROM CHROMIUM 2011/10/28 17:38:47 Why don't end of stream frames decrement the pendi
scherkus (not reviewing) 2011/11/01 04:18:26 Done.
--pending_reads_;
DCHECK(state_ != kUninitialized && state_ != kStopped && state_ != kError);
if (state_ == kPaused || state_ == kFlushing) {
// Decoder are flushing rubbish video frame, we will not display them.
- if (frame.get() && !frame->IsEndOfStream())
+ if (!frame->IsEndOfStream())
frames_queue_done_.push_back(frame);
DCHECK_LE(frames_queue_done_.size(),
acolwell GONE FROM CHROMIUM 2011/10/28 17:38:47 Remove this queue. Frame recycling must die.
scherkus (not reviewing) 2011/11/01 04:18:26 Done.
static_cast<size_t>(Limits::kMaxVideoFrames));

Powered by Google App Engine
This is Rietveld 408576698