OLD | NEW |
1 /* | 1 /* |
2 * Copyright (c) 2017 The WebRTC project authors. All Rights Reserved. | 2 * Copyright (c) 2017 The WebRTC project authors. All Rights Reserved. |
3 * | 3 * |
4 * Use of this source code is governed by a BSD-style license | 4 * Use of this source code is governed by a BSD-style license |
5 * that can be found in the LICENSE file in the root of the source | 5 * that can be found in the LICENSE file in the root of the source |
6 * tree. An additional intellectual property rights grant can be found | 6 * tree. An additional intellectual property rights grant can be found |
7 * in the file PATENTS. All contributing project authors may | 7 * in the file PATENTS. All contributing project authors may |
8 * be found in the AUTHORS file in the root of the source tree. | 8 * be found in the AUTHORS file in the root of the source tree. |
9 */ | 9 */ |
10 | 10 |
(...skipping 15 matching lines...) Expand all Loading... |
26 // webrtc/api/rtp/. | 26 // webrtc/api/rtp/. |
27 // | 27 // |
28 // For a start, this object is just a collection of the objects needed | 28 // For a start, this object is just a collection of the objects needed |
29 // by the VideoSendStream constructor. The plan is to move ownership | 29 // by the VideoSendStream constructor. The plan is to move ownership |
30 // of all RTP-related objects here, and add methods to create per-ssrc | 30 // of all RTP-related objects here, and add methods to create per-ssrc |
31 // objects which would then be passed to VideoSendStream. Eventually, | 31 // objects which would then be passed to VideoSendStream. Eventually, |
32 // direct accessors like packet_router() should be removed. | 32 // direct accessors like packet_router() should be removed. |
33 // | 33 // |
34 // This should also have a reference to the underlying | 34 // This should also have a reference to the underlying |
35 // webrtc::Transport(s). Currently, webrtc::Transport is implemented by | 35 // webrtc::Transport(s). Currently, webrtc::Transport is implemented by |
36 // WebRtcVideoChannel2 and WebRtcVoiceMediaChannel, and owned by | 36 // WebRtcVideoChannel and WebRtcVoiceMediaChannel, and owned by |
37 // WebrtcSession. Video and audio always uses different transport | 37 // WebrtcSession. Video and audio always uses different transport |
38 // objects, even in the common case where they are bundled over the | 38 // objects, even in the common case where they are bundled over the |
39 // same underlying transport. | 39 // same underlying transport. |
40 // | 40 // |
41 // Extracting the logic of the webrtc::Transport from BaseChannel and | 41 // Extracting the logic of the webrtc::Transport from BaseChannel and |
42 // subclasses into a separate class seems to be a prerequesite for | 42 // subclasses into a separate class seems to be a prerequesite for |
43 // moving the transport here. | 43 // moving the transport here. |
44 class RtpTransportControllerSendInterface { | 44 class RtpTransportControllerSendInterface { |
45 public: | 45 public: |
46 virtual ~RtpTransportControllerSendInterface() {} | 46 virtual ~RtpTransportControllerSendInterface() {} |
47 virtual PacketRouter* packet_router() = 0; | 47 virtual PacketRouter* packet_router() = 0; |
48 // Currently returning the same pointer, but with different types. | 48 // Currently returning the same pointer, but with different types. |
49 virtual SendSideCongestionController* send_side_cc() = 0; | 49 virtual SendSideCongestionController* send_side_cc() = 0; |
50 virtual TransportFeedbackObserver* transport_feedback_observer() = 0; | 50 virtual TransportFeedbackObserver* transport_feedback_observer() = 0; |
51 | 51 |
52 virtual RtpPacketSender* packet_sender() = 0; | 52 virtual RtpPacketSender* packet_sender() = 0; |
53 }; | 53 }; |
54 | 54 |
55 } // namespace webrtc | 55 } // namespace webrtc |
56 | 56 |
57 #endif // WEBRTC_CALL_RTP_TRANSPORT_CONTROLLER_SEND_INTERFACE_H_ | 57 #endif // WEBRTC_CALL_RTP_TRANSPORT_CONTROLLER_SEND_INTERFACE_H_ |
OLD | NEW |