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 3 // found in the LICENSE file. 4 5 #ifndef MEDIA_CAST_RTP_RECEIVER_RTP_RECEIVER_DEFINES_H_ 6 #define MEDIA_CAST_RTP_RECEIVER_RTP_RECEIVER_DEFINES_H_ 7 8 #include "base/basictypes.h" 9 #include "media/cast/cast_config.h" 10 #include "media/cast/rtcp/rtcp_defines.h" 11 12 namespace media { 13 namespace cast { 14 15 struct RtpCastHeader { 16 RtpCastHeader(); 17 18 // Elements from RTP packet header. 19 bool marker; 20 uint8 payload_type; 21 uint16 sequence_number; 22 uint32 rtp_timestamp; 23 uint32 sender_ssrc; 24 25 // Elements from Cast header (at beginning of RTP payload). 26 bool is_key_frame; 27 uint32 frame_id; 28 uint16 packet_id; 29 uint16 max_packet_id; 30 uint32 reference_frame_id; 31 }; 32 33 class RtpPayloadFeedback { 34 public: 35 virtual void CastFeedback(const RtcpCastMessage& cast_feedback) = 0; 36 37 protected: 38 virtual ~RtpPayloadFeedback(); 39 }; 40 41 } // namespace cast 42 } // namespace media 43 44 #endif // MEDIA_CAST_RTP_RECEIVER_RTP_RECEIVER_DEFINES_H_ 45