diff options
Diffstat (limited to 'chromium/media/base/audio_decoder_config.cc')
-rw-r--r-- | chromium/media/base/audio_decoder_config.cc | 36 |
1 files changed, 26 insertions, 10 deletions
diff --git a/chromium/media/base/audio_decoder_config.cc b/chromium/media/base/audio_decoder_config.cc index dfaf94a2682..06a1643f0a1 100644 --- a/chromium/media/base/audio_decoder_config.cc +++ b/chromium/media/base/audio_decoder_config.cc @@ -20,7 +20,8 @@ AudioDecoderConfig::AudioDecoderConfig() channel_layout_(CHANNEL_LAYOUT_UNSUPPORTED), samples_per_second_(0), bytes_per_frame_(0), - is_encrypted_(false) { + is_encrypted_(false), + codec_delay_(0) { } AudioDecoderConfig::AudioDecoderConfig(AudioCodec codec, @@ -32,7 +33,7 @@ AudioDecoderConfig::AudioDecoderConfig(AudioCodec codec, bool is_encrypted) { Initialize(codec, sample_format, channel_layout, samples_per_second, extra_data, extra_data_size, is_encrypted, true, - base::TimeDelta(), base::TimeDelta()); + base::TimeDelta(), 0); } void AudioDecoderConfig::Initialize(AudioCodec codec, @@ -44,19 +45,19 @@ void AudioDecoderConfig::Initialize(AudioCodec codec, bool is_encrypted, bool record_stats, base::TimeDelta seek_preroll, - base::TimeDelta codec_delay) { + int codec_delay) { CHECK((extra_data_size != 0) == (extra_data != NULL)); if (record_stats) { - UMA_HISTOGRAM_ENUMERATION("Media.AudioCodec", codec, kAudioCodecMax); + UMA_HISTOGRAM_ENUMERATION("Media.AudioCodec", codec, kAudioCodecMax + 1); UMA_HISTOGRAM_ENUMERATION("Media.AudioSampleFormat", sample_format, - kSampleFormatMax); + kSampleFormatMax + 1); UMA_HISTOGRAM_ENUMERATION("Media.AudioChannelLayout", channel_layout, - CHANNEL_LAYOUT_MAX); - AudioSampleRate asr = media::AsAudioSampleRate(samples_per_second); - if (asr != kUnexpectedAudioSampleRate) { + CHANNEL_LAYOUT_MAX + 1); + AudioSampleRate asr; + if (ToAudioSampleRate(samples_per_second, &asr)) { UMA_HISTOGRAM_ENUMERATION("Media.AudioSamplesPerSecond", asr, - kUnexpectedAudioSampleRate); + kAudioSampleRateMax + 1); } else { UMA_HISTOGRAM_COUNTS( "Media.AudioSamplesPerSecondUnexpected", samples_per_second); @@ -88,7 +89,7 @@ bool AudioDecoderConfig::IsValidConfig() const { samples_per_second_ <= limits::kMaxSampleRate && sample_format_ != kUnknownSampleFormat && seek_preroll_ >= base::TimeDelta() && - codec_delay_ >= base::TimeDelta(); + codec_delay_ >= 0; } bool AudioDecoderConfig::Matches(const AudioDecoderConfig& config) const { @@ -105,4 +106,19 @@ bool AudioDecoderConfig::Matches(const AudioDecoderConfig& config) const { (codec_delay() == config.codec_delay())); } +std::string AudioDecoderConfig::AsHumanReadableString() const { + std::ostringstream s; + s << "codec: " << codec() + << " bytes_per_channel: " << bytes_per_channel() + << " channel_layout: " << channel_layout() + << " samples_per_second: " << samples_per_second() + << " sample_format: " << sample_format() + << " bytes_per_frame: " << bytes_per_frame() + << " seek_preroll: " << seek_preroll().InMilliseconds() << "ms" + << " codec_delay: " << codec_delay() + << " has extra data? " << (extra_data() ? "true" : "false") + << " encrypted? " << (is_encrypted() ? "true" : "false"); + return s.str(); +} + } // namespace media |