OLD | NEW |
| (Empty) |
1 /* | |
2 * Copyright (c) 2011 The WebRTC project authors. All Rights Reserved. | |
3 * | |
4 * Use of this source code is governed by a BSD-style license | |
5 * that can be found in the LICENSE file in the root of the source | |
6 * tree. An additional intellectual property rights grant can be found | |
7 * in the file PATENTS. All contributing project authors may | |
8 * be found in the AUTHORS file in the root of the source tree. | |
9 */ | |
10 | |
11 #ifndef WEBRTC_MODULES_VIDEO_CODING_PACKET_H_ | |
12 #define WEBRTC_MODULES_VIDEO_CODING_PACKET_H_ | |
13 | |
14 #include "webrtc/modules/include/module_common_types.h" | |
15 #include "webrtc/modules/video_coding/main/source/jitter_buffer_common.h" | |
16 #include "webrtc/typedefs.h" | |
17 | |
18 namespace webrtc { | |
19 | |
20 class VCMPacket { | |
21 public: | |
22 VCMPacket(); | |
23 VCMPacket(const uint8_t* ptr, | |
24 const size_t size, | |
25 const WebRtcRTPHeader& rtpHeader); | |
26 VCMPacket(const uint8_t* ptr, | |
27 size_t size, | |
28 uint16_t seqNum, | |
29 uint32_t timestamp, | |
30 bool markerBit); | |
31 | |
32 void Reset(); | |
33 | |
34 uint8_t payloadType; | |
35 uint32_t timestamp; | |
36 // NTP time of the capture time in local timebase in milliseconds. | |
37 int64_t ntp_time_ms_; | |
38 uint16_t seqNum; | |
39 const uint8_t* dataPtr; | |
40 size_t sizeBytes; | |
41 bool markerBit; | |
42 | |
43 FrameType frameType; | |
44 VideoCodecType codec; | |
45 | |
46 bool isFirstPacket; // Is this first packet in a frame. | |
47 VCMNaluCompleteness completeNALU; // Default is kNaluIncomplete. | |
48 bool insertStartCode; // True if a start code should be insert
ed before this | |
49 // packet. | |
50 int width; | |
51 int height; | |
52 RTPVideoHeader codecSpecificHeader; | |
53 | |
54 protected: | |
55 void CopyCodecSpecifics(const RTPVideoHeader& videoHeader); | |
56 }; | |
57 | |
58 } // namespace webrtc | |
59 #endif // WEBRTC_MODULES_VIDEO_CODING_PACKET_H_ | |
OLD | NEW |