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

Side by Side Diff: content/common/cast_messages.h

Issue 138753004: Cast: IPC glue between cast library transport and encoders. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: remote address not needed in new message Created 6 years, 11 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
OLDNEW
(Empty)
1 // Copyright (c) 2013 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
4
5 // IPC messages for the Cast transport API.
6 // Multiply-included message file, hence no include guard.
7
8 #include "content/common/cast_messages_data.h"
9 #include "content/common/content_export.h"
10 #include "content/public/common/p2p_socket_type.h"
11 #include "ipc/ipc_message_macros.h"
12 #include "media/cast/cast_sender.h"
13 #include "media/cast/rtcp/rtcp_defines.h"
14 #include "media/cast/transport/cast_transport_sender.h"
15 #include "net/base/ip_endpoint.h"
16 #include "net/base/net_util.h"
17
18 #undef IPC_MESSAGE_EXPORT
19 #define IPC_MESSAGE_EXPORT CONTENT_EXPORT
20 #define IPC_MESSAGE_START CastMsgStart
21
22 IPC_ENUM_TRAITS(media::cast::transport::AudioCodec)
23 IPC_ENUM_TRAITS(media::cast::transport::VideoCodec)
24 IPC_ENUM_TRAITS(media::cast::transport::RtcpSenderFrameStatus)
25 IPC_ENUM_TRAITS(media::cast::transport::CastTransportStatus)
26
27 IPC_STRUCT_TRAITS_BEGIN(media::cast::transport::EncodedAudioFrame)
28 IPC_STRUCT_TRAITS_MEMBER(codec)
29 IPC_STRUCT_TRAITS_MEMBER(frame_id)
30 IPC_STRUCT_TRAITS_MEMBER(samples)
31 IPC_STRUCT_TRAITS_MEMBER(data)
32 IPC_STRUCT_TRAITS_END()
33
34 IPC_STRUCT_TRAITS_BEGIN(media::cast::transport::EncodedVideoFrame)
35 IPC_STRUCT_TRAITS_MEMBER(codec)
36 IPC_STRUCT_TRAITS_MEMBER(key_frame)
37 IPC_STRUCT_TRAITS_MEMBER(frame_id)
38 IPC_STRUCT_TRAITS_MEMBER(last_referenced_frame_id)
39 IPC_STRUCT_TRAITS_MEMBER(data)
40 IPC_STRUCT_TRAITS_END()
41
42 IPC_STRUCT_TRAITS_BEGIN(media::cast::transport::RtcpSenderInfo)
43 IPC_STRUCT_TRAITS_MEMBER(ntp_seconds)
44 IPC_STRUCT_TRAITS_MEMBER(ntp_fraction)
45 IPC_STRUCT_TRAITS_MEMBER(rtp_timestamp)
46 IPC_STRUCT_TRAITS_MEMBER(send_packet_count)
47 IPC_STRUCT_TRAITS_MEMBER(send_octet_count)
48 IPC_STRUCT_TRAITS_END()
49
50 IPC_STRUCT_TRAITS_BEGIN(media::cast::transport::RtcpDlrrReportBlock)
51 IPC_STRUCT_TRAITS_MEMBER(last_rr)
52 IPC_STRUCT_TRAITS_MEMBER(delay_since_last_rr)
53 IPC_STRUCT_TRAITS_END()
54
55 IPC_STRUCT_TRAITS_BEGIN(media::cast::transport::RtcpSenderFrameLogMessage)
56 IPC_STRUCT_TRAITS_MEMBER(frame_status)
57 IPC_STRUCT_TRAITS_MEMBER(rtp_timestamp)
58 IPC_STRUCT_TRAITS_END()
59
60 IPC_STRUCT_TRAITS_BEGIN(media::cast::transport::CastTransportConfig)
61 IPC_STRUCT_TRAITS_MEMBER(receiver_ip_address)
62 IPC_STRUCT_TRAITS_MEMBER(local_ip_address)
63 IPC_STRUCT_TRAITS_MEMBER(receive_port)
64 IPC_STRUCT_TRAITS_MEMBER(send_port)
65 IPC_STRUCT_TRAITS_MEMBER(audio_ssrc)
66 IPC_STRUCT_TRAITS_MEMBER(video_ssrc)
67 IPC_STRUCT_TRAITS_MEMBER(video_codec)
68 IPC_STRUCT_TRAITS_MEMBER(audio_codec)
69 IPC_STRUCT_TRAITS_MEMBER(audio_frequency)
70 IPC_STRUCT_TRAITS_MEMBER(audio_channels)
71 IPC_STRUCT_TRAITS_MEMBER(audio_rtp_history_ms)
72 IPC_STRUCT_TRAITS_MEMBER(video_rtp_history_ms)
73 IPC_STRUCT_TRAITS_MEMBER(audio_rtp_max_delay_ms)
74 IPC_STRUCT_TRAITS_MEMBER(video_rtp_max_delay_ms)
75 IPC_STRUCT_TRAITS_MEMBER(audio_rtp_payload_type)
76 IPC_STRUCT_TRAITS_MEMBER(video_rtp_payload_type)
77 IPC_STRUCT_TRAITS_MEMBER(aes_key)
78 IPC_STRUCT_TRAITS_MEMBER(aes_iv_mask)
79 IPC_STRUCT_TRAITS_END()
80
81 IPC_STRUCT_TRAITS_BEGIN(cast::SendRtcpFromRtpSenderData)
82 IPC_STRUCT_TRAITS_MEMBER(packet_type_flags)
83 IPC_STRUCT_TRAITS_MEMBER(sending_ssrc)
84 IPC_STRUCT_TRAITS_MEMBER(c_name)
85 IPC_STRUCT_TRAITS_END()
86
87
88 // Cast messages sent from the browser to the renderer.
89
90 IPC_MESSAGE_CONTROL3(CastMsg_RtpStatisticsUpdate,
91 int32 /* channel_id */,
92 base::TimeTicks /* now */,
93 media::cast::transport::RtcpSenderInfo /* sender_info */)
94
95 IPC_MESSAGE_CONTROL2(CastMsg_GotPacket,
96 int32 /* channel_id */,
97 media::cast::Packet /* packet */);
98
99 IPC_MESSAGE_CONTROL2(
100 CastMsg_NotifyStatusChange,
101 int32 /* channel_id */,
102 media::cast::transport::CastTransportStatus /* status */);
103
104 // Cast messages sent from the renderer to the browser.
105
106 IPC_MESSAGE_CONTROL3(
107 CastHostMsg_InsertCodedAudioFrame,
108 int32 /* channel_id */,
109 media::cast::transport::EncodedAudioFrame /* audio_frame */,
110 base::TimeTicks /* recorded_time */)
111
112 IPC_MESSAGE_CONTROL3(
113 CastHostMsg_InsertCodedVideoFrame,
114 int32 /* channel_id */,
115 media::cast::transport::EncodedVideoFrame /* video_frame */,
116 base::TimeTicks /* recorded_time */)
117
118 IPC_MESSAGE_CONTROL5(
119 CastHostMsg_SendRtcpFromRtpSender,
120 int32 /* channel_id */,
121 cast::SendRtcpFromRtpSenderData /* flags, ssrc, name */,
122 media::cast::transport::RtcpSenderInfo /* sender_info */,
123 media::cast::transport::RtcpDlrrReportBlock /* dlrr */,
124 media::cast::transport::RtcpSenderLogMessage /* sender_log */)
125
126 IPC_MESSAGE_CONTROL3(
127 CastHostMsg_ResendPackets,
128 int32 /* channel_id */,
129 bool /* is_audio */,
130 media::cast::MissingFramesAndPacketsMap /* missing_packets */)
131
132 IPC_MESSAGE_CONTROL2(
133 CastHostMsg_New,
134 int32 /* channel_id */,
135 media::cast::transport::CastTransportConfig /* config */);
136
137 IPC_MESSAGE_CONTROL1(
138 CastHostMsg_Delete,
139 int32 /* channel_id */);
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698