| Index: media/renderers/audio_renderer_impl.cc
|
| diff --git a/media/renderers/audio_renderer_impl.cc b/media/renderers/audio_renderer_impl.cc
|
| index 2d9879b64b814f8fa6c91dbdec925ded880d69a9..deb8dfe2111ce7f7f670d0907e9e813d45600370 100644
|
| --- a/media/renderers/audio_renderer_impl.cc
|
| +++ b/media/renderers/audio_renderer_impl.cc
|
| @@ -57,6 +57,7 @@ AudioRendererImpl::AudioRendererImpl(
|
| hardware_config_(hardware_config),
|
| media_log_(media_log),
|
| tick_clock_(new base::DefaultTickClock()),
|
| + last_audio_memory_usage_(0),
|
| playback_rate_(0.0),
|
| state_(kUninitialized),
|
| buffering_state_(BUFFERING_HAVE_NOTHING),
|
| @@ -334,6 +335,7 @@ void AudioRendererImpl::Initialize(
|
| buffering_state_cb_ = buffering_state_cb;
|
| ended_cb_ = ended_cb;
|
| error_cb_ = error_cb;
|
| + statistics_cb_ = statistics_cb;
|
|
|
| const AudioParameters& hw_params = hardware_config_.GetOutputConfig();
|
| expecting_config_changes_ = stream->SupportsConfigChanges();
|
| @@ -514,6 +516,12 @@ bool AudioRendererImpl::HandleSplicerBuffer_Locked(
|
| if (first_packet_timestamp_ == kNoTimestamp())
|
| first_packet_timestamp_ = buffer->timestamp();
|
|
|
| + const size_t memory_usage = algorithm_->GetMemoryUsage();
|
| + PipelineStatistics stats;
|
| + stats.audio_memory_usage = memory_usage - last_audio_memory_usage_;
|
| + last_audio_memory_usage_ = memory_usage;
|
| + task_runner_->PostTask(FROM_HERE, base::Bind(statistics_cb_, stats));
|
| +
|
| switch (state_) {
|
| case kUninitialized:
|
| case kInitializing:
|
|
|