| Index: webrtc/pc/channel.h
|
| diff --git a/webrtc/pc/channel.h b/webrtc/pc/channel.h
|
| index e5180ca26f6cb3cad13406be27a7b22f1fa3eb61..c7749a97156e2165a18a22d8217d199b28d580b9 100644
|
| --- a/webrtc/pc/channel.h
|
| +++ b/webrtc/pc/channel.h
|
| @@ -83,7 +83,7 @@ class BaseChannel
|
| rtc::Thread* signaling_thread,
|
| MediaChannel* channel,
|
| const std::string& content_name,
|
| - bool rtcp,
|
| + bool rtcp_mux_required,
|
| bool srtp_required);
|
| virtual ~BaseChannel();
|
| bool Init_w(TransportChannel* rtp_transport,
|
| @@ -107,11 +107,6 @@ class BaseChannel
|
|
|
| bool writable() const { return writable_; }
|
|
|
| - // Activate RTCP mux, regardless of the state so far. Once
|
| - // activated, it can not be deactivated, and if the remote
|
| - // description doesn't support RTCP mux, setting the remote
|
| - // description will fail.
|
| - void ActivateRtcpMux();
|
| bool SetTransport(TransportChannel* rtp_transport,
|
| TransportChannel* rtcp_transport);
|
| bool PushdownLocalDescription(const SessionDescription* local_desc,
|
| @@ -161,9 +156,10 @@ class BaseChannel
|
| // Forward TransportChannel SignalSentPacket to worker thread.
|
| sigslot::signal1<const rtc::SentPacket&> SignalSentPacket;
|
|
|
| - // Emitted whenever the rtcp-mux is active and the rtcp-transport can be
|
| - // destroyed.
|
| - sigslot::signal1<const std::string&> SignalDestroyRtcpTransport;
|
| + // Emitted whenever rtcp-mux is fully negotiated and the rtcp-transport can
|
| + // be destroyed.
|
| + // Fired on the network thread.
|
| + sigslot::signal1<const std::string&> SignalRtcpMuxFullyActive;
|
|
|
| TransportChannel* rtp_transport() const { return rtp_transport_; }
|
| TransportChannel* rtcp_transport() const { return rtcp_transport_; }
|
| @@ -335,7 +331,6 @@ class BaseChannel
|
| ContentAction action,
|
| ContentSource src,
|
| std::string* error_desc);
|
| - void ActivateRtcpMux_n();
|
| bool SetRtcpMux_n(bool enable,
|
| ContentAction action,
|
| ContentSource src,
|
| @@ -382,10 +377,9 @@ class BaseChannel
|
| std::unique_ptr<ConnectionMonitor> connection_monitor_;
|
|
|
| std::string transport_name_;
|
| - // Is RTCP used at all by this type of channel?
|
| - // Expected to be true (as of typing this) for everything except data
|
| - // channels.
|
| - const bool rtcp_enabled_;
|
| + // True if RTCP-multiplexing is required. In other words, no standalone RTCP
|
| + // transport will ever be used for this channel.
|
| + const bool rtcp_mux_required_;
|
| // TODO(johan): Replace TransportChannel* with rtc::PacketTransportInterface*.
|
| TransportChannel* rtp_transport_ = nullptr;
|
| std::vector<std::pair<rtc::Socket::Option, int> > socket_options_;
|
| @@ -428,7 +422,7 @@ class VoiceChannel : public BaseChannel {
|
| MediaEngineInterface* media_engine,
|
| VoiceMediaChannel* channel,
|
| const std::string& content_name,
|
| - bool rtcp,
|
| + bool rtcp_mux_required,
|
| bool srtp_required);
|
| ~VoiceChannel();
|
| bool Init_w(TransportChannel* rtp_transport,
|
| @@ -547,7 +541,7 @@ class VideoChannel : public BaseChannel {
|
| rtc::Thread* signaling_thread,
|
| VideoMediaChannel* channel,
|
| const std::string& content_name,
|
| - bool rtcp,
|
| + bool rtcp_mux_required,
|
| bool srtp_required);
|
| ~VideoChannel();
|
| bool Init_w(TransportChannel* rtp_transport,
|
| @@ -627,7 +621,7 @@ class RtpDataChannel : public BaseChannel {
|
| rtc::Thread* signaling_thread,
|
| DataMediaChannel* channel,
|
| const std::string& content_name,
|
| - bool rtcp,
|
| + bool rtcp_mux_required,
|
| bool srtp_required);
|
| ~RtpDataChannel();
|
| bool Init_w(TransportChannel* rtp_transport,
|
|
|