| 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 66 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 77 * inputVideoBuffer reference to encoded video frame | 77 * inputVideoBuffer reference to encoded video frame |
| 78 */ | 78 */ |
| 79 int32_t Decode(const VCMEncodedFrame& inputFrame, int64_t nowMs); | 79 int32_t Decode(const VCMEncodedFrame& inputFrame, int64_t nowMs); |
| 80 | 80 |
| 81 /** | 81 /** |
| 82 * Free the decoder memory | 82 * Free the decoder memory |
| 83 */ | 83 */ |
| 84 int32_t Release(); | 84 int32_t Release(); |
| 85 | 85 |
| 86 /** | 86 /** |
| 87 * Reset the decoder state, prepare for a new call | |
| 88 */ | |
| 89 int32_t Reset(); | |
| 90 | |
| 91 /** | |
| 92 * Set decode callback. Deregistering while decoding is illegal. | 87 * Set decode callback. Deregistering while decoding is illegal. |
| 93 */ | 88 */ |
| 94 int32_t RegisterDecodeCompleteCallback(VCMDecodedFrameCallback* callback); | 89 int32_t RegisterDecodeCompleteCallback(VCMDecodedFrameCallback* callback); |
| 95 | 90 |
| 96 bool External() const; | 91 bool External() const; |
| 97 bool PrefersLateDecoding() const; | 92 bool PrefersLateDecoding() const; |
| 98 | 93 |
| 99 private: | 94 private: |
| 100 VCMDecodedFrameCallback* _callback; | 95 VCMDecodedFrameCallback* _callback; |
| 101 VCMFrameInformation _frameInfos[kDecoderFrameMemoryLength]; | 96 VCMFrameInformation _frameInfos[kDecoderFrameMemoryLength]; |
| 102 uint32_t _nextFrameInfoIdx; | 97 uint32_t _nextFrameInfoIdx; |
| 103 VideoDecoder* const _decoder; | 98 VideoDecoder* const _decoder; |
| 104 VideoCodecType _codecType; | 99 VideoCodecType _codecType; |
| 105 bool _isExternal; | 100 bool _isExternal; |
| 106 bool _keyFrameDecoded; | 101 bool _keyFrameDecoded; |
| 107 }; | 102 }; |
| 108 | 103 |
| 109 } // namespace webrtc | 104 } // namespace webrtc |
| 110 | 105 |
| 111 #endif // WEBRTC_MODULES_VIDEO_CODING_GENERIC_DECODER_H_ | 106 #endif // WEBRTC_MODULES_VIDEO_CODING_GENERIC_DECODER_H_ |
| OLD | NEW |