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 733 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
744 } | 744 } |
745 | 745 |
746 int64_t timestamp; // Receive time after socket delivers the data. | 746 int64_t timestamp; // Receive time after socket delivers the data. |
747 int64_t not_before; // Earliest possible time the data could have arrived, | 747 int64_t not_before; // Earliest possible time the data could have arrived, |
748 // indicating the potential error in the |timestamp| | 748 // indicating the potential error in the |timestamp| |
749 // value,in case the system is busy. | 749 // value,in case the system is busy. |
750 // For example, the time of the last select() call. | 750 // For example, the time of the last select() call. |
751 // If unknown, this value will be set to zero. | 751 // If unknown, this value will be set to zero. |
752 }; | 752 }; |
753 | 753 |
| 754 // Minimum and maximum playout delay values from capture to render. |
| 755 // These are best effort values. |
| 756 // |
| 757 // A value < 0 indicates no change from previous valid value. |
| 758 // |
| 759 // min = max = 0 indicates that the receiver should try and render |
| 760 // frame as soon as possible. |
| 761 // |
| 762 // min = x, max = y indicates that the receiver is free to adapt |
| 763 // in the range (x, y) based on network jitter. |
| 764 // |
| 765 // Note: Given that this gets embedded in a union, it is up-to the owner to |
| 766 // initialize these values. |
| 767 struct PlayoutDelay { |
| 768 int min_ms; |
| 769 int max_ms; |
| 770 }; |
| 771 |
754 struct RTPHeaderExtension { | 772 struct RTPHeaderExtension { |
755 RTPHeaderExtension(); | 773 RTPHeaderExtension(); |
756 | 774 |
757 bool hasTransmissionTimeOffset; | 775 bool hasTransmissionTimeOffset; |
758 int32_t transmissionTimeOffset; | 776 int32_t transmissionTimeOffset; |
759 bool hasAbsoluteSendTime; | 777 bool hasAbsoluteSendTime; |
760 uint32_t absoluteSendTime; | 778 uint32_t absoluteSendTime; |
761 bool hasTransportSequenceNumber; | 779 bool hasTransportSequenceNumber; |
762 uint16_t transportSequenceNumber; | 780 uint16_t transportSequenceNumber; |
763 | 781 |
764 // Audio Level includes both level in dBov and voiced/unvoiced bit. See: | 782 // Audio Level includes both level in dBov and voiced/unvoiced bit. See: |
765 // https://datatracker.ietf.org/doc/draft-lennox-avt-rtp-audio-level-exthdr/ | 783 // https://datatracker.ietf.org/doc/draft-lennox-avt-rtp-audio-level-exthdr/ |
766 bool hasAudioLevel; | 784 bool hasAudioLevel; |
767 bool voiceActivity; | 785 bool voiceActivity; |
768 uint8_t audioLevel; | 786 uint8_t audioLevel; |
769 | 787 |
770 // For Coordination of Video Orientation. See | 788 // For Coordination of Video Orientation. See |
771 // http://www.etsi.org/deliver/etsi_ts/126100_126199/126114/12.07.00_60/ | 789 // http://www.etsi.org/deliver/etsi_ts/126100_126199/126114/12.07.00_60/ |
772 // ts_126114v120700p.pdf | 790 // ts_126114v120700p.pdf |
773 bool hasVideoRotation; | 791 bool hasVideoRotation; |
774 uint8_t videoRotation; | 792 uint8_t videoRotation; |
| 793 |
| 794 PlayoutDelay playout_delay = {-1, -1}; |
775 }; | 795 }; |
776 | 796 |
777 struct RTPHeader { | 797 struct RTPHeader { |
778 RTPHeader(); | 798 RTPHeader(); |
779 | 799 |
780 bool markerBit; | 800 bool markerBit; |
781 uint8_t payloadType; | 801 uint8_t payloadType; |
782 uint16_t sequenceNumber; | 802 uint16_t sequenceNumber; |
783 uint32_t timestamp; | 803 uint32_t timestamp; |
784 uint32_t ssrc; | 804 uint32_t ssrc; |
(...skipping 108 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
893 enum class RtcpMode { kOff, kCompound, kReducedSize }; | 913 enum class RtcpMode { kOff, kCompound, kReducedSize }; |
894 | 914 |
895 enum NetworkState { | 915 enum NetworkState { |
896 kNetworkUp, | 916 kNetworkUp, |
897 kNetworkDown, | 917 kNetworkDown, |
898 }; | 918 }; |
899 | 919 |
900 } // namespace webrtc | 920 } // namespace webrtc |
901 | 921 |
902 #endif // WEBRTC_COMMON_TYPES_H_ | 922 #endif // WEBRTC_COMMON_TYPES_H_ |
OLD | NEW |