OLD | NEW |
1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #ifndef MEDIA_CAST_RTCP_RTCP_DEFINES_H_ | 5 #ifndef MEDIA_CAST_RTCP_RTCP_DEFINES_H_ |
6 #define MEDIA_CAST_RTCP_RTCP_DEFINES_H_ | 6 #define MEDIA_CAST_RTCP_RTCP_DEFINES_H_ |
7 | 7 |
8 #include <map> | 8 #include <map> |
9 #include <set> | 9 #include <set> |
10 | 10 |
11 #include "media/cast/cast_config.h" | 11 #include "media/cast/cast_config.h" |
12 #include "media/cast/cast_defines.h" | 12 #include "media/cast/cast_defines.h" |
13 #include "media/cast/logging/logging_defines.h" | 13 #include "media/cast/logging/logging_defines.h" |
14 #include "media/cast/net/cast_transport_defines.h" | 14 #include "media/cast/net/cast_transport_defines.h" |
15 | 15 |
16 namespace media { | 16 namespace media { |
17 namespace cast { | 17 namespace cast { |
18 | 18 |
19 static const size_t kRtcpCastLogHeaderSize = 12; | 19 static const size_t kRtcpCastLogHeaderSize = 12; |
20 static const size_t kRtcpReceiverFrameLogSize = 8; | 20 static const size_t kRtcpReceiverFrameLogSize = 8; |
21 static const size_t kRtcpReceiverEventLogSize = 4; | 21 static const size_t kRtcpReceiverEventLogSize = 4; |
22 | 22 |
23 // Handle the per frame ACK and NACK messages. | 23 // Handle the per frame ACK and NACK messages. |
24 class RtcpCastMessage { | 24 struct RtcpCastMessage { |
25 public: | 25 explicit RtcpCastMessage(uint32 ssrc); |
26 explicit RtcpCastMessage(uint32 media_ssrc); | 26 RtcpCastMessage(); |
27 ~RtcpCastMessage(); | 27 ~RtcpCastMessage(); |
28 | 28 |
29 void Copy(const RtcpCastMessage& cast_message); | 29 uint32 media_ssrc; |
30 | 30 uint32 ack_frame_id; |
31 uint32 media_ssrc_; | 31 uint16 target_delay_ms; |
32 uint32 ack_frame_id_; | 32 MissingFramesAndPacketsMap missing_frames_and_packets; |
33 uint16 target_delay_ms_; | |
34 MissingFramesAndPacketsMap missing_frames_and_packets_; | |
35 | |
36 DISALLOW_COPY_AND_ASSIGN(RtcpCastMessage); | |
37 }; | 33 }; |
38 | 34 |
39 // Log messages from receiver to sender. | 35 // Log messages from receiver to sender. |
40 struct RtcpReceiverEventLogMessage { | 36 struct RtcpReceiverEventLogMessage { |
41 RtcpReceiverEventLogMessage(); | 37 RtcpReceiverEventLogMessage(); |
42 ~RtcpReceiverEventLogMessage(); | 38 ~RtcpReceiverEventLogMessage(); |
43 | 39 |
44 CastLoggingEvent type; | 40 CastLoggingEvent type; |
45 base::TimeTicks event_timestamp; | 41 base::TimeTicks event_timestamp; |
46 base::TimeDelta delay_delta; | 42 base::TimeDelta delay_delta; |
(...skipping 73 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
120 // Time of event logged. | 116 // Time of event logged. |
121 base::TimeTicks timestamp; | 117 base::TimeTicks timestamp; |
122 | 118 |
123 // Render/playout delay. Only set for FRAME_PLAYOUT events. | 119 // Render/playout delay. Only set for FRAME_PLAYOUT events. |
124 base::TimeDelta delay_delta; | 120 base::TimeDelta delay_delta; |
125 | 121 |
126 // Only set for packet events. | 122 // Only set for packet events. |
127 uint16 packet_id; | 123 uint16 packet_id; |
128 }; | 124 }; |
129 | 125 |
| 126 struct RtcpRttReport { |
| 127 RtcpRttReport(); |
| 128 ~RtcpRttReport(); |
| 129 |
| 130 base::TimeDelta rtt; |
| 131 base::TimeDelta avg_rtt; |
| 132 base::TimeDelta min_rtt; |
| 133 base::TimeDelta max_rtt; |
| 134 }; |
| 135 |
| 136 typedef base::Callback<void(const RtcpCastMessage&)> RtcpCastMessageCallback; |
| 137 typedef base::Callback<void(base::TimeDelta, |
| 138 base::TimeDelta, |
| 139 base::TimeDelta, |
| 140 base::TimeDelta)> RtcpRttCallback; |
| 141 typedef |
| 142 base::Callback<void(const RtcpReceiverLogMessage&)> RtcpLogMessageCallback; |
| 143 |
130 } // namespace cast | 144 } // namespace cast |
131 } // namespace media | 145 } // namespace media |
132 | 146 |
133 #endif // MEDIA_CAST_RTCP_RTCP_DEFINES_H_ | 147 #endif // MEDIA_CAST_RTCP_RTCP_DEFINES_H_ |
OLD | NEW |