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

Unified Diff: content/browser/renderer_host/media/video_capture_device_client.cc

Issue 2045813003: Decouple capture timestamp and reference time (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Nit Created 4 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
Index: content/browser/renderer_host/media/video_capture_device_client.cc
diff --git a/content/browser/renderer_host/media/video_capture_device_client.cc b/content/browser/renderer_host/media/video_capture_device_client.cc
index a8a1ca91f4397283e4be936f02e2793708d097eb..4e7321c5f5ac36c44046b6625fc7bd27a4f6cd08 100644
--- a/content/browser/renderer_host/media/video_capture_device_client.cc
+++ b/content/browser/renderer_host/media/video_capture_device_client.cc
@@ -225,9 +225,9 @@ void VideoCaptureDeviceClient::OnIncomingCapturedData(
} else if (status == VideoCaptureGpuJpegDecoder::INIT_PASSED &&
frame_format.pixel_format == media::PIXEL_FORMAT_MJPEG &&
rotation == 0 && !flip) {
- // TODO(qiangchen): Pass timestamp into DecodeCapturedData.
- external_jpeg_decoder_->DecodeCapturedData(
- data, length, frame_format, reference_time, std::move(buffer));
+ external_jpeg_decoder_->DecodeCapturedData(data, length, frame_format,
+ reference_time, timestamp,
+ std::move(buffer));
return;
}
}
@@ -323,20 +323,19 @@ void VideoCaptureDeviceClient::OnIncomingCapturedBuffer(
return;
frame->metadata()->SetDouble(media::VideoFrameMetadata::FRAME_RATE,
frame_format.frame_rate);
- OnIncomingCapturedVideoFrame(std::move(buffer), frame, reference_time);
+ frame->metadata()->SetTimeTicks(media::VideoFrameMetadata::REFERENCE_TIME,
+ reference_time);
+ OnIncomingCapturedVideoFrame(std::move(buffer), frame);
}
void VideoCaptureDeviceClient::OnIncomingCapturedVideoFrame(
std::unique_ptr<Buffer> buffer,
- const scoped_refptr<VideoFrame>& frame,
- base::TimeTicks reference_time) {
- // TODO(qiangchen): Dive into DoIncomingCapturedVideoFrameOnIOThread to
- // process timestamp.
+ const scoped_refptr<VideoFrame>& frame) {
BrowserThread::PostTask(
BrowserThread::IO, FROM_HERE,
base::Bind(
&VideoCaptureController::DoIncomingCapturedVideoFrameOnIOThread,
- controller_, base::Passed(&buffer), frame, reference_time));
+ controller_, base::Passed(&buffer), frame));
}
std::unique_ptr<media::VideoCaptureDevice::Client::Buffer>

Powered by Google App Engine
This is Rietveld 408576698