Line data Source code
1 : /*
2 : * Copyright (c) 2016 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 : // This file contains codec dependent definitions that are needed in
12 : // order to compile the WebRTC codebase, even if this codec is not used.
13 :
14 : #ifndef WEBRTC_MODULES_VIDEO_CODING_CODECS_VP8_INCLUDE_VP8_GLOBALS_H_
15 : #define WEBRTC_MODULES_VIDEO_CODING_CODECS_VP8_INCLUDE_VP8_GLOBALS_H_
16 :
17 : #include "webrtc/modules/video_coding/codecs/interface/common_constants.h"
18 :
19 : namespace webrtc {
20 :
21 : struct RTPVideoHeaderVP8 {
22 0 : void InitRTPVideoHeaderVP8() {
23 0 : nonReference = false;
24 0 : pictureId = kNoPictureId;
25 0 : tl0PicIdx = kNoTl0PicIdx;
26 0 : temporalIdx = kNoTemporalIdx;
27 0 : layerSync = false;
28 0 : keyIdx = kNoKeyIdx;
29 0 : partitionId = 0;
30 0 : beginningOfPartition = false;
31 0 : }
32 :
33 : bool nonReference; // Frame is discardable.
34 : int16_t pictureId; // Picture ID index, 15 bits;
35 : // kNoPictureId if PictureID does not exist.
36 : int16_t tl0PicIdx; // TL0PIC_IDX, 8 bits;
37 : // kNoTl0PicIdx means no value provided.
38 : uint8_t temporalIdx; // Temporal layer index, or kNoTemporalIdx.
39 : bool layerSync; // This frame is a layer sync frame.
40 : // Disabled if temporalIdx == kNoTemporalIdx.
41 : int keyIdx; // 5 bits; kNoKeyIdx means not used.
42 : int partitionId; // VP8 partition ID
43 : bool beginningOfPartition; // True if this packet is the first
44 : // in a VP8 partition. Otherwise false
45 : };
46 :
47 : } // namespace webrtc
48 :
49 : #endif // WEBRTC_MODULES_VIDEO_CODING_CODECS_VP8_INCLUDE_VP8_GLOBALS_H_
|