Index: webrtc/video/video_send_stream.cc |
diff --git a/webrtc/video/video_send_stream.cc b/webrtc/video/video_send_stream.cc |
index 9e38384381f8d76ac15ef4b0d3b8e59457f82ae3..c60115598de783be038eb303821a40e2d3293187 100644 |
--- a/webrtc/video/video_send_stream.cc |
+++ b/webrtc/video/video_send_stream.cc |
@@ -372,13 +372,12 @@ VideoSendStream::VideoSendStream( |
this, |
config.post_encode_callback, |
&stats_proxy_), |
- vie_encoder_(num_cpu_cores, |
- config_.rtp.ssrcs, |
- module_process_thread_, |
- &stats_proxy_, |
- config.pre_encode_callback, |
- &overuse_detector_, |
- congestion_controller_->pacer()), |
+ vie_encoder_( |
+ num_cpu_cores, |
+ config_.rtp.ssrcs, |
+ module_process_thread_, |
+ &stats_proxy_, |
+ &overuse_detector_), |
video_sender_(vie_encoder_.video_sender()), |
bandwidth_observer_(congestion_controller_->GetBitrateController() |
->CreateRtcpBandwidthObserver()), |
@@ -578,8 +577,14 @@ void VideoSendStream::EncoderProcess() { |
} |
VideoFrame frame; |
- if (input_.GetVideoFrame(&frame)) |
+ if (input_.GetVideoFrame(&frame)) { |
+ // TODO(perkj): |pre_encode_callback| is only used by tests. Tests should |
+ // register as a sink to the VideoSource instead. |
+ if (config_.pre_encode_callback) { |
+ config_.pre_encode_callback->OnFrame(frame); |
+ } |
vie_encoder_.EncodeVideoFrame(frame); |
+ } |
} |
vie_encoder_.DeRegisterExternalEncoder(config_.encoder_settings.payload_type); |
} |