Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(204)

Side by Side Diff: webrtc/common_types.h

Issue 2007743003: Add sender controlled playout delay limits (Closed) Base URL: https://chromium.googlesource.com/external/webrtc.git@cleanup_rtp_hdr_extensions
Patch Set: Rename OnReceivedRtcpReport to OnReceivedRtcpReportBlocks Created 4 years, 6 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « no previous file | webrtc/common_types.cc » ('j') | webrtc/modules/modules.gyp » ('J')
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
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
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
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_
OLDNEW
« no previous file with comments | « no previous file | webrtc/common_types.cc » ('j') | webrtc/modules/modules.gyp » ('J')

Powered by Google App Engine
This is Rietveld 408576698