diff options
author | halliwell <halliwell@chromium.org> | 2015-12-15 15:01:34 -0800 |
---|---|---|
committer | Commit bot <commit-bot@chromium.org> | 2015-12-15 23:02:19 +0000 |
commit | be626ffba26425c38c3418c8d27f3bb43460d1e6 (patch) | |
tree | c6fee187490c55aa8545f6402f8c15978ac1d9c8 /chromecast | |
parent | b460625d15a1ea80272d125a63233d823d095a1d (diff) | |
download | chromium_src-be626ffba26425c38c3418c8d27f3bb43460d1e6.zip chromium_src-be626ffba26425c38c3418c8d27f3bb43460d1e6.tar.gz chromium_src-be626ffba26425c38c3418c8d27f3bb43460d1e6.tar.bz2 |
[Chromecast] Remove unused fields from CMA backend statistics
Separate Decoder::Statistics into audio and video-specific structs
so there are no unused fields.
BUG=internal b/25379144
Review URL: https://codereview.chromium.org/1528793003
Cr-Commit-Position: refs/heads/master@{#365370}
Diffstat (limited to 'chromecast')
-rw-r--r-- | chromecast/media/cma/pipeline/audio_pipeline_impl.cc | 6 | ||||
-rw-r--r-- | chromecast/media/cma/pipeline/video_pipeline_impl.cc | 10 | ||||
-rw-r--r-- | chromecast/public/media/media_pipeline_backend.h | 35 |
3 files changed, 31 insertions, 20 deletions
diff --git a/chromecast/media/cma/pipeline/audio_pipeline_impl.cc b/chromecast/media/cma/pipeline/audio_pipeline_impl.cc index 2f051eb..5edc017 100644 --- a/chromecast/media/cma/pipeline/audio_pipeline_impl.cc +++ b/chromecast/media/cma/pipeline/audio_pipeline_impl.cc @@ -73,11 +73,11 @@ void AudioPipelineImpl::UpdateStatistics() { if (client().statistics_cb.is_null()) return; - MediaPipelineBackend::Decoder::Statistics device_stats; - audio_decoder_->GetStatistics(&device_stats); + MediaPipelineBackend::AudioDecoder::Statistics audio_stats; + audio_decoder_->GetStatistics(&audio_stats); ::media::PipelineStatistics current_stats; - current_stats.audio_bytes_decoded = device_stats.decoded_bytes; + current_stats.audio_bytes_decoded = audio_stats.decoded_bytes; ::media::PipelineStatistics delta_stats; delta_stats.audio_bytes_decoded = diff --git a/chromecast/media/cma/pipeline/video_pipeline_impl.cc b/chromecast/media/cma/pipeline/video_pipeline_impl.cc index 61ec7dd..1888776 100644 --- a/chromecast/media/cma/pipeline/video_pipeline_impl.cc +++ b/chromecast/media/cma/pipeline/video_pipeline_impl.cc @@ -101,13 +101,13 @@ void VideoPipelineImpl::UpdateStatistics() { if (client().statistics_cb.is_null()) return; - MediaPipelineBackend::Decoder::Statistics device_stats; - video_decoder_->GetStatistics(&device_stats); + MediaPipelineBackend::VideoDecoder::Statistics video_stats; + video_decoder_->GetStatistics(&video_stats); ::media::PipelineStatistics current_stats; - current_stats.video_bytes_decoded = device_stats.decoded_bytes; - current_stats.video_frames_decoded = device_stats.decoded_samples; - current_stats.video_frames_dropped = device_stats.dropped_samples; + current_stats.video_bytes_decoded = video_stats.decoded_bytes; + current_stats.video_frames_decoded = video_stats.decoded_frames; + current_stats.video_frames_dropped = video_stats.dropped_frames; ::media::PipelineStatistics delta_stats; delta_stats.video_bytes_decoded = diff --git a/chromecast/public/media/media_pipeline_backend.h b/chromecast/public/media/media_pipeline_backend.h index febd2523..d3739de 100644 --- a/chromecast/public/media/media_pipeline_backend.h +++ b/chromecast/public/media/media_pipeline_backend.h @@ -73,14 +73,6 @@ class MediaPipelineBackend { virtual ~Delegate() {} }; - // Statistics (computed since pipeline last started playing). - // For video, a sample is defined as a frame. - struct Statistics { - uint64_t decoded_bytes; - uint64_t decoded_samples; - uint64_t dropped_samples; - }; - // Provides the delegate for this decoder. Called once before the backend // is initialized; is never called after the backend is initialized. virtual void SetDelegate(Delegate* delegate) = 0; @@ -104,10 +96,6 @@ class MediaPipelineBackend { // calling OnPushBufferComplete() for kBufferPending case). virtual BufferStatus PushBuffer(CastDecoderBuffer* buffer) = 0; - // Returns the playback statistics since this decoder's creation. Only - // called when playing or paused. - virtual void GetStatistics(Statistics* statistics) = 0; - protected: virtual ~Decoder() {} }; @@ -128,6 +116,13 @@ class MediaPipelineBackend { int64_t timestamp_microseconds; }; + // Statistics (computed since last call to backend Start). + struct Statistics { + // Reported as webkitAudioBytesDecoded. Counts number of source bytes + // decoded (not decoder output bytes). + uint64_t decoded_bytes; + }; + // Provides the audio configuration. Called once before the backend is // initialized, and again any time the configuration changes (in any state). // Note that SetConfig() may be called before SetDelegate() is called. @@ -146,18 +141,34 @@ class MediaPipelineBackend { // Only called when the backend is playing. virtual RenderingDelay GetRenderingDelay() = 0; + // Returns the playback statistics since last call to backend Start. Only + // called when playing or paused. + virtual void GetStatistics(Statistics* statistics) = 0; + protected: ~AudioDecoder() override {} }; class VideoDecoder : public Decoder { public: + // Statistics (computed since last call to backend Start). + struct Statistics { + // Counts number of source bytes decoded (not decoder output). + uint64_t decoded_bytes; // Reported as webkitVideoBytesDecoded. + uint64_t decoded_frames; // Reported as webkitDecodedFrames. + uint64_t dropped_frames; // Reported as webkitDroppedFrames. + }; + // Provides the video configuration. Called once before the backend is // initialized, and again any time the configuration changes (in any state). // Note that SetConfig() may be called before SetDelegate() is called. // Returns true if the configuration is a supported configuration. virtual bool SetConfig(const VideoConfig& config) = 0; + // Returns the playback statistics since last call to backend Start. Only + // called when playing or paused. + virtual void GetStatistics(Statistics* statistics) = 0; + protected: ~VideoDecoder() override {} }; |