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_NET_CAST_TRANSPORT_CONFIG_H_ | 5 #ifndef MEDIA_CAST_NET_CAST_TRANSPORT_CONFIG_H_ |
6 #define MEDIA_CAST_NET_CAST_TRANSPORT_CONFIG_H_ | 6 #define MEDIA_CAST_NET_CAST_TRANSPORT_CONFIG_H_ |
7 | 7 |
8 #include <stddef.h> | 8 #include <stddef.h> |
9 #include <stdint.h> | 9 #include <stdint.h> |
10 | 10 |
(...skipping 12 matching lines...) Expand all Loading... |
23 CODEC_UNKNOWN, | 23 CODEC_UNKNOWN, |
24 CODEC_AUDIO_OPUS, | 24 CODEC_AUDIO_OPUS, |
25 CODEC_AUDIO_PCM16, | 25 CODEC_AUDIO_PCM16, |
26 CODEC_AUDIO_AAC, | 26 CODEC_AUDIO_AAC, |
27 CODEC_VIDEO_FAKE, | 27 CODEC_VIDEO_FAKE, |
28 CODEC_VIDEO_VP8, | 28 CODEC_VIDEO_VP8, |
29 CODEC_VIDEO_H264, | 29 CODEC_VIDEO_H264, |
30 CODEC_LAST = CODEC_VIDEO_H264 | 30 CODEC_LAST = CODEC_VIDEO_H264 |
31 }; | 31 }; |
32 | 32 |
| 33 // Describes the content being transported over RTP streams. |
| 34 enum class RtpPayloadType { |
| 35 UNKNOWN = -1, |
| 36 |
| 37 // Cast Streaming will encode raw audio frames using one of its available |
| 38 // codec implementations, and transport encoded data in the RTP stream. |
| 39 FIRST = 96, |
| 40 AUDIO_OPUS = 96, |
| 41 AUDIO_AAC = 97, |
| 42 AUDIO_PCM16 = 98, |
| 43 |
| 44 // Audio frame data is not modified, and should be transported reliably and |
| 45 // in-sequence. No assumptions about the data can be made. |
| 46 REMOTE_AUDIO = 99, |
| 47 |
| 48 AUDIO_LAST = REMOTE_AUDIO, |
| 49 |
| 50 // Cast Streaming will encode raw video frames using one of its available |
| 51 // codec implementations, and transport encoded data in the RTP stream. |
| 52 VIDEO_VP8 = 100, |
| 53 VIDEO_H264 = 101, |
| 54 |
| 55 // Video frame data is not modified, and should be transported reliably and |
| 56 // in-sequence. No assumptions about the data can be made. |
| 57 REMOTE_VIDEO = 102, |
| 58 |
| 59 LAST = REMOTE_VIDEO |
| 60 }; |
| 61 |
33 struct CastTransportRtpConfig { | 62 struct CastTransportRtpConfig { |
34 CastTransportRtpConfig(); | 63 CastTransportRtpConfig(); |
35 ~CastTransportRtpConfig(); | 64 ~CastTransportRtpConfig(); |
36 | 65 |
37 // Identifier refering to this sender. | 66 // Identifier refering to this sender. |
38 uint32_t ssrc; | 67 uint32_t ssrc; |
39 | 68 |
40 // Identifier for incoming RTCP traffic. | 69 // Identifier for incoming RTCP traffic. |
41 uint32_t feedback_ssrc; | 70 uint32_t feedback_ssrc; |
42 | 71 |
43 // RTP payload type enum: Specifies the type/encoding of frame data. | 72 // RTP payload type enum: Specifies the type/encoding of frame data. |
44 int rtp_payload_type; | 73 RtpPayloadType rtp_payload_type; |
45 | 74 |
46 // The AES crypto key and initialization vector. Each of these strings | 75 // The AES crypto key and initialization vector. Each of these strings |
47 // contains the data in binary form, of size kAesKeySize. If they are empty | 76 // contains the data in binary form, of size kAesKeySize. If they are empty |
48 // strings, crypto is not being used. | 77 // strings, crypto is not being used. |
49 std::string aes_key; | 78 std::string aes_key; |
50 std::string aes_iv_mask; | 79 std::string aes_iv_mask; |
51 }; | 80 }; |
52 | 81 |
53 // A combination of metadata and data for one encoded frame. This can contain | 82 // A combination of metadata and data for one encoded frame. This can contain |
54 // audio data or video data or other. | 83 // audio data or video data or other. |
(...skipping 132 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
187 lhs.ntp_fraction == rhs.ntp_fraction && | 216 lhs.ntp_fraction == rhs.ntp_fraction && |
188 lhs.rtp_timestamp == rhs.rtp_timestamp && | 217 lhs.rtp_timestamp == rhs.rtp_timestamp && |
189 lhs.send_packet_count == rhs.send_packet_count && | 218 lhs.send_packet_count == rhs.send_packet_count && |
190 lhs.send_octet_count == rhs.send_octet_count; | 219 lhs.send_octet_count == rhs.send_octet_count; |
191 } | 220 } |
192 | 221 |
193 } // namespace cast | 222 } // namespace cast |
194 } // namespace media | 223 } // namespace media |
195 | 224 |
196 #endif // MEDIA_CAST_NET_CAST_TRANSPORT_CONFIG_H_ | 225 #endif // MEDIA_CAST_NET_CAST_TRANSPORT_CONFIG_H_ |
OLD | NEW |