Chromium Code Reviews| Index: chrome/renderer/media/cast_rtp_stream.cc |
| diff --git a/chrome/renderer/media/cast_rtp_stream.cc b/chrome/renderer/media/cast_rtp_stream.cc |
| index 42639abea781534e4c7b29a6c5134d4d57b8f324..35586608f8e4c8b17635fd2fd5467cbc61c35977 100644 |
| --- a/chrome/renderer/media/cast_rtp_stream.cc |
| +++ b/chrome/renderer/media/cast_rtp_stream.cc |
| @@ -232,21 +232,24 @@ class CastVideoSink : public base::SupportsWeakPtr<CastVideoSink>, |
| const scoped_refptr<media::cast::VideoFrameInput> frame_input, |
| // These parameters are passed for each frame. |
| const scoped_refptr<media::VideoFrame>& frame, |
| - const media::VideoCaptureFormat& format) { |
| + const media::VideoCaptureFormat& format, |
| + const base::TimeTicks& estimated_capture_time) { |
| if (frame->coded_size() != expected_coded_size) { |
| error_callback.Run("Video frame resolution does not match config."); |
| return; |
| } |
| - const base::TimeTicks now = base::TimeTicks::Now(); |
| + base::TimeTicks timestamp = base::TimeTicks::Now(); |
|
miu
2014/05/31 02:37:26
nit: Avoid unnecessary probing of system clock wit
|
| + if (!estimated_capture_time.is_null()) |
| + timestamp = estimated_capture_time; |
| // Used by chrome/browser/extension/api/cast_streaming/performance_test.cc |
| TRACE_EVENT_INSTANT2( |
| "cast_perf_test", "MediaStreamVideoSink::OnVideoFrame", |
| TRACE_EVENT_SCOPE_THREAD, |
| - "timestamp", now.ToInternalValue(), |
| + "timestamp", timestamp.ToInternalValue(), |
| "time_delta", frame->timestamp().ToInternalValue()); |
| - frame_input->InsertRawVideoFrame(frame, now); |
| + frame_input->InsertRawVideoFrame(frame, timestamp); |
| } |
| // Attach this sink to a video track represented by |track_|. |