| Index: webrtc/video/video_capture_input.cc
|
| diff --git a/webrtc/video/video_capture_input.cc b/webrtc/video/video_capture_input.cc
|
| index 25d408b4aa7cc34df5ce49a5c22b1a6cc5ebbfe2..999e74d815e9bc656ff53ec923032496ac46d776 100644
|
| --- a/webrtc/video/video_capture_input.cc
|
| +++ b/webrtc/video/video_capture_input.cc
|
| @@ -29,11 +29,13 @@
|
| namespace webrtc {
|
|
|
| namespace internal {
|
| -VideoCaptureInput::VideoCaptureInput(ProcessThread* module_process_thread,
|
| - VideoCaptureCallback* frame_callback,
|
| - VideoRenderer* local_renderer,
|
| - SendStatisticsProxy* stats_proxy,
|
| - CpuOveruseObserver* overuse_observer)
|
| +VideoCaptureInput::VideoCaptureInput(
|
| + ProcessThread* module_process_thread,
|
| + VideoCaptureCallback* frame_callback,
|
| + VideoRenderer* local_renderer,
|
| + SendStatisticsProxy* stats_proxy,
|
| + CpuOveruseObserver* overuse_observer,
|
| + EncodingTimeObserver* encoding_time_observer)
|
| : capture_cs_(CriticalSectionWrapper::CreateCriticalSection()),
|
| module_process_thread_(module_process_thread),
|
| frame_callback_(frame_callback),
|
| @@ -52,7 +54,8 @@ VideoCaptureInput::VideoCaptureInput(ProcessThread* module_process_thread,
|
| overuse_detector_(new OveruseFrameDetector(Clock::GetRealTimeClock(),
|
| CpuOveruseOptions(),
|
| overuse_observer,
|
| - stats_proxy)) {
|
| + stats_proxy)),
|
| + encoding_time_observer_(encoding_time_observer) {
|
| encoder_thread_->Start();
|
| encoder_thread_->SetPriority(kHighPriority);
|
| module_process_thread_->RegisterModule(overuse_detector_.get());
|
| @@ -149,6 +152,8 @@ bool VideoCaptureInput::EncoderProcess() {
|
| Clock::GetRealTimeClock()->TimeInMilliseconds() - encode_start_time);
|
| overuse_detector_->FrameEncoded(encode_time_ms);
|
| stats_proxy_->OnEncodedFrame(encode_time_ms);
|
| + if (encoding_time_observer_)
|
| + encoding_time_observer_->OnEncodedFrame(deliver_frame, encode_time_ms);
|
| }
|
| }
|
| // We're done!
|
|
|