diff options
Diffstat (limited to 'chromium/media/filters/ffmpeg_audio_decoder.h')
-rw-r--r-- | chromium/media/filters/ffmpeg_audio_decoder.h | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/chromium/media/filters/ffmpeg_audio_decoder.h b/chromium/media/filters/ffmpeg_audio_decoder.h index 44c98305f3d..296384796a2 100644 --- a/chromium/media/filters/ffmpeg_audio_decoder.h +++ b/chromium/media/filters/ffmpeg_audio_decoder.h @@ -8,6 +8,7 @@ #include <list> #include "base/callback.h" +#include "base/memory/scoped_ptr.h" #include "base/memory/weak_ptr.h" #include "base/time/time.h" #include "media/base/audio_decoder.h" @@ -25,6 +26,8 @@ namespace media { class AudioTimestampHelper; class DecoderBuffer; +class ScopedPtrAVFreeContext; +class ScopedPtrAVFreeFrame; // Helper structure for managing multiple decoded audio frames per packet. struct QueuedAudioBuffer { @@ -32,7 +35,6 @@ struct QueuedAudioBuffer { scoped_refptr<AudioBuffer> buffer; }; - class MEDIA_EXPORT FFmpegAudioDecoder : public AudioDecoder { public: explicit FFmpegAudioDecoder( @@ -72,7 +74,7 @@ class MEDIA_EXPORT FFmpegAudioDecoder : public AudioDecoder { DemuxerStream* demuxer_stream_; StatisticsCB statistics_cb_; - AVCodecContext* codec_context_; + scoped_ptr_malloc<AVCodecContext, ScopedPtrAVFreeContext> codec_context_; // Decoded audio format. int bytes_per_channel_; @@ -92,7 +94,7 @@ class MEDIA_EXPORT FFmpegAudioDecoder : public AudioDecoder { int output_frames_to_drop_; // Holds decoded audio. - AVFrame* av_frame_; + scoped_ptr_malloc<AVFrame, ScopedPtrAVFreeFrame> av_frame_; ReadCB read_cb_; |