OLD | NEW |
1 /* | 1 /* |
2 * Copyright (c) 2014 The WebRTC project authors. All Rights Reserved. | 2 * Copyright (c) 2014 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 55 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
66 virtual int32_t Decode(const EncodedImage& input_image, | 66 virtual int32_t Decode(const EncodedImage& input_image, |
67 bool missing_frames, | 67 bool missing_frames, |
68 const RTPFragmentationHeader* fragmentation, | 68 const RTPFragmentationHeader* fragmentation, |
69 const CodecSpecificInfo* codec_specific_info = NULL, | 69 const CodecSpecificInfo* codec_specific_info = NULL, |
70 int64_t render_time_ms = -1) = 0; | 70 int64_t render_time_ms = -1) = 0; |
71 | 71 |
72 virtual int32_t RegisterDecodeCompleteCallback( | 72 virtual int32_t RegisterDecodeCompleteCallback( |
73 DecodedImageCallback* callback) = 0; | 73 DecodedImageCallback* callback) = 0; |
74 | 74 |
75 virtual int32_t Release() = 0; | 75 virtual int32_t Release() = 0; |
76 // TODO(pbos): Remove, this is no longer called. A no-op implementation is | |
77 // added here to permit removal elsewhere. | |
78 virtual int32_t Reset() { return 0; } | |
79 | 76 |
80 // Returns true if the decoder prefer to decode frames late. | 77 // Returns true if the decoder prefer to decode frames late. |
81 // That is, it can not decode infinite number of frames before the decoded | 78 // That is, it can not decode infinite number of frames before the decoded |
82 // frame is consumed. | 79 // frame is consumed. |
83 virtual bool PrefersLateDecoding() const { return true; } | 80 virtual bool PrefersLateDecoding() const { return true; } |
84 | 81 |
85 virtual const char* ImplementationName() const { return "unknown"; } | 82 virtual const char* ImplementationName() const { return "unknown"; } |
86 }; | 83 }; |
87 | 84 |
88 // Class used to wrap external VideoDecoders to provide a fallback option on | 85 // Class used to wrap external VideoDecoders to provide a fallback option on |
(...skipping 46 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
135 int32_t Decode(const EncodedImage& input_image, | 132 int32_t Decode(const EncodedImage& input_image, |
136 bool missing_frames, | 133 bool missing_frames, |
137 const RTPFragmentationHeader* fragmentation, | 134 const RTPFragmentationHeader* fragmentation, |
138 const CodecSpecificInfo* codec_specific_info, | 135 const CodecSpecificInfo* codec_specific_info, |
139 int64_t render_time_ms) override; | 136 int64_t render_time_ms) override; |
140 | 137 |
141 int32_t RegisterDecodeCompleteCallback( | 138 int32_t RegisterDecodeCompleteCallback( |
142 DecodedImageCallback* callback) override; | 139 DecodedImageCallback* callback) override; |
143 | 140 |
144 int32_t Release() override; | 141 int32_t Release() override; |
145 int32_t Reset() override; | |
146 | 142 |
147 const char* ImplementationName() const override; | 143 const char* ImplementationName() const override; |
148 }; | 144 }; |
149 | 145 |
150 } // namespace webrtc | 146 } // namespace webrtc |
151 | 147 |
152 #endif // WEBRTC_VIDEO_DECODER_H_ | 148 #endif // WEBRTC_VIDEO_DECODER_H_ |
OLD | NEW |