Use VoiceChannel/VideoChannel directly from RtpSender/RtpReceiver.

This eliminates the need for the extra layer of indirection provided by
mediastreamprovider.h. It will thus make it easier to implement new
functionality in RtpSender/RtpReceiver.

It also brings us one step closer to the end goal of combining "senders"
and "send streams". Currently the sender still needs to go through the
BaseChannel and MediaChannel, using an SSRC as a key.

R=pthatcher@webrtc.org

Review URL: https://codereview.webrtc.org/2046173002 .

Cr-Commit-Position: refs/heads/master@{#13285}
This commit is contained in:
Taylor Brandstetter
2016-06-24 14:06:35 -07:00
parent ba8d4337b7
commit bc5831999d
18 changed files with 661 additions and 912 deletions

View File

@ -174,7 +174,6 @@ class PeerConnection : public PeerConnectionInterface,
void CreateVideoReceiver(MediaStreamInterface* stream,
const std::string& track_id,
uint32_t ssrc);
void StopReceivers(cricket::MediaType media_type);
void DestroyReceiver(const std::string& track_id);
void DestroyAudioSender(MediaStreamInterface* stream,
AudioTrackInterface* audio_track,
@ -325,7 +324,9 @@ class PeerConnection : public PeerConnectionInterface,
void OnSctpDataChannelClosed(DataChannel* channel);
// Notifications from WebRtcSession relating to BaseChannels.
void OnVoiceChannelCreated();
void OnVoiceChannelDestroyed();
void OnVideoChannelCreated();
void OnVideoChannelDestroyed();
void OnDataChannelCreated();
void OnDataChannelDestroyed();