summaryrefslogtreecommitdiffstats
path: root/media/capture/video/mac/video_capture_device_mac.mm
diff options
context:
space:
mode:
Diffstat (limited to 'media/capture/video/mac/video_capture_device_mac.mm')
-rw-r--r--media/capture/video/mac/video_capture_device_mac.mm12
1 files changed, 11 insertions, 1 deletions
diff --git a/media/capture/video/mac/video_capture_device_mac.mm b/media/capture/video/mac/video_capture_device_mac.mm
index 432fbfb..ec6fcaf 100644
--- a/media/capture/video/mac/video_capture_device_mac.mm
+++ b/media/capture/video/mac/video_capture_device_mac.mm
@@ -545,8 +545,18 @@ void VideoCaptureDeviceMac::ReceiveFrame(const uint8_t* video_frame,
return;
}
+ base::TimeTicks aligned_timestamp;
+ if (timestamp == media::kNoTimestamp()) {
+ aligned_timestamp = base::TimeTicks::Now();
+ } else {
+ if (first_timestamp_ == media::kNoTimestamp()) {
+ first_timestamp_ = timestamp;
+ first_aligned_timestamp_ = base::TimeTicks::Now();
+ }
+ aligned_timestamp = first_aligned_timestamp_ + timestamp - first_timestamp_;
+ }
client_->OnIncomingCapturedData(video_frame, video_frame_length, frame_format,
- 0, base::TimeTicks::Now());
+ 0, aligned_timestamp);
}
void VideoCaptureDeviceMac::ReceiveError(