Index: media/filters/ffmpeg_audio_decoder.h |
diff --git a/media/filters/ffmpeg_audio_decoder.h b/media/filters/ffmpeg_audio_decoder.h |
index 214a2245e4b8696e2f3e52da7f8b8701584a00c5..8ac9d70abf214b6f6cae9b5480681db0d4f7b986 100644 |
--- a/media/filters/ffmpeg_audio_decoder.h |
+++ b/media/filters/ffmpeg_audio_decoder.h |
@@ -11,6 +11,7 @@ |
#include "base/callback.h" |
#include "base/macros.h" |
#include "base/time/time.h" |
+#include "media/base/audio_buffer.h" |
#include "media/base/audio_decoder.h" |
#include "media/base/demuxer_stream.h" |
#include "media/base/media_log.h" |
@@ -46,6 +47,11 @@ class MEDIA_EXPORT FFmpegAudioDecoder : public AudioDecoder { |
const DecodeCB& decode_cb) override; |
void Reset(const base::Closure& closure) override; |
+ // Callback called from within FFmpeg to allocate a buffer based on the |
+ // properties of |codec_context| and |frame|. See AVCodecContext.get_buffer2 |
+ // documentation inside FFmpeg. |
+ int GetAudioBuffer(struct AVCodecContext* s, AVFrame* frame, int flags); |
+ |
private: |
// There are four states the decoder can be in: |
// |
@@ -111,6 +117,8 @@ class MEDIA_EXPORT FFmpegAudioDecoder : public AudioDecoder { |
scoped_refptr<MediaLog> media_log_; |
+ scoped_refptr<AudioBufferMemoryPool> pool_; |
+ |
DISALLOW_IMPLICIT_CONSTRUCTORS(FFmpegAudioDecoder); |
}; |