| Index: media/renderers/video_renderer_impl.cc
|
| diff --git a/media/renderers/video_renderer_impl.cc b/media/renderers/video_renderer_impl.cc
|
| index 683005303287b0bddd3b98ac80f76eade77a13bf..bab8261c90d53d59a9eed2273e63e1d38ba4520b 100644
|
| --- a/media/renderers/video_renderer_impl.cc
|
| +++ b/media/renderers/video_renderer_impl.cc
|
| @@ -51,6 +51,7 @@ VideoRendererImpl::VideoRendererImpl(
|
| pending_read_(false),
|
| drop_frames_(drop_frames),
|
| buffering_state_(BUFFERING_HAVE_NOTHING),
|
| + bytes_decoded_(0),
|
| frames_decoded_(0),
|
| frames_dropped_(0),
|
| tick_clock_(new base::DefaultTickClock()),
|
| @@ -157,8 +158,8 @@ void VideoRendererImpl::Initialize(
|
| video_frame_stream_->Initialize(
|
| stream, base::Bind(&VideoRendererImpl::OnVideoFrameStreamInitialized,
|
| weak_factory_.GetWeakPtr()),
|
| - cdm_context, base::Bind(&VideoRendererImpl::OnStatisticsUpdate,
|
| - weak_factory_.GetWeakPtr()),
|
| + cdm_context,
|
| + base::Bind(&VideoRendererImpl::BytesDecoded, weak_factory_.GetWeakPtr()),
|
| base::Bind(&VideoRendererImpl::OnWaitingForDecryptionKey,
|
| weak_factory_.GetWeakPtr()));
|
| }
|
| @@ -317,6 +318,12 @@ void VideoRendererImpl::OnTimeStateChanged(bool time_progressing) {
|
| }
|
| }
|
|
|
| +void VideoRendererImpl::BytesDecoded(uint64_t bytes) {
|
| + DCHECK(task_runner_->BelongsToCurrentThread());
|
| + base::AutoLock auto_lock(lock_);
|
| + bytes_decoded_ += bytes;
|
| +}
|
| +
|
| void VideoRendererImpl::FrameReadyForCopyingToGpuMemoryBuffers(
|
| VideoFrameStream::Status status,
|
| const scoped_refptr<VideoFrame>& frame) {
|
| @@ -533,6 +540,7 @@ void VideoRendererImpl::UpdateStats_Locked() {
|
|
|
| if (frames_decoded_ || frames_dropped_) {
|
| PipelineStatistics statistics;
|
| + statistics.video_bytes_decoded = bytes_decoded_;
|
| statistics.video_frames_decoded = frames_decoded_;
|
| statistics.video_frames_dropped = frames_dropped_;
|
|
|
| @@ -542,6 +550,7 @@ void VideoRendererImpl::UpdateStats_Locked() {
|
| task_runner_->PostTask(FROM_HERE,
|
| base::Bind(&VideoRendererImpl::OnStatisticsUpdate,
|
| weak_factory_.GetWeakPtr(), statistics));
|
| + bytes_decoded_ = 0;
|
| frames_decoded_ = 0;
|
| frames_dropped_ = 0;
|
| last_video_memory_usage_ = memory_usage;
|
|
|