diff options
author | acolwell@chromium.org <acolwell@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2012-01-10 23:26:07 +0000 |
---|---|---|
committer | acolwell@chromium.org <acolwell@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2012-01-10 23:26:07 +0000 |
commit | c851cd6fb95e44c4208e0db3cc86822ce8b09144 (patch) | |
tree | f3d1ca6a36fc2d73823f4692f0978ba82a03cb91 /media/base/video_decoder_config.cc | |
parent | 40c4cbb72decbe9b5c66c6753dddeb3b683a2562 (diff) | |
download | chromium_src-c851cd6fb95e44c4208e0db3cc86822ce8b09144.zip chromium_src-c851cd6fb95e44c4208e0db3cc86822ce8b09144.tar.gz chromium_src-c851cd6fb95e44c4208e0db3cc86822ce8b09144.tar.bz2 |
Move WebM specific code from ChunkDemuxer to WebMStreamParser.
BUG=108329
TEST=Existing ChunkDemuxer unittests
TBR=acolwell@chromium.org
Review URL: http://codereview.chromium.org/9170002
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@117113 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'media/base/video_decoder_config.cc')
-rw-r--r-- | media/base/video_decoder_config.cc | 38 |
1 files changed, 28 insertions, 10 deletions
diff --git a/media/base/video_decoder_config.cc b/media/base/video_decoder_config.cc index 07bf9a5..4966dfb 100644 --- a/media/base/video_decoder_config.cc +++ b/media/base/video_decoder_config.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2011 The Chromium Authors. All rights reserved. +// Copyright (c) 2012 The Chromium Authors. All rights reserved. // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. @@ -37,7 +37,7 @@ VideoDecoderConfig::VideoDecoderConfig(VideoCodec codec, Initialize(codec, profile, format, coded_size, visible_rect, frame_rate_numerator, frame_rate_denominator, aspect_ratio_numerator, aspect_ratio_denominator, - extra_data, extra_data_size); + extra_data, extra_data_size, true); } VideoDecoderConfig::~VideoDecoderConfig() {} @@ -74,16 +74,19 @@ void VideoDecoderConfig::Initialize(VideoCodec codec, int aspect_ratio_numerator, int aspect_ratio_denominator, const uint8* extra_data, - size_t extra_data_size) { + size_t extra_data_size, + bool record_stats) { CHECK((extra_data_size != 0) == (extra_data != NULL)); - UMA_HISTOGRAM_ENUMERATION("Media.VideoCodec", codec, kVideoCodecMax + 1); - UMA_HISTOGRAM_ENUMERATION("Media.VideoCodecProfile", profile, - VIDEO_CODEC_PROFILE_MAX + 1); - UMA_HISTOGRAM_COUNTS_10000("Media.VideoCodedWidth", coded_size.width()); - UmaHistogramAspectRatio("Media.VideoCodedAspectRatio", coded_size); - UMA_HISTOGRAM_COUNTS_10000("Media.VideoVisibleWidth", visible_rect.width()); - UmaHistogramAspectRatio("Media.VideoVisibleAspectRatio", visible_rect); + if (record_stats) { + UMA_HISTOGRAM_ENUMERATION("Media.VideoCodec", codec, kVideoCodecMax + 1); + UMA_HISTOGRAM_ENUMERATION("Media.VideoCodecProfile", profile, + VIDEO_CODEC_PROFILE_MAX + 1); + UMA_HISTOGRAM_COUNTS_10000("Media.VideoCodedWidth", coded_size.width()); + UmaHistogramAspectRatio("Media.VideoCodedAspectRatio", coded_size); + UMA_HISTOGRAM_COUNTS_10000("Media.VideoVisibleWidth", visible_rect.width()); + UmaHistogramAspectRatio("Media.VideoVisibleAspectRatio", visible_rect); + } codec_ = codec; profile_ = profile; @@ -120,6 +123,21 @@ void VideoDecoderConfig::Initialize(VideoCodec codec, natural_size_.SetSize(width & ~1, height); } +void VideoDecoderConfig::CopyFrom(const VideoDecoderConfig& video_config) { + Initialize(video_config.codec(), + video_config.profile(), + video_config.format(), + video_config.coded_size(), + video_config.visible_rect(), + video_config.frame_rate_numerator(), + video_config.frame_rate_denominator(), + video_config.aspect_ratio_numerator(), + video_config.aspect_ratio_denominator(), + video_config.extra_data(), + video_config.extra_data_size(), + false); +} + bool VideoDecoderConfig::IsValidConfig() const { return codec_ != kUnknownVideoCodec && format_ != VideoFrame::INVALID && |