| Index: media/base/video_decoder_config.cc
|
| diff --git a/media/base/video_decoder_config.cc b/media/base/video_decoder_config.cc
|
| index ee334d3bd3eed24abfe8845719589c9f84928846..07bf9a56e878dcf533a9e33a4150242038dac23d 100644
|
| --- a/media/base/video_decoder_config.cc
|
| +++ b/media/base/video_decoder_config.cc
|
| @@ -14,6 +14,7 @@ namespace media {
|
|
|
| VideoDecoderConfig::VideoDecoderConfig()
|
| : codec_(kUnknownVideoCodec),
|
| + profile_(VIDEO_CODEC_PROFILE_UNKNOWN),
|
| format_(VideoFrame::INVALID),
|
| frame_rate_numerator_(0),
|
| frame_rate_denominator_(0),
|
| @@ -23,6 +24,7 @@ VideoDecoderConfig::VideoDecoderConfig()
|
| }
|
|
|
| VideoDecoderConfig::VideoDecoderConfig(VideoCodec codec,
|
| + VideoCodecProfile profile,
|
| VideoFrame::Format format,
|
| const gfx::Size& coded_size,
|
| const gfx::Rect& visible_rect,
|
| @@ -32,7 +34,7 @@ VideoDecoderConfig::VideoDecoderConfig(VideoCodec codec,
|
| int aspect_ratio_denominator,
|
| const uint8* extra_data,
|
| size_t extra_data_size) {
|
| - Initialize(codec, format, coded_size, visible_rect,
|
| + 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);
|
| @@ -62,7 +64,9 @@ static void UmaHistogramAspectRatio(const char* name, const T& size) {
|
| kCommonAspectRatios100, arraysize(kCommonAspectRatios100)));
|
| }
|
|
|
| -void VideoDecoderConfig::Initialize(VideoCodec codec, VideoFrame::Format format,
|
| +void VideoDecoderConfig::Initialize(VideoCodec codec,
|
| + VideoCodecProfile profile,
|
| + VideoFrame::Format format,
|
| const gfx::Size& coded_size,
|
| const gfx::Rect& visible_rect,
|
| int frame_rate_numerator,
|
| @@ -74,12 +78,15 @@ void VideoDecoderConfig::Initialize(VideoCodec codec, VideoFrame::Format format,
|
| 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);
|
|
|
| codec_ = codec;
|
| + profile_ = profile;
|
| format_ = format;
|
| coded_size_ = coded_size;
|
| visible_rect_ = visible_rect;
|
| @@ -125,10 +132,33 @@ bool VideoDecoderConfig::IsValidConfig() const {
|
| natural_size_.GetArea() <= limits::kMaxCanvas;
|
| }
|
|
|
| +std::string VideoDecoderConfig::AsHumanReadableString() const {
|
| + std::ostringstream s;
|
| + s << "codec: " << codec()
|
| + << " format: " << format()
|
| + << " coded size: [" << coded_size().width()
|
| + << "," << coded_size().height() << "]"
|
| + << " visible rect: [" << visible_rect().x()
|
| + << "," << visible_rect().y()
|
| + << "," << visible_rect().width()
|
| + << "," << visible_rect().height() << "]"
|
| + << " natural size: [" << natural_size().width()
|
| + << "," << natural_size().height() << "]"
|
| + << " frame rate: " << frame_rate_numerator()
|
| + << "/" << frame_rate_denominator()
|
| + << " aspect ratio: " << aspect_ratio_numerator()
|
| + << "/" << aspect_ratio_denominator();
|
| + return s.str();
|
| +}
|
| +
|
| VideoCodec VideoDecoderConfig::codec() const {
|
| return codec_;
|
| }
|
|
|
| +VideoCodecProfile VideoDecoderConfig::profile() const {
|
| + return profile_;
|
| +}
|
| +
|
| VideoFrame::Format VideoDecoderConfig::format() const {
|
| return format_;
|
| }
|
|
|