Index: talk/session/media/channel.h |
diff --git a/talk/session/media/channel.h b/talk/session/media/channel.h |
index 969f907928c5f6649bcbc0c6382b6d688d2d6a6f..e1faa290029c88aefb47521e9c8a94b665bd87ad 100644 |
--- a/talk/session/media/channel.h |
+++ b/talk/session/media/channel.h |
@@ -52,6 +52,10 @@ |
#include "webrtc/base/sigslot.h" |
#include "webrtc/base/window.h" |
+namespace webrtc { |
+class MediaControllerInterface; |
+} // namespace webrtc |
+ |
namespace cricket { |
struct CryptoParams; |
@@ -79,6 +83,7 @@ class BaseChannel |
public: |
BaseChannel(rtc::Thread* thread, |
MediaChannel* channel, |
+ webrtc::MediaControllerInterface* media_controller, |
TransportController* transport_controller, |
const std::string& content_name, |
bool rtcp); |
@@ -199,9 +204,8 @@ class BaseChannel |
// NetworkInterface implementation, called by MediaEngine |
virtual bool SendPacket(rtc::Buffer* packet, |
- rtc::DiffServCodePoint dscp); |
- virtual bool SendRtcp(rtc::Buffer* packet, |
- rtc::DiffServCodePoint dscp); |
+ const rtc::PacketOptions& options); |
+ virtual bool SendRtcp(rtc::Buffer* packet, const rtc::PacketOptions& options); |
// From TransportChannel |
void OnWritableState(TransportChannel* channel); |
@@ -210,12 +214,15 @@ class BaseChannel |
size_t len, |
const rtc::PacketTime& packet_time, |
int flags); |
+ void OnPacketSent(TransportChannel* channel, |
+ const rtc::SentPacket& sent_packet); |
void OnReadyToSend(TransportChannel* channel); |
bool PacketIsRtcp(const TransportChannel* channel, const char* data, |
size_t len); |
- bool SendPacket(bool rtcp, rtc::Buffer* packet, |
- rtc::DiffServCodePoint dscp); |
+ bool SendPacket(bool rtcp, |
+ rtc::Buffer* packet, |
+ const rtc::PacketOptions& options); |
virtual bool WantsPacket(bool rtcp, rtc::Buffer* packet); |
void HandlePacket(bool rtcp, rtc::Buffer* packet, |
const rtc::PacketTime& packet_time); |
@@ -261,7 +268,7 @@ class BaseChannel |
// Helper method to get RTP Absoulute SendTime extension header id if |
// present in remote supported extensions list. |
void MaybeCacheRtpAbsSendTimeHeaderExtension( |
- const std::vector<RtpHeaderExtension>& extensions); |
+ const std::vector<RtpHeaderExtension>& extensions); |
bool CheckSrtpConfig(const std::vector<CryptoParams>& cryptos, |
bool* dtls, |
@@ -296,6 +303,7 @@ class BaseChannel |
rtc::Thread* worker_thread_; |
TransportController* transport_controller_; |
MediaChannel* media_channel_; |
+ webrtc::MediaControllerInterface* media_controller_; |
std::vector<StreamParams> local_streams_; |
std::vector<StreamParams> remote_streams_; |
@@ -321,6 +329,7 @@ class BaseChannel |
bool dtls_keyed_; |
bool secure_required_; |
int rtp_abs_sendtime_extn_id_; |
+ int rtp_transport_sequence_number_extn_id_; |
}; |
// VoiceChannel is a specialization that adds support for early media, DTMF, |
@@ -330,6 +339,7 @@ class VoiceChannel : public BaseChannel { |
VoiceChannel(rtc::Thread* thread, |
MediaEngineInterface* media_engine, |
VoiceMediaChannel* channel, |
+ webrtc::MediaControllerInterface* media_controller, |
TransportController* transport_controller, |
const std::string& content_name, |
bool rtcp); |
@@ -432,6 +442,7 @@ class VideoChannel : public BaseChannel { |
public: |
VideoChannel(rtc::Thread* thread, |
VideoMediaChannel* channel, |
+ webrtc::MediaControllerInterface* media_controller, |
TransportController* transport_controller, |
const std::string& content_name, |
bool rtcp); |
@@ -471,8 +482,6 @@ class VideoChannel : public BaseChannel { |
bool SendIntraFrame(); |
bool RequestIntraFrame(); |
- // Configure sending media on the stream with SSRC |ssrc| |
- // If there is only one sending stream SSRC 0 can be used. |
bool SetVideoSend(uint32 ssrc, bool enable, const VideoOptions* options); |
private: |