OLD | NEW |
1 /* | 1 /* |
2 * Copyright (c) 2012 The WebRTC project authors. All Rights Reserved. | 2 * Copyright (c) 2012 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 209 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
220 // packetization. | 220 // packetization. |
221 // |frame_type| - type of frame to send | 221 // |frame_type| - type of frame to send |
222 // |payload_type| - payload type of frame to send | 222 // |payload_type| - payload type of frame to send |
223 // |timestamp| - timestamp of frame to send | 223 // |timestamp| - timestamp of frame to send |
224 // |payload_data| - payload buffer of frame to send | 224 // |payload_data| - payload buffer of frame to send |
225 // |payload_size| - size of payload buffer to send | 225 // |payload_size| - size of payload buffer to send |
226 // |fragmentation| - fragmentation offset data for fragmented frames such | 226 // |fragmentation| - fragmentation offset data for fragmented frames such |
227 // as layers or RED | 227 // as layers or RED |
228 // |transport_frame_id_out| - set to RTP timestamp. | 228 // |transport_frame_id_out| - set to RTP timestamp. |
229 // Returns true on success. | 229 // Returns true on success. |
230 | |
231 virtual bool SendOutgoingData(FrameType frame_type, | 230 virtual bool SendOutgoingData(FrameType frame_type, |
232 int8_t payload_type, | 231 int8_t payload_type, |
233 uint32_t timestamp, | 232 uint32_t timestamp, |
234 int64_t capture_time_ms, | 233 int64_t capture_time_ms, |
235 const uint8_t* payload_data, | 234 const uint8_t* payload_data, |
236 size_t payload_size, | 235 size_t payload_size, |
237 const RTPFragmentationHeader* fragmentation, | 236 const RTPFragmentationHeader* fragmentation, |
238 const RTPVideoHeader* rtp_video_header, | 237 const RTPVideoHeader* rtp_video_header, |
239 uint32_t* transport_frame_id_out) = 0; | 238 uint32_t* transport_frame_id_out) = 0; |
240 | 239 |
241 // Deprecated version of the method above. | |
242 int32_t SendOutgoingData( | |
243 FrameType frame_type, | |
244 int8_t payload_type, | |
245 uint32_t timestamp, | |
246 int64_t capture_time_ms, | |
247 const uint8_t* payload_data, | |
248 size_t payload_size, | |
249 const RTPFragmentationHeader* fragmentation = nullptr, | |
250 const RTPVideoHeader* rtp_video_header = nullptr) { | |
251 return SendOutgoingData(frame_type, payload_type, timestamp, | |
252 capture_time_ms, payload_data, payload_size, | |
253 fragmentation, rtp_video_header, | |
254 /*frame_id_out=*/nullptr) | |
255 ? 0 | |
256 : -1; | |
257 } | |
258 | |
259 virtual bool TimeToSendPacket(uint32_t ssrc, | 240 virtual bool TimeToSendPacket(uint32_t ssrc, |
260 uint16_t sequence_number, | 241 uint16_t sequence_number, |
261 int64_t capture_time_ms, | 242 int64_t capture_time_ms, |
262 bool retransmission, | 243 bool retransmission, |
263 int probe_cluster_id) = 0; | 244 int probe_cluster_id) = 0; |
264 | 245 |
265 virtual size_t TimeToSendPadding(size_t bytes, int probe_cluster_id) = 0; | 246 virtual size_t TimeToSendPadding(size_t bytes, int probe_cluster_id) = 0; |
266 | 247 |
267 // Called on generation of new statistics after an RTP send. | 248 // Called on generation of new statistics after an RTP send. |
268 virtual void RegisterSendChannelRtpStatisticsCallback( | 249 virtual void RegisterSendChannelRtpStatisticsCallback( |
(...skipping 202 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
471 virtual int32_t SetKeyFrameRequestMethod(KeyFrameRequestMethod method) = 0; | 452 virtual int32_t SetKeyFrameRequestMethod(KeyFrameRequestMethod method) = 0; |
472 | 453 |
473 // Sends a request for a keyframe. | 454 // Sends a request for a keyframe. |
474 // Returns -1 on failure else 0. | 455 // Returns -1 on failure else 0. |
475 virtual int32_t RequestKeyFrame() = 0; | 456 virtual int32_t RequestKeyFrame() = 0; |
476 }; | 457 }; |
477 | 458 |
478 } // namespace webrtc | 459 } // namespace webrtc |
479 | 460 |
480 #endif // WEBRTC_MODULES_RTP_RTCP_INCLUDE_RTP_RTCP_H_ | 461 #endif // WEBRTC_MODULES_RTP_RTCP_INCLUDE_RTP_RTCP_H_ |
OLD | NEW |