Index: media/filters/ffmpeg_audio_decoder.h |
diff --git a/media/filters/ffmpeg_audio_decoder.h b/media/filters/ffmpeg_audio_decoder.h |
index d143433daa6df38d56fbbce6734e2bc1f29d8e9b..42bce45109ab5a5b82d2002a0356dac5fdc6660e 100644 |
--- a/media/filters/ffmpeg_audio_decoder.h |
+++ b/media/filters/ffmpeg_audio_decoder.h |
@@ -45,6 +45,7 @@ class MEDIA_EXPORT FFmpegAudioDecoder : public AudioDecoder { |
virtual ChannelLayout channel_layout() OVERRIDE; |
virtual int samples_per_second() OVERRIDE; |
virtual void Reset(const base::Closure& closure) OVERRIDE; |
+ virtual void Stop(const base::Closure& closure) OVERRIDE; |
// Callback called from within FFmpeg to allocate a buffer based on |
// the dimensions of |codec_context|. See AVCodecContext.get_buffer2 |
@@ -52,6 +53,9 @@ class MEDIA_EXPORT FFmpegAudioDecoder : public AudioDecoder { |
int GetAudioBuffer(AVCodecContext* codec, AVFrame* frame, int flags); |
private: |
+ void DoStop(); |
+ void DoReset(); |
+ |
// Reads from the demuxer stream with corresponding callback method. |
void ReadFromDemuxerStream(); |
void BufferReady(DemuxerStream::Status status, |
@@ -92,6 +96,8 @@ class MEDIA_EXPORT FFmpegAudioDecoder : public AudioDecoder { |
scoped_ptr_malloc<AVFrame, ScopedPtrAVFreeFrame> av_frame_; |
ReadCB read_cb_; |
+ base::Closure stop_cb_; |
+ base::Closure reset_cb_; |
// Since multiple frames may be decoded from the same packet we need to queue |
// them up and hand them out as we receive Read() calls. |