OLD | NEW |
1 /* | 1 /* |
2 * Copyright (c) 2012 The WebRTC project authors. All Rights Reserved. | 2 * Copyright (c) 2012 The WebRTC project authors. All Rights Reserved. |
3 * | 3 * |
4 * Use of this source code is governed by a BSD-style license | 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 | 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 | 6 * tree. An additional intellectual property rights grant can be found |
7 * in the file PATENTS. All contributing project authors may | 7 * in the file PATENTS. All contributing project authors may |
8 * be found in the AUTHORS file in the root of the source tree. | 8 * be found in the AUTHORS file in the root of the source tree. |
9 */ | 9 */ |
10 | 10 |
(...skipping 59 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
70 | 70 |
71 // Frame reference data. | 71 // Frame reference data. |
72 uint8_t num_ref_pics; | 72 uint8_t num_ref_pics; |
73 uint8_t p_diff[kMaxVp9RefPics]; | 73 uint8_t p_diff[kMaxVp9RefPics]; |
74 }; | 74 }; |
75 | 75 |
76 struct CodecSpecificInfoGeneric { | 76 struct CodecSpecificInfoGeneric { |
77 uint8_t simulcast_idx; | 77 uint8_t simulcast_idx; |
78 }; | 78 }; |
79 | 79 |
80 struct CodecSpecificInfoH264 {}; | 80 struct CodecSpecificInfoH264 { |
| 81 H264PacketizationMode packetization_mode; |
| 82 }; |
81 | 83 |
82 union CodecSpecificInfoUnion { | 84 union CodecSpecificInfoUnion { |
83 CodecSpecificInfoGeneric generic; | 85 CodecSpecificInfoGeneric generic; |
84 CodecSpecificInfoVP8 VP8; | 86 CodecSpecificInfoVP8 VP8; |
85 CodecSpecificInfoVP9 VP9; | 87 CodecSpecificInfoVP9 VP9; |
86 CodecSpecificInfoH264 H264; | 88 CodecSpecificInfoH264 H264; |
87 }; | 89 }; |
88 | 90 |
89 // Note: if any pointers are added to this struct or its sub-structs, it | 91 // Note: if any pointers are added to this struct or its sub-structs, it |
90 // must be fitted with a copy-constructor. This is because it is copied | 92 // must be fitted with a copy-constructor. This is because it is copied |
91 // in the copy-constructor of VCMEncodedFrame. | 93 // in the copy-constructor of VCMEncodedFrame. |
92 struct CodecSpecificInfo { | 94 struct CodecSpecificInfo { |
93 CodecSpecificInfo() : codecType(kVideoCodecUnknown), codec_name(nullptr) {} | 95 CodecSpecificInfo() : codecType(kVideoCodecUnknown), codec_name(nullptr) {} |
94 VideoCodecType codecType; | 96 VideoCodecType codecType; |
95 const char* codec_name; | 97 const char* codec_name; |
96 CodecSpecificInfoUnion codecSpecific; | 98 CodecSpecificInfoUnion codecSpecific; |
97 }; | 99 }; |
98 | 100 |
99 } // namespace webrtc | 101 } // namespace webrtc |
100 | 102 |
101 #endif // WEBRTC_MODULES_VIDEO_CODING_INCLUDE_VIDEO_CODEC_INTERFACE_H_ | 103 #endif // WEBRTC_MODULES_VIDEO_CODING_INCLUDE_VIDEO_CODEC_INTERFACE_H_ |
OLD | NEW |