|
|
Decouple capture timestamp and reference time
In this CL, we changed the signature of
VideoCaptureDevice::OnIncomingCapturedData
to take one more parameter called reference_time.
Background:
Previously, we have only timestamp parameter, and it actually
plays the role as timestamp and reference_time.
Here we define timestamp as the ideal time span between
the current frame and the first frame in the stream.
Define reference time as the system clock time when the frame
gets generated.
Ideally, timestamp can be derived from reference_time.
However, in reality, especially in a multi process application
like Chrome, system clock read has noise on the order of 5ms.
To overcome that, we found the original timestamp from camera
driver is much smoother. But the defect is that the camera
clock would have a drift with respect to the system clock.
Thus a perfect solution would be that we take system time for
reference time, which is used for AV sync; we stream timestamp
to the remote side, which will make the rendering smooth.
This CL is preliminary for the complete fix.
BUG= 601657
Committed: https://crrev.com/ed732c9c81df6d8fd4cfb4105ad154f52d458cd9
Cr-Commit-Position: refs/heads/master@{#396021}
Total comments: 22
Total comments: 6
|
Unified diffs |
Side-by-side diffs |
Delta from patch set |
Stats (+198 lines, -161 lines) |
Patch |
 |
M |
content/browser/media/capture/desktop_capture_device.cc
|
View
|
|
2 chunks |
+7 lines, -1 line |
0 comments
|
Download
|
 |
M |
content/browser/media/capture/desktop_capture_device_aura_unittest.cc
|
View
|
1
|
2 chunks |
+6 lines, -14 lines |
0 comments
|
Download
|
 |
M |
content/browser/media/capture/desktop_capture_device_unittest.cc
|
View
|
1
|
9 chunks |
+41 lines, -40 lines |
0 comments
|
Download
|
 |
M |
content/browser/media/capture/web_contents_video_capture_device_unittest.cc
|
View
|
1
|
2 chunks |
+6 lines, -14 lines |
0 comments
|
Download
|
 |
M |
content/browser/renderer_host/media/video_capture_device_client.h
|
View
|
1
|
1 chunk |
+5 lines, -3 lines |
0 comments
|
Download
|
 |
M |
content/browser/renderer_host/media/video_capture_device_client.cc
|
View
|
1
2
|
6 chunks |
+17 lines, -15 lines |
0 comments
|
Download
|
 |
M |
content/browser/renderer_host/media/video_capture_device_client_unittest.cc
|
View
|
1
|
5 chunks |
+8 lines, -6 lines |
0 comments
|
Download
|
 |
M |
media/capture/video/android/video_capture_device_android.h
|
View
|
1
|
1 chunk |
+1 line, -0 lines |
0 comments
|
Download
|
 |
M |
media/capture/video/android/video_capture_device_android.cc
|
View
|
1
|
2 chunks |
+5 lines, -2 lines |
0 comments
|
Download
|
 |
M |
media/capture/video/fake_video_capture_device.h
|
View
|
|
1 chunk |
+2 lines, -0 lines |
0 comments
|
Download
|
 |
M |
media/capture/video/fake_video_capture_device.cc
|
View
|
1
|
2 chunks |
+9 lines, -3 lines |
0 comments
|
Download
|
 |
M |
media/capture/video/fake_video_capture_device_unittest.cc
|
View
|
1
|
2 chunks |
+5 lines, -3 lines |
0 comments
|
Download
|
 |
M |
media/capture/video/file_video_capture_device.h
|
View
|
|
1 chunk |
+2 lines, -0 lines |
0 comments
|
Download
|
 |
M |
media/capture/video/file_video_capture_device.cc
|
View
|
|
1 chunk |
+3 lines, -1 line |
0 comments
|
Download
|
 |
M |
media/capture/video/linux/v4l2_capture_delegate.cc
|
View
|
1
|
1 chunk |
+5 lines, -1 line |
0 comments
|
Download
|
 |
M |
media/capture/video/mac/video_capture_device_decklink_mac.h
|
View
|
|
1 chunk |
+2 lines, -1 line |
0 comments
|
Download
|
 |
M |
media/capture/video/mac/video_capture_device_decklink_mac.mm
|
View
|
1
2
|
3 chunks |
+19 lines, -3 lines |
0 comments
|
Download
|
 |
M |
media/capture/video/mac/video_capture_device_mac.h
|
View
|
|
1 chunk |
+0 lines, -3 lines |
0 comments
|
Download
|
 |
M |
media/capture/video/mac/video_capture_device_mac.mm
|
View
|
1
|
2 chunks |
+1 line, -12 lines |
0 comments
|
Download
|
 |
M |
media/capture/video/video_capture_device.h
|
View
|
1
2
|
2 chunks |
+14 lines, -4 lines |
0 comments
|
Download
|
 |
M |
media/capture/video/video_capture_device_unittest.cc
|
View
|
1
|
4 chunks |
+5 lines, -15 lines |
0 comments
|
Download
|
 |
M |
media/capture/video/win/sink_filter_observer_win.h
|
View
|
|
1 chunk |
+1 line, -1 line |
0 comments
|
Download
|
 |
M |
media/capture/video/win/sink_input_pin_win.cc
|
View
|
|
2 chunks |
+3 lines, -5 lines |
0 comments
|
Download
|
 |
M |
media/capture/video/win/video_capture_device_mf_win.h
|
View
|
|
1 chunk |
+2 lines, -1 line |
0 comments
|
Download
|
 |
M |
media/capture/video/win/video_capture_device_mf_win.cc
|
View
|
|
3 chunks |
+15 lines, -10 lines |
0 comments
|
Download
|
 |
M |
media/capture/video/win/video_capture_device_win.h
|
View
|
|
2 chunks |
+3 lines, -1 line |
0 comments
|
Download
|
 |
M |
media/capture/video/win/video_capture_device_win.cc
|
View
|
1
|
2 chunks |
+11 lines, -2 lines |
0 comments
|
Download
|
Total messages: 25 (16 generated)
|