Chromium Code Reviews| Index: media/cast/net/rtp_sender/rtp_packetizer/test/rtp_header_parser.h |
| diff --git a/media/cast/net/rtp_sender/rtp_packetizer/test/rtp_header_parser.h b/media/cast/net/rtp_sender/rtp_packetizer/test/rtp_header_parser.h |
| new file mode 100644 |
| index 0000000000000000000000000000000000000000..33e31fafc58f3fe2771d3787301c5d3a58e52cad |
| --- /dev/null |
| +++ b/media/cast/net/rtp_sender/rtp_packetizer/test/rtp_header_parser.h |
| @@ -0,0 +1,75 @@ |
| +// 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. |
| + |
| +// Utility parser for rtp packetizer unittests |
| +#ifndef MEDIA_CAST_NET_RTP_SENDER_RTP_PACKETIZER_TEST_RTP_HEADER_PARSER_H_ |
| +#define MEDIA_CAST_NET_RTP_SENDER_RTP_PACKETIZER_TEST_RTP_HEADER_PARSER_H_ |
| + |
| +#include "base/basictypes.h" |
| +#include "media/cast/net/cast_net_defines.h" |
| + |
| +namespace media { |
| +namespace cast { |
| + |
| +struct RtpCastTestHeader { |
|
pwestin
2013/12/10 23:03:01
confused about this struct why do we need it?
mikhal1
2013/12/11 00:29:33
Just for testing. Before I was using the RtpCastHe
|
| + RtpCastTestHeader() { |
| + is_key_frame = false; |
| + frame_id = 0; |
| + packet_id = 0; |
| + max_packet_id = 0; |
| + is_reference = false; |
| + reference_frame_id = 0; |
| + marker = false; |
| + sequence_number = 0; |
| + rtp_timestamp = 0; |
| + ssrc = 0; |
| + payload_type = 0; |
| + num_csrcs = 0; |
| + audio_num_energy = 0; |
| + header_length = 0; |
| + } |
| + //webrtc::WebRtcRTPHeader webrtc; |
| + // Cast specific. |
| + 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; |
| + |
| + // Rtp Generic. |
| + bool marker; |
| + uint16 sequence_number; |
| + uint32 rtp_timestamp; |
| + uint32 ssrc; |
| + int payload_type; |
| + uint8 num_csrcs; |
| + uint8 audio_num_energy; |
| + int header_length; |
| + |
| +}; |
| + |
| +class RtpHeaderParser { |
| + public: |
| + RtpHeaderParser(const uint8* rtpData, size_t rtpDataLength); |
| + ~RtpHeaderParser(); |
| + |
| + bool Parse(RtpCastTestHeader* parsed_packet) const; |
| + private: |
|
pwestin
2013/12/10 23:03:01
line break
mikhal1
2013/12/11 00:29:33
Done.
|
| + bool ParseCommon(RtpCastTestHeader* parsed_packet) const; |
| + bool ParseCast(RtpCastTestHeader* parsed_packet) const; |
| + const uint8* const rtp_data_begin_; |
| + size_t length_; |
| + |
| + mutable FrameIdWrapHelper frame_id_wrap_helper_; |
| + mutable FrameIdWrapHelper reference_frame_id_wrap_helper_; |
| + |
| + DISALLOW_COPY_AND_ASSIGN(RtpHeaderParser); |
| +}; |
| + |
| +} // namespace cast |
| +} // namespace media |
| + |
| +#endif // MEDIA_CAST_NET_RTP_SENDER_RTP_PACKETIZER_TEST_RTP_HEADER_PARSER_H_ |