| Index: webrtc/modules/video_coding/codec_database.h
|
| diff --git a/webrtc/modules/video_coding/codec_database.h b/webrtc/modules/video_coding/codec_database.h
|
| index 5f8656df8d82f2179a3fe5a752f98e3b6646b0f4..1317e2262c2d9ddec6483389b36b185bb413f071 100644
|
| --- a/webrtc/modules/video_coding/codec_database.h
|
| +++ b/webrtc/modules/video_coding/codec_database.h
|
| @@ -107,9 +107,9 @@
|
| const VCMEncodedFrame& frame,
|
| VCMDecodedFrameCallback* decoded_frame_callback);
|
|
|
| - // Returns the current decoder (i.e. the same value as was last returned from
|
| - // GetDecoder();
|
| - VCMGenericDecoder* GetCurrentDecoder();
|
| + // Deletes the memory of the decoder instance |decoder|. Used to delete
|
| + // deep copies returned by CreateDecoderCopy().
|
| + void ReleaseDecoder(VCMGenericDecoder* decoder) const;
|
|
|
| // Returns true if the currently active decoder prefer to decode frames late.
|
| // That means that frames must be decoded near the render times stamp.
|
| @@ -121,15 +121,17 @@
|
| typedef std::map<uint8_t, VCMDecoderMapItem*> DecoderMap;
|
| typedef std::map<uint8_t, VCMExtDecoderMapItem*> ExternalDecoderMap;
|
|
|
| - std::unique_ptr<VCMGenericDecoder> CreateAndInitDecoder(
|
| - const VCMEncodedFrame& frame,
|
| - VideoCodec* new_codec) const;
|
| + VCMGenericDecoder* CreateAndInitDecoder(const VCMEncodedFrame& frame,
|
| + VideoCodec* new_codec) const;
|
|
|
| // Determines whether a new codec has to be created or not.
|
| // Checks every setting apart from maxFramerate and startBitrate.
|
| bool RequiresEncoderReset(const VideoCodec& send_codec);
|
|
|
| void DeleteEncoder();
|
| +
|
| + // Create an internal Decoder given a codec type
|
| + VCMGenericDecoder* CreateDecoder(VideoCodecType type) const;
|
|
|
| const VCMDecoderMapItem* FindDecoderItem(uint8_t payload_type) const;
|
|
|
| @@ -147,7 +149,7 @@
|
| bool internal_source_;
|
| VCMEncodedFrameCallback* const encoded_frame_callback_;
|
| std::unique_ptr<VCMGenericEncoder> ptr_encoder_;
|
| - std::unique_ptr<VCMGenericDecoder> ptr_decoder_;
|
| + VCMGenericDecoder* ptr_decoder_;
|
| DecoderMap dec_map_;
|
| ExternalDecoderMap dec_external_map_;
|
| }; // VCMCodecDataBase
|
|
|