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

Side by Side Diff: content/renderer/media/video_source_handler.cc

Issue 287313002: Pass a TimeTicks along video capture pipeline to represent capture time (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: merged and land Created 6 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 unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 // Copyright (c) 2013 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2013 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "content/renderer/media/video_source_handler.h" 5 #include "content/renderer/media/video_source_handler.h"
6 6
7 #include <string> 7 #include <string>
8 8
9 #include "base/logging.h" 9 #include "base/logging.h"
10 #include "base/memory/weak_ptr.h" 10 #include "base/memory/weak_ptr.h"
(...skipping 36 matching lines...) Expand 10 before | Expand all | Expand 10 after
47 } else { 47 } else {
48 DCHECK(reader_); 48 DCHECK(reader_);
49 MediaStreamVideoSink::RemoveFromVideoTrack(this, track_); 49 MediaStreamVideoSink::RemoveFromVideoTrack(this, track_);
50 weak_factory_.InvalidateWeakPtrs(); 50 weak_factory_.InvalidateWeakPtrs();
51 } 51 }
52 reader_ = reader; 52 reader_ = reader;
53 } 53 }
54 54
55 void OnVideoFrame( 55 void OnVideoFrame(
56 const scoped_refptr<media::VideoFrame>& frame, 56 const scoped_refptr<media::VideoFrame>& frame,
57 const media::VideoCaptureFormat& format) { 57 const media::VideoCaptureFormat& format,
58 const base::TimeTicks& estimated_capture_time) {
58 if (reader_) { 59 if (reader_) {
59 reader_->GotFrame(frame); 60 reader_->GotFrame(frame);
60 } 61 }
61 } 62 }
62 63
63 private: 64 private:
64 blink::WebMediaStreamTrack track_; 65 blink::WebMediaStreamTrack track_;
65 FrameReaderInterface* reader_; 66 FrameReaderInterface* reader_;
66 base::WeakPtrFactory<PpFrameReceiver> weak_factory_; 67 base::WeakPtrFactory<PpFrameReceiver> weak_factory_;
67 68
(...skipping 63 matching lines...) Expand 10 before | Expand all | Expand 10 after
131 } 132 }
132 133
133 void VideoSourceHandler::DeliverFrameForTesting( 134 void VideoSourceHandler::DeliverFrameForTesting(
134 FrameReaderInterface* reader, 135 FrameReaderInterface* reader,
135 const scoped_refptr<media::VideoFrame>& frame) { 136 const scoped_refptr<media::VideoFrame>& frame) {
136 SourceInfoMap::iterator it = reader_to_receiver_.find(reader); 137 SourceInfoMap::iterator it = reader_to_receiver_.find(reader);
137 if (it == reader_to_receiver_.end()) { 138 if (it == reader_to_receiver_.end()) {
138 return; 139 return;
139 } 140 }
140 PpFrameReceiver* receiver = it->second->receiver_.get(); 141 PpFrameReceiver* receiver = it->second->receiver_.get();
141 receiver->OnVideoFrame(frame, media::VideoCaptureFormat()); 142 receiver->OnVideoFrame(frame, media::VideoCaptureFormat(),
143 base::TimeTicks());
142 } 144 }
143 145
144 VideoSourceHandler::SourceInfo::SourceInfo( 146 VideoSourceHandler::SourceInfo::SourceInfo(
145 const blink::WebMediaStreamTrack& blink_track, 147 const blink::WebMediaStreamTrack& blink_track,
146 FrameReaderInterface* reader) 148 FrameReaderInterface* reader)
147 : receiver_(new PpFrameReceiver(blink_track)) { 149 : receiver_(new PpFrameReceiver(blink_track)) {
148 receiver_->SetReader(reader); 150 receiver_->SetReader(reader);
149 } 151 }
150 152
151 VideoSourceHandler::SourceInfo::~SourceInfo() { 153 VideoSourceHandler::SourceInfo::~SourceInfo() {
152 receiver_->SetReader(NULL); 154 receiver_->SetReader(NULL);
153 } 155 }
154 156
155 } // namespace content 157 } // namespace content
OLDNEW
« no previous file with comments | « content/renderer/media/video_frame_deliverer.cc ('k') | content/renderer/media/video_track_adapter.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698