| OLD | NEW |
| 1 // Copyright 2013 The Chromium Authors. All rights reserved. | 1 // Copyright 2013 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_LOGGING_LOGGING_DEFINES_H_ | 5 #ifndef MEDIA_CAST_LOGGING_LOGGING_DEFINES_H_ |
| 6 #define MEDIA_CAST_LOGGING_LOGGING_DEFINES_H_ | 6 #define MEDIA_CAST_LOGGING_LOGGING_DEFINES_H_ |
| 7 | 7 |
| 8 #include <map> | 8 #include <map> |
| 9 #include <string> | 9 #include <string> |
| 10 #include <vector> | 10 #include <vector> |
| 11 | 11 |
| 12 #include "base/memory/linked_ptr.h" | 12 #include "base/memory/linked_ptr.h" |
| 13 #include "base/time/time.h" | 13 #include "base/time/time.h" |
| 14 | 14 |
| 15 namespace media { | 15 namespace media { |
| 16 namespace cast { | 16 namespace cast { |
| 17 | 17 |
| 18 struct CastLoggingConfig { |
| 19 CastLoggingConfig(); |
| 20 ~CastLoggingConfig(); |
| 21 |
| 22 bool enable_data_collection; |
| 23 bool enable_uma_stats; |
| 24 bool enable_tracing; |
| 25 }; |
| 26 |
| 27 // By default, enable raw and stats data collection. Disable tracing and UMA. |
| 28 CastLoggingConfig GetDefaultCastLoggingConfig(); |
| 29 |
| 18 enum CastLoggingEvent { | 30 enum CastLoggingEvent { |
| 19 // Generic events. | 31 // Generic events. |
| 20 kRtt, | 32 kRttMs, |
| 21 kPacketLoss, | 33 kPacketLoss, |
| 22 kJitter, | 34 kJitterMs, |
| 23 kAckReceived, | 35 kAckReceived, |
| 36 kRembBitrate, |
| 24 kAckSent, | 37 kAckSent, |
| 25 kLastEvent, | 38 kLastEvent, |
| 26 // Audio sender. | 39 // Audio sender. |
| 40 kAudioFrameReceived, |
| 27 kAudioFrameCaptured, | 41 kAudioFrameCaptured, |
| 28 kAudioFrameEncoded, | 42 kAudioFrameEncoded, |
| 29 // Audio receiver. | 43 // Audio receiver. |
| 30 kAudioPlayoutDelay, | 44 kAudioPlayoutDelay, |
| 31 kAudioFrameDecoded, | 45 kAudioFrameDecoded, |
| 32 // Video sender. | 46 // Video sender. |
| 33 kVideoFrameCaptured, | 47 kVideoFrameCaptured, |
| 48 kVideoFrameReceived, |
| 34 kVideoFrameSentToEncoder, | 49 kVideoFrameSentToEncoder, |
| 35 kVideoFrameEncoded, | 50 kVideoFrameEncoded, |
| 36 // Video receiver. | 51 // Video receiver. |
| 37 kVideoFrameDecoded, | 52 kVideoFrameDecoded, |
| 38 kVideoRenderDelay, | 53 kVideoRenderDelay, |
| 39 // Send-side packet events. | 54 // Send-side packet events. |
| 40 kPacketSentToPacer, | 55 kPacketSentToPacer, |
| 41 kPacketSentToNetwork, | 56 kPacketSentToNetwork, |
| 42 kPacketRetransmited, | 57 kPacketRetransmited, |
| 43 // Receive-side packet events. | 58 // Receive-side packet events. |
| 44 kPacketReceived, | 59 kPacketReceived, |
| 60 |
| 61 kNumOfLoggingEvents, |
| 45 }; | 62 }; |
| 46 | 63 |
| 47 std::string CastLoggingToString(CastLoggingEvent event); | 64 std::string CastLoggingToString(CastLoggingEvent event); |
| 48 | 65 |
| 49 struct FrameEvent { | 66 struct FrameEvent { |
| 50 FrameEvent(); | 67 FrameEvent(); |
| 51 ~FrameEvent(); | 68 ~FrameEvent(); |
| 52 | 69 |
| 53 uint32 frame_id; | 70 uint32 frame_id; |
| 54 int size; // Encoded size only. | 71 size_t size; // Encoded size only. |
| 55 std::vector<base::TimeTicks> timestamp; | 72 std::vector<base::TimeTicks> timestamp; |
| 56 std::vector<CastLoggingEvent> type; | 73 std::vector<CastLoggingEvent> type; |
| 57 base::TimeDelta delay_delta; // Render/playout delay. | 74 base::TimeDelta delay_delta; // Render/playout delay. |
| 58 }; | 75 }; |
| 59 | 76 |
| 60 // Internal map sorted by packet id. | 77 // Internal map sorted by packet id. |
| 61 struct BasePacketInfo { | 78 struct BasePacketInfo { |
| 62 BasePacketInfo(); | 79 BasePacketInfo(); |
| 63 ~BasePacketInfo(); | 80 ~BasePacketInfo(); |
| 64 | 81 |
| 65 int size; | 82 size_t size; |
| 66 std::vector<base::TimeTicks> timestamp; | 83 std::vector<base::TimeTicks> timestamp; |
| 67 std::vector<CastLoggingEvent> type; | 84 std::vector<CastLoggingEvent> type; |
| 68 }; | 85 }; |
| 69 | 86 |
| 70 typedef std::map<uint16, BasePacketInfo> BasePacketMap; | 87 typedef std::map<uint16, BasePacketInfo> BasePacketMap; |
| 71 | 88 |
| 72 struct PacketEvent { | 89 struct PacketEvent { |
| 73 PacketEvent(); | 90 PacketEvent(); |
| 74 ~PacketEvent(); | 91 ~PacketEvent(); |
| 75 uint32 frame_id; | 92 uint32 frame_id; |
| (...skipping 25 matching lines...) Expand all Loading... |
| 101 typedef std::map<CastLoggingEvent, GenericEvent> GenericRawMap; | 118 typedef std::map<CastLoggingEvent, GenericEvent> GenericRawMap; |
| 102 | 119 |
| 103 typedef std::map<CastLoggingEvent, linked_ptr<FrameLogStats > > FrameStatsMap; | 120 typedef std::map<CastLoggingEvent, linked_ptr<FrameLogStats > > FrameStatsMap; |
| 104 typedef std::map<CastLoggingEvent, double> PacketStatsMap; | 121 typedef std::map<CastLoggingEvent, double> PacketStatsMap; |
| 105 typedef std::map<CastLoggingEvent, double> GenericStatsMap; | 122 typedef std::map<CastLoggingEvent, double> GenericStatsMap; |
| 106 | 123 |
| 107 } // namespace cast | 124 } // namespace cast |
| 108 } // namespace media | 125 } // namespace media |
| 109 | 126 |
| 110 #endif // MEDIA_CAST_LOGGING_LOGGING_DEFINES_H_ | 127 #endif // MEDIA_CAST_LOGGING_LOGGING_DEFINES_H_ |
| OLD | NEW |