Index: webrtc/video/vie_encoder.h |
diff --git a/webrtc/video/vie_encoder.h b/webrtc/video/vie_encoder.h |
index 15fd9cfa58c1ccd1cd373b23ab9b5d463be44bdf..5b02b3e29081979a6744464407b6ec3c2b474fa2 100644 |
--- a/webrtc/video/vie_encoder.h |
+++ b/webrtc/video/vie_encoder.h |
@@ -99,11 +99,10 @@ class ViEEncoder : public rtc::VideoSinkInterface<VideoFrame>, |
private: |
class EncodeTask; |
class VideoSourceProxy; |
+ class ConfigureEncoderTask; |
- void ConfigureEncoderInternal(const VideoCodec& video_codec, |
- size_t max_data_payload_length, |
- std::vector<VideoStream> stream, |
- int min_transmit_bitrate); |
+ void ConfigureEncoderOnTaskQueue(VideoEncoderConfig config, |
+ size_t max_data_payload_length); |
// Implements VideoSinkInterface. |
void OnFrame(const VideoFrame& video_frame) override; |
@@ -136,6 +135,7 @@ class ViEEncoder : public rtc::VideoSinkInterface<VideoFrame>, |
const std::unique_ptr<VideoSourceProxy> source_proxy_; |
EncoderSink* sink_; |
const VideoSendStream::Config::EncoderSettings settings_; |
+ const VideoCodecType codec_type_; |
const std::unique_ptr<VideoProcessing> vp_; |
vcm::VideoSender video_sender_ ACCESS_ON(&encoder_queue_); |
@@ -151,9 +151,10 @@ class ViEEncoder : public rtc::VideoSinkInterface<VideoFrame>, |
// of ViEEncoder are called on the same thread. |
rtc::ThreadChecker thread_checker_; |
- VideoCodec encoder_config_ ACCESS_ON(&encoder_queue_); |
+ VideoEncoderConfig encoder_config_ ACCESS_ON(&encoder_queue_); |
- int encoder_start_bitrate_bps_ ACCESS_ON(&encoder_queue_); |
+ uint32_t encoder_start_bitrate_bps_ ACCESS_ON(&encoder_queue_); |
+ size_t max_data_payload_length_ ACCESS_ON(&encoder_queue_); |
uint32_t last_observed_bitrate_bps_ ACCESS_ON(&encoder_queue_); |
bool encoder_paused_and_dropped_frame_ ACCESS_ON(&encoder_queue_); |
bool has_received_sli_ ACCESS_ON(&encoder_queue_); |