OLD | NEW |
1 /* | 1 /* |
2 * Copyright (c) 2013 The WebRTC project authors. All Rights Reserved. | 2 * Copyright (c) 2013 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 68 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
79 int discarded_packets = 0; | 79 int discarded_packets = 0; |
80 | 80 |
81 uint32_t ssrc = 0; | 81 uint32_t ssrc = 0; |
82 std::string c_name; | 82 std::string c_name; |
83 StreamDataCounters rtp_stats; | 83 StreamDataCounters rtp_stats; |
84 RtcpPacketTypeCounter rtcp_packet_type_counts; | 84 RtcpPacketTypeCounter rtcp_packet_type_counts; |
85 RtcpStatistics rtcp_stats; | 85 RtcpStatistics rtcp_stats; |
86 }; | 86 }; |
87 | 87 |
88 struct Config { | 88 struct Config { |
| 89 Config() = delete; |
| 90 explicit Config(newapi::Transport* rtcp_send_transport) |
| 91 : rtcp_send_transport(rtcp_send_transport) {} |
| 92 |
89 std::string ToString() const; | 93 std::string ToString() const; |
90 | 94 |
91 // Decoders for every payload that we can receive. | 95 // Decoders for every payload that we can receive. |
92 std::vector<Decoder> decoders; | 96 std::vector<Decoder> decoders; |
93 | 97 |
94 // Receive-stream specific RTP settings. | 98 // Receive-stream specific RTP settings. |
95 struct Rtp { | 99 struct Rtp { |
96 std::string ToString() const; | 100 std::string ToString() const; |
97 | 101 |
98 // Synchronization source (stream identifier) to be received. | 102 // Synchronization source (stream identifier) to be received. |
(...skipping 31 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
130 }; | 134 }; |
131 | 135 |
132 // Map from video RTP payload type -> RTX config. | 136 // Map from video RTP payload type -> RTX config. |
133 typedef std::map<int, Rtx> RtxMap; | 137 typedef std::map<int, Rtx> RtxMap; |
134 RtxMap rtx; | 138 RtxMap rtx; |
135 | 139 |
136 // RTP header extensions used for the received stream. | 140 // RTP header extensions used for the received stream. |
137 std::vector<RtpExtension> extensions; | 141 std::vector<RtpExtension> extensions; |
138 } rtp; | 142 } rtp; |
139 | 143 |
| 144 // Transport for outgoing packets (RTCP). |
| 145 newapi::Transport* rtcp_send_transport = nullptr; |
| 146 |
140 // VideoRenderer will be called for each decoded frame. 'nullptr' disables | 147 // VideoRenderer will be called for each decoded frame. 'nullptr' disables |
141 // rendering of this stream. | 148 // rendering of this stream. |
142 VideoRenderer* renderer = nullptr; | 149 VideoRenderer* renderer = nullptr; |
143 | 150 |
144 // Expected delay needed by the renderer, i.e. the frame will be delivered | 151 // Expected delay needed by the renderer, i.e. the frame will be delivered |
145 // this many milliseconds, if possible, earlier than the ideal render time. | 152 // this many milliseconds, if possible, earlier than the ideal render time. |
146 // Only valid if 'renderer' is set. | 153 // Only valid if 'renderer' is set. |
147 int render_delay_ms = 10; | 154 int render_delay_ms = 10; |
148 | 155 |
149 // Identifier for an A/V synchronization group. Empty string to disable. | 156 // Identifier for an A/V synchronization group. Empty string to disable. |
(...skipping 16 matching lines...) Expand all Loading... |
166 int target_delay_ms = 0; | 173 int target_delay_ms = 0; |
167 }; | 174 }; |
168 | 175 |
169 // TODO(pbos): Add info on currently-received codec to Stats. | 176 // TODO(pbos): Add info on currently-received codec to Stats. |
170 virtual Stats GetStats() const = 0; | 177 virtual Stats GetStats() const = 0; |
171 }; | 178 }; |
172 | 179 |
173 } // namespace webrtc | 180 } // namespace webrtc |
174 | 181 |
175 #endif // WEBRTC_VIDEO_RECEIVE_STREAM_H_ | 182 #endif // WEBRTC_VIDEO_RECEIVE_STREAM_H_ |
OLD | NEW |