| // Copyright 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. |
| |
| #ifndef MEDIA_CAST_RTP_COMMON_RTP_DEFINES_H_ |
| #define MEDIA_CAST_RTP_COMMON_RTP_DEFINES_H_ |
| |
| #include "base/basictypes.h" |
| #include "media/cast/cast_config.h" |
| #include "media/cast/rtcp/rtcp_defines.h" |
| #include "third_party/webrtc/modules/interface/module_common_types.h" |
| |
| namespace media { |
| namespace cast { |
| |
| const uint8 kRtpMarkerBitMask = 0x80; |
| |
| struct RtpCastHeader { |
| RtpCastHeader() { |
| is_key_frame = false; |
| frame_id = 0; |
| packet_id = 0; |
| max_packet_id = 0; |
| is_reference = false; |
| reference_frame_id = 0; |
| } |
| webrtc::WebRtcRTPHeader webrtc; |
| bool is_key_frame; |
| uint32 frame_id; |
| uint16 packet_id; |
| uint16 max_packet_id; |
| bool is_reference; // Set to true if the previous frame is not available, |
| // and the reference frame id is available. |
| uint32 reference_frame_id; |
| }; |
| |
| class RtpPayloadFeedback { |
| public: |
| virtual void CastFeedback(const RtcpCastMessage& cast_feedback) = 0; |
| |
| protected: |
| virtual ~RtpPayloadFeedback() {} |
| }; |
| |
| } // namespace cast |
| } // namespace media |
| |
| #endif // MEDIA_CAST_RTP_COMMON_RTP_DEFINES_H_ |