Make VideoSendStream/VideoReceiveStream configs const. Benefits of this is that the send config previously had unclear locking requirements, a lock was used to lock parts parts of it while reconfiguring the VideoEncoder. Primary work was splitting out video streams from config as well as encoder_settings as these change on ReconfigureVideoEncoder. Now threading requirements for both member configs are clear (as they are read-only), and encoder_settings doesn't stay in the config as a stale pointer. CreateVideoSendStream now takes video streams separately as well as the encoder_settings pointer, analogous to ReconfigureVideoEncoder. This change required changing so that pacing is silently enabled when using suspend_below_min_bitrate rather than silently setting it. R=henrik.lundin@webrtc.org, mflodman@webrtc.org, pthatcher@webrtc.org, stefan@webrtc.org BUG=3260 Review URL: https://webrtc-codereview.appspot.com/20409004 git-svn-id: http://webrtc.googlecode.com/svn/trunk/webrtc@6349 4adac7df-926f-26a2-2b94-8c16560cd09d
diff --git a/test/encoder_settings.h b/test/encoder_settings.h index 1d8e355..ea2be97 100644 --- a/test/encoder_settings.h +++ b/test/encoder_settings.h
@@ -14,14 +14,10 @@ namespace webrtc { namespace test { -VideoSendStream::Config::EncoderSettings CreateEncoderSettings( - VideoEncoder* encoder, - const char* payload_name, - int payload_type, - size_t num_streams); +std::vector<VideoStream> CreateVideoStreams(size_t num_streams); VideoCodec CreateDecoderVideoCodec( - const VideoSendStream::Config::EncoderSettings& settings); + const VideoSendStream::Config::EncoderSettings& encoder_settings); } // namespace test } // namespace webrtc