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

Unified 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 side-by-side diff with in-line comments
Download patch
Index: content/common/cast_messages.h
diff --git a/content/common/cast_messages.h b/content/common/cast_messages.h
new file mode 100644
index 0000000000000000000000000000000000000000..2ebdaaadb6d9eae97df1bd0f40f095a95c3fc42c
--- /dev/null
+++ b/content/common/cast_messages.h
@@ -0,0 +1,139 @@
+// Copyright (c) 2013 The Chromium Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+// IPC messages for the Cast transport API.
+// Multiply-included message file, hence no include guard.
+
+#include "content/common/cast_messages_data.h"
+#include "content/common/content_export.h"
+#include "content/public/common/p2p_socket_type.h"
+#include "ipc/ipc_message_macros.h"
+#include "media/cast/cast_sender.h"
+#include "media/cast/rtcp/rtcp_defines.h"
+#include "media/cast/transport/cast_transport_sender.h"
+#include "net/base/ip_endpoint.h"
+#include "net/base/net_util.h"
+
+#undef IPC_MESSAGE_EXPORT
+#define IPC_MESSAGE_EXPORT CONTENT_EXPORT
+#define IPC_MESSAGE_START CastMsgStart
+
+IPC_ENUM_TRAITS(media::cast::transport::AudioCodec)
+IPC_ENUM_TRAITS(media::cast::transport::VideoCodec)
+IPC_ENUM_TRAITS(media::cast::transport::RtcpSenderFrameStatus)
+IPC_ENUM_TRAITS(media::cast::transport::CastTransportStatus)
+
+IPC_STRUCT_TRAITS_BEGIN(media::cast::transport::EncodedAudioFrame)
+ IPC_STRUCT_TRAITS_MEMBER(codec)
+ IPC_STRUCT_TRAITS_MEMBER(frame_id)
+ IPC_STRUCT_TRAITS_MEMBER(samples)
+ IPC_STRUCT_TRAITS_MEMBER(data)
+IPC_STRUCT_TRAITS_END()
+
+IPC_STRUCT_TRAITS_BEGIN(media::cast::transport::EncodedVideoFrame)
+ IPC_STRUCT_TRAITS_MEMBER(codec)
+ IPC_STRUCT_TRAITS_MEMBER(key_frame)
+ IPC_STRUCT_TRAITS_MEMBER(frame_id)
+ IPC_STRUCT_TRAITS_MEMBER(last_referenced_frame_id)
+ IPC_STRUCT_TRAITS_MEMBER(data)
+IPC_STRUCT_TRAITS_END()
+
+IPC_STRUCT_TRAITS_BEGIN(media::cast::transport::RtcpSenderInfo)
+ IPC_STRUCT_TRAITS_MEMBER(ntp_seconds)
+ IPC_STRUCT_TRAITS_MEMBER(ntp_fraction)
+ IPC_STRUCT_TRAITS_MEMBER(rtp_timestamp)
+ IPC_STRUCT_TRAITS_MEMBER(send_packet_count)
+ IPC_STRUCT_TRAITS_MEMBER(send_octet_count)
+IPC_STRUCT_TRAITS_END()
+
+IPC_STRUCT_TRAITS_BEGIN(media::cast::transport::RtcpDlrrReportBlock)
+ IPC_STRUCT_TRAITS_MEMBER(last_rr)
+ IPC_STRUCT_TRAITS_MEMBER(delay_since_last_rr)
+IPC_STRUCT_TRAITS_END()
+
+IPC_STRUCT_TRAITS_BEGIN(media::cast::transport::RtcpSenderFrameLogMessage)
+ IPC_STRUCT_TRAITS_MEMBER(frame_status)
+ IPC_STRUCT_TRAITS_MEMBER(rtp_timestamp)
+IPC_STRUCT_TRAITS_END()
+
+IPC_STRUCT_TRAITS_BEGIN(media::cast::transport::CastTransportConfig)
+ IPC_STRUCT_TRAITS_MEMBER(receiver_ip_address)
+ IPC_STRUCT_TRAITS_MEMBER(local_ip_address)
+ IPC_STRUCT_TRAITS_MEMBER(receive_port)
+ IPC_STRUCT_TRAITS_MEMBER(send_port)
+ IPC_STRUCT_TRAITS_MEMBER(audio_ssrc)
+ IPC_STRUCT_TRAITS_MEMBER(video_ssrc)
+ IPC_STRUCT_TRAITS_MEMBER(video_codec)
+ IPC_STRUCT_TRAITS_MEMBER(audio_codec)
+ IPC_STRUCT_TRAITS_MEMBER(audio_frequency)
+ IPC_STRUCT_TRAITS_MEMBER(audio_channels)
+ IPC_STRUCT_TRAITS_MEMBER(audio_rtp_history_ms)
+ IPC_STRUCT_TRAITS_MEMBER(video_rtp_history_ms)
+ IPC_STRUCT_TRAITS_MEMBER(audio_rtp_max_delay_ms)
+ IPC_STRUCT_TRAITS_MEMBER(video_rtp_max_delay_ms)
+ IPC_STRUCT_TRAITS_MEMBER(audio_rtp_payload_type)
+ IPC_STRUCT_TRAITS_MEMBER(video_rtp_payload_type)
+ IPC_STRUCT_TRAITS_MEMBER(aes_key)
+ IPC_STRUCT_TRAITS_MEMBER(aes_iv_mask)
+IPC_STRUCT_TRAITS_END()
+
+IPC_STRUCT_TRAITS_BEGIN(cast::SendRtcpFromRtpSenderData)
+ IPC_STRUCT_TRAITS_MEMBER(packet_type_flags)
+ IPC_STRUCT_TRAITS_MEMBER(sending_ssrc)
+ IPC_STRUCT_TRAITS_MEMBER(c_name)
+IPC_STRUCT_TRAITS_END()
+
+
+// Cast messages sent from the browser to the renderer.
+
+IPC_MESSAGE_CONTROL3(CastMsg_RtpStatisticsUpdate,
+ int32 /* channel_id */,
+ base::TimeTicks /* now */,
+ media::cast::transport::RtcpSenderInfo /* sender_info */)
+
+IPC_MESSAGE_CONTROL2(CastMsg_GotPacket,
+ int32 /* channel_id */,
+ media::cast::Packet /* packet */);
+
+IPC_MESSAGE_CONTROL2(
+ CastMsg_NotifyStatusChange,
+ int32 /* channel_id */,
+ media::cast::transport::CastTransportStatus /* status */);
+
+// Cast messages sent from the renderer to the browser.
+
+IPC_MESSAGE_CONTROL3(
+ CastHostMsg_InsertCodedAudioFrame,
+ int32 /* channel_id */,
+ media::cast::transport::EncodedAudioFrame /* audio_frame */,
+ base::TimeTicks /* recorded_time */)
+
+IPC_MESSAGE_CONTROL3(
+ CastHostMsg_InsertCodedVideoFrame,
+ int32 /* channel_id */,
+ media::cast::transport::EncodedVideoFrame /* video_frame */,
+ base::TimeTicks /* recorded_time */)
+
+IPC_MESSAGE_CONTROL5(
+ CastHostMsg_SendRtcpFromRtpSender,
+ int32 /* channel_id */,
+ cast::SendRtcpFromRtpSenderData /* flags, ssrc, name */,
+ media::cast::transport::RtcpSenderInfo /* sender_info */,
+ media::cast::transport::RtcpDlrrReportBlock /* dlrr */,
+ media::cast::transport::RtcpSenderLogMessage /* sender_log */)
+
+IPC_MESSAGE_CONTROL3(
+ CastHostMsg_ResendPackets,
+ int32 /* channel_id */,
+ bool /* is_audio */,
+ media::cast::MissingFramesAndPacketsMap /* missing_packets */)
+
+IPC_MESSAGE_CONTROL2(
+ CastHostMsg_New,
+ int32 /* channel_id */,
+ media::cast::transport::CastTransportConfig /* config */);
+
+IPC_MESSAGE_CONTROL1(
+ CastHostMsg_Delete,
+ int32 /* channel_id */);

Powered by Google App Engine
This is Rietveld 408576698