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 |
11 #ifndef WEBRTC_MODULES_RTP_RTCP_INCLUDE_RTP_RTCP_H_ | 11 #ifndef WEBRTC_MODULES_RTP_RTCP_INCLUDE_RTP_RTCP_H_ |
12 #define WEBRTC_MODULES_RTP_RTCP_INCLUDE_RTP_RTCP_H_ | 12 #define WEBRTC_MODULES_RTP_RTCP_INCLUDE_RTP_RTCP_H_ |
13 | 13 |
14 #include <set> | 14 #include <set> |
| 15 #include <utility> |
15 #include <vector> | 16 #include <vector> |
16 | 17 |
17 #include "webrtc/modules/include/module.h" | 18 #include "webrtc/modules/include/module.h" |
18 #include "webrtc/modules/rtp_rtcp/include/rtp_rtcp_defines.h" | 19 #include "webrtc/modules/rtp_rtcp/include/rtp_rtcp_defines.h" |
19 | 20 |
20 namespace webrtc { | 21 namespace webrtc { |
21 // Forward declarations. | 22 // Forward declarations. |
22 class ReceiveStatistics; | 23 class ReceiveStatistics; |
23 class RemoteBitrateEstimator; | 24 class RemoteBitrateEstimator; |
24 class RtpReceiver; | 25 class RtpReceiver; |
(...skipping 548 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
573 * | 574 * |
574 * return -1 on failure else 0 | 575 * return -1 on failure else 0 |
575 */ | 576 */ |
576 virtual int32_t SetSendREDPayloadType(int8_t payloadType) = 0; | 577 virtual int32_t SetSendREDPayloadType(int8_t payloadType) = 0; |
577 | 578 |
578 /* | 579 /* |
579 * Get payload type for Redundant Audio Data RFC 2198 | 580 * Get payload type for Redundant Audio Data RFC 2198 |
580 * | 581 * |
581 * return -1 on failure else 0 | 582 * return -1 on failure else 0 |
582 */ | 583 */ |
583 virtual int32_t SendREDPayloadType( | 584 // DEPRECATED. Use SendREDPayloadType below that takes output parameter |
584 int8_t& payloadType) const = 0; | 585 // by pointer instead of by reference. |
585 | 586 // TODO(danilchap): Remove this when all callers have been updated. |
| 587 int32_t SendREDPayloadType(int8_t& payloadType) const { // NOLINT |
| 588 return SendREDPayloadType(&payloadType); |
| 589 } |
| 590 virtual int32_t SendREDPayloadType(int8_t* payload_type) const = 0; |
586 /* | 591 /* |
587 * Store the audio level in dBov for header-extension-for-audio-level- | 592 * Store the audio level in dBov for header-extension-for-audio-level- |
588 * indication. | 593 * indication. |
589 * This API shall be called before transmision of an RTP packet to ensure | 594 * This API shall be called before transmision of an RTP packet to ensure |
590 * that the |level| part of the extended RTP header is updated. | 595 * that the |level| part of the extended RTP header is updated. |
591 * | 596 * |
592 * return -1 on failure else 0. | 597 * return -1 on failure else 0. |
593 */ | 598 */ |
594 virtual int32_t SetAudioLevel(uint8_t level_dBov) = 0; | 599 virtual int32_t SetAudioLevel(uint8_t level_dBov) = 0; |
595 | 600 |
(...skipping 11 matching lines...) Expand all Loading... |
607 /* | 612 /* |
608 * Turn on/off generic FEC | 613 * Turn on/off generic FEC |
609 */ | 614 */ |
610 virtual void SetGenericFECStatus(bool enable, | 615 virtual void SetGenericFECStatus(bool enable, |
611 uint8_t payload_type_red, | 616 uint8_t payload_type_red, |
612 uint8_t payload_type_fec) = 0; | 617 uint8_t payload_type_fec) = 0; |
613 | 618 |
614 /* | 619 /* |
615 * Get generic FEC setting | 620 * Get generic FEC setting |
616 */ | 621 */ |
617 virtual void GenericFECStatus(bool& enable, | 622 // DEPRECATED. Use GenericFECStatus below that takes output parameters |
618 uint8_t& payloadTypeRED, | 623 // by pointers instead of by references. |
619 uint8_t& payloadTypeFEC) = 0; | 624 // TODO(danilchap): Remove this when all callers have been updated. |
620 | 625 void GenericFECStatus(bool& enable, // NOLINT |
| 626 uint8_t& payloadTypeRED, // NOLINT |
| 627 uint8_t& payloadTypeFEC) { // NOLINT |
| 628 GenericFECStatus(&enable, &payloadTypeRED, &payloadTypeFEC); |
| 629 } |
| 630 virtual void GenericFECStatus(bool* enable, |
| 631 uint8_t* payload_type_red, |
| 632 uint8_t* payload_type_fec) = 0; |
621 | 633 |
622 virtual int32_t SetFecParameters( | 634 virtual int32_t SetFecParameters( |
623 const FecProtectionParams* delta_params, | 635 const FecProtectionParams* delta_params, |
624 const FecProtectionParams* key_params) = 0; | 636 const FecProtectionParams* key_params) = 0; |
625 | 637 |
626 /* | 638 /* |
627 * Set method for requestion a new key frame | 639 * Set method for requestion a new key frame |
628 * | 640 * |
629 * return -1 on failure else 0 | 641 * return -1 on failure else 0 |
630 */ | 642 */ |
631 virtual int32_t SetKeyFrameRequestMethod(KeyFrameRequestMethod method) = 0; | 643 virtual int32_t SetKeyFrameRequestMethod(KeyFrameRequestMethod method) = 0; |
632 | 644 |
633 /* | 645 /* |
634 * send a request for a keyframe | 646 * send a request for a keyframe |
635 * | 647 * |
636 * return -1 on failure else 0 | 648 * return -1 on failure else 0 |
637 */ | 649 */ |
638 virtual int32_t RequestKeyFrame() = 0; | 650 virtual int32_t RequestKeyFrame() = 0; |
639 }; | 651 }; |
640 } // namespace webrtc | 652 } // namespace webrtc |
641 #endif // WEBRTC_MODULES_RTP_RTCP_INCLUDE_RTP_RTCP_H_ | 653 #endif // WEBRTC_MODULES_RTP_RTCP_INCLUDE_RTP_RTCP_H_ |
OLD | NEW |