diff options
Diffstat (limited to 'chromium/media/base/video_decoder_config.cc')
-rw-r--r-- | chromium/media/base/video_decoder_config.cc | 30 |
1 files changed, 9 insertions, 21 deletions
diff --git a/chromium/media/base/video_decoder_config.cc b/chromium/media/base/video_decoder_config.cc index f867ad19d62..84058e496db 100644 --- a/chromium/media/base/video_decoder_config.cc +++ b/chromium/media/base/video_decoder_config.cc @@ -4,6 +4,8 @@ #include "media/base/video_decoder_config.h" +#include <vector> + #include "base/logging.h" #include "media/base/video_frame.h" @@ -34,13 +36,11 @@ VideoCodec VideoCodecProfileToVideoCodec(VideoCodecProfile profile) { return kUnknownVideoCodec; } - VideoDecoderConfig::VideoDecoderConfig() : codec_(kUnknownVideoCodec), profile_(VIDEO_CODEC_PROFILE_UNKNOWN), format_(PIXEL_FORMAT_UNKNOWN), - is_encrypted_(false) { -} + is_encrypted_(false) {} VideoDecoderConfig::VideoDecoderConfig(VideoCodec codec, VideoCodecProfile profile, @@ -49,11 +49,10 @@ VideoDecoderConfig::VideoDecoderConfig(VideoCodec codec, const gfx::Size& coded_size, const gfx::Rect& visible_rect, const gfx::Size& natural_size, - const uint8* extra_data, - size_t extra_data_size, + const std::vector<uint8_t>& extra_data, bool is_encrypted) { Initialize(codec, profile, format, color_space, coded_size, visible_rect, - natural_size, extra_data, extra_data_size, is_encrypted); + natural_size, extra_data, is_encrypted); } VideoDecoderConfig::~VideoDecoderConfig() {} @@ -65,11 +64,8 @@ void VideoDecoderConfig::Initialize(VideoCodec codec, const gfx::Size& coded_size, const gfx::Rect& visible_rect, const gfx::Size& natural_size, - const uint8* extra_data, - size_t extra_data_size, + const std::vector<uint8_t>& extra_data, bool is_encrypted) { - CHECK((extra_data_size != 0) == (extra_data != NULL)); - codec_ = codec; profile_ = profile; format_ = format; @@ -77,7 +73,7 @@ void VideoDecoderConfig::Initialize(VideoCodec codec, coded_size_ = coded_size; visible_rect_ = visible_rect; natural_size_ = natural_size; - extra_data_.assign(extra_data, extra_data + extra_data_size); + extra_data_ = extra_data; is_encrypted_ = is_encrypted; } @@ -96,9 +92,7 @@ bool VideoDecoderConfig::Matches(const VideoDecoderConfig& config) const { (coded_size() == config.coded_size()) && (visible_rect() == config.visible_rect()) && (natural_size() == config.natural_size()) && - (extra_data_size() == config.extra_data_size()) && - (!extra_data() || !memcmp(extra_data(), config.extra_data(), - extra_data_size())) && + (extra_data() == config.extra_data()) && (is_encrypted() == config.is_encrypted())); } @@ -115,7 +109,7 @@ std::string VideoDecoderConfig::AsHumanReadableString() const { << "," << visible_rect().height() << "]" << " natural size: [" << natural_size().width() << "," << natural_size().height() << "]" - << " has extra data? " << (extra_data() ? "true" : "false") + << " has extra data? " << (extra_data().empty() ? "false" : "true") << " encrypted? " << (is_encrypted() ? "true" : "false"); return s.str(); } @@ -146,10 +140,4 @@ std::string VideoDecoderConfig::GetHumanReadableCodecName() const { return ""; } -const uint8* VideoDecoderConfig::extra_data() const { - if (extra_data_.empty()) - return NULL; - return &extra_data_[0]; -} - } // namespace media |