Home | History | Annotate | Download | only in rtp
      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
      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/net/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   uint16 new_playout_delay_ms;
     33 };
     34 
     35 class RtpPayloadFeedback {
     36  public:
     37   virtual void CastFeedback(const RtcpCastMessage& cast_feedback) = 0;
     38 
     39  protected:
     40   virtual ~RtpPayloadFeedback();
     41 };
     42 
     43 }  // namespace cast
     44 }  // namespace media
     45 
     46 #endif  // MEDIA_CAST_RTP_RECEIVER_RTP_RECEIVER_DEFINES_H_
     47