Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(486)

Unified Diff: media/filters/android/media_codec_audio_decoder.cc

Issue 2788483003: Introduce AudioBufferMemoryPool to avoid thrashing on audio buffers. (Closed)
Patch Set: Add class comments. Created 3 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « media/filters/android/media_codec_audio_decoder.h ('k') | media/filters/ffmpeg_audio_decoder.h » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: media/filters/android/media_codec_audio_decoder.cc
diff --git a/media/filters/android/media_codec_audio_decoder.cc b/media/filters/android/media_codec_audio_decoder.cc
index be3d2c97b64bb541078c9111d97d81b4f51daec9..6c443285b4e17d6d360894fe61370aa511e81fce 100644
--- a/media/filters/android/media_codec_audio_decoder.cc
+++ b/media/filters/android/media_codec_audio_decoder.cc
@@ -10,7 +10,6 @@
#include "base/logging.h"
#include "base/threading/thread_task_runner_handle.h"
#include "media/base/android/media_codec_bridge_impl.h"
-#include "media/base/audio_buffer.h"
#include "media/base/audio_timestamp_helper.h"
#include "media/base/bind_to_current_loop.h"
#include "media/base/timestamp_constants.h"
@@ -26,6 +25,7 @@ MediaCodecAudioDecoder::MediaCodecAudioDecoder(
sample_rate_(0),
media_drm_bridge_cdm_context_(nullptr),
cdm_registration_id_(0),
+ pool_(new AudioBufferMemoryPool()),
weak_factory_(this) {
DVLOG(1) << __func__;
}
@@ -363,9 +363,9 @@ bool MediaCodecAudioDecoder::OnDecodedFrame(
const size_t frame_count = out.size / bytes_per_frame;
// Create AudioOutput buffer based on current parameters.
- scoped_refptr<AudioBuffer> audio_buffer =
- AudioBuffer::CreateBuffer(kSampleFormatS16, channel_layout_,
- channel_count_, sample_rate_, frame_count);
+ scoped_refptr<AudioBuffer> audio_buffer = AudioBuffer::CreateBuffer(
+ kSampleFormatS16, channel_layout_, channel_count_, sample_rate_,
+ frame_count, pool_);
// Copy data into AudioBuffer.
CHECK_LE(out.size, audio_buffer->data_size());
« no previous file with comments | « media/filters/android/media_codec_audio_decoder.h ('k') | media/filters/ffmpeg_audio_decoder.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698