Index: webrtc/media/engine/webrtcvideoengine2.h |
diff --git a/webrtc/media/engine/webrtcvideoengine2.h b/webrtc/media/engine/webrtcvideoengine2.h |
index 27eadb299ae69160ba7d9a41ca38c74463f4b691..3668a18e4baffadea372f48c2844ed976ea1b750 100644 |
--- a/webrtc/media/engine/webrtcvideoengine2.h |
+++ b/webrtc/media/engine/webrtcvideoengine2.h |
@@ -248,16 +248,14 @@ class WebRtcVideoChannel2 : public VideoMediaChannel, public webrtc::Transport { |
// TODO(pbos): Move logic from SetOptions into this method. |
void SetSendParameters(const ChangedSendParameters& send_params); |
bool SetRtpParameters(const webrtc::RtpParameters& parameters); |
+ webrtc::RtpParameters GetRtpParameters() const; |
void OnFrame(const cricket::VideoFrame& frame) override; |
bool SetCapturer(VideoCapturer* capturer); |
void MuteStream(bool mute); |
bool DisconnectCapturer(); |
- void Start(); |
- void Stop(); |
- |
- webrtc::RtpParameters rtp_parameters() const { return rtp_parameters_; } |
+ void SetSend(bool send); |
// Implements webrtc::LoadObserver. |
void OnLoadUpdate(Load load) override; |
@@ -345,6 +343,10 @@ class WebRtcVideoChannel2 : public VideoMediaChannel, public webrtc::Transport { |
EXCLUSIVE_LOCKS_REQUIRED(lock_); |
bool ValidateRtpParameters(const webrtc::RtpParameters& parameters); |
+ // Calls Start or Stop according to whether or not |sending_| is true, |
+ // and whether or not the encoding in |rtp_parameters_| is active. |
+ void UpdateSendState() EXCLUSIVE_LOCKS_REQUIRED(lock_); |
+ |
rtc::ThreadChecker thread_checker_; |
rtc::AsyncInvoker invoker_; |
rtc::Thread* worker_thread_; |
@@ -372,7 +374,7 @@ class WebRtcVideoChannel2 : public VideoMediaChannel, public webrtc::Transport { |
// TODO(skvlad): Move ssrcs_ and ssrc_groups_ into rtp_parameters_. |
// TODO(skvlad): Combine parameters_ and rtp_parameters_ once we have only |
// one stream per MediaChannel. |
- webrtc::RtpParameters rtp_parameters_; |
+ webrtc::RtpParameters rtp_parameters_ GUARDED_BY(lock_); |
bool pending_encoder_reconfiguration_ GUARDED_BY(lock_); |
VideoEncoderSettings encoder_settings_ GUARDED_BY(lock_); |
AllocatedEncoder allocated_encoder_ GUARDED_BY(lock_); |
@@ -482,9 +484,6 @@ class WebRtcVideoChannel2 : public VideoMediaChannel, public webrtc::Transport { |
const webrtc::PacketOptions& options) override; |
bool SendRtcp(const uint8_t* data, size_t len) override; |
- void StartAllSendStreams(); |
- void StopAllSendStreams(); |
- |
static std::vector<VideoCodecSettings> MapCodecs( |
const std::vector<VideoCodec>& codecs); |
std::vector<VideoCodecSettings> FilterSupportedCodecs( |