Index: media/capture/content/thread_safe_capture_oracle.cc |
diff --git a/media/capture/content/thread_safe_capture_oracle.cc b/media/capture/content/thread_safe_capture_oracle.cc |
index ad869b7d13051343a2164f66d7b1920ce34d7912..9fc8f93b0f7e283eeee40ef89b188cd05d846b82 100644 |
--- a/media/capture/content/thread_safe_capture_oracle.cc |
+++ b/media/capture/content/thread_safe_capture_oracle.cc |
@@ -211,33 +211,26 @@ |
base::AutoLock guard(lock_); |
- if (!oracle_.CompleteCapture(frame_number, success, &reference_time)) |
- return; |
- |
- TRACE_EVENT_INSTANT0("gpu.capture", "CaptureSucceeded", |
- TRACE_EVENT_SCOPE_THREAD); |
- |
- if (!client_) |
- return; // Capture is stopped. |
- |
- frame->metadata()->SetDouble(VideoFrameMetadata::FRAME_RATE, |
- params_.requested_format.frame_rate); |
- frame->metadata()->SetTimeTicks(VideoFrameMetadata::CAPTURE_BEGIN_TIME, |
- capture_begin_time); |
- frame->metadata()->SetTimeTicks(VideoFrameMetadata::CAPTURE_END_TIME, |
- base::TimeTicks::Now()); |
- frame->metadata()->SetTimeDelta(VideoFrameMetadata::FRAME_DURATION, |
- estimated_frame_duration); |
- frame->metadata()->SetTimeTicks(VideoFrameMetadata::REFERENCE_TIME, |
- reference_time); |
- |
- DCHECK(frame->IsMappable()); |
- media::VideoCaptureFormat format(frame->coded_size(), |
- params_.requested_format.frame_rate, |
- frame->format(), media::PIXEL_STORAGE_CPU); |
- client_->OnIncomingCapturedBufferExt( |
- std::move(buffer), format, reference_time, frame->timestamp(), |
- frame->visible_rect(), *frame->metadata()); |
+ if (oracle_.CompleteCapture(frame_number, success, &reference_time)) { |
+ TRACE_EVENT_INSTANT0("gpu.capture", "CaptureSucceeded", |
+ TRACE_EVENT_SCOPE_THREAD); |
+ |
+ if (!client_) |
+ return; // Capture is stopped. |
+ |
+ frame->metadata()->SetDouble(VideoFrameMetadata::FRAME_RATE, |
+ params_.requested_format.frame_rate); |
+ frame->metadata()->SetTimeTicks(VideoFrameMetadata::CAPTURE_BEGIN_TIME, |
+ capture_begin_time); |
+ frame->metadata()->SetTimeTicks(VideoFrameMetadata::CAPTURE_END_TIME, |
+ base::TimeTicks::Now()); |
+ frame->metadata()->SetTimeDelta(VideoFrameMetadata::FRAME_DURATION, |
+ estimated_frame_duration); |
+ frame->metadata()->SetTimeTicks(VideoFrameMetadata::REFERENCE_TIME, |
+ reference_time); |
+ |
+ client_->OnIncomingCapturedVideoFrame(std::move(buffer), std::move(frame)); |
+ } |
} |
void ThreadSafeCaptureOracle::OnConsumerReportingUtilization( |