diff options
Diffstat (limited to 'chromium/media/filters/ffmpeg_audio_decoder.cc')
-rw-r--r-- | chromium/media/filters/ffmpeg_audio_decoder.cc | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/chromium/media/filters/ffmpeg_audio_decoder.cc b/chromium/media/filters/ffmpeg_audio_decoder.cc index 53dec642269..1c0cc58ecd9 100644 --- a/chromium/media/filters/ffmpeg_audio_decoder.cc +++ b/chromium/media/filters/ffmpeg_audio_decoder.cc @@ -354,6 +354,13 @@ bool FFmpegAudioDecoder::ConfigureDecoder() { // Store initial values to guard against midstream configuration changes. channels_ = codec_context_->channels; + if (channels_ != ChannelLayoutToChannelCount(channel_layout_)) { + DLOG(ERROR) << "Audio configuration specified " + << ChannelLayoutToChannelCount(channel_layout_) + << " channels, but FFmpeg thinks the file contains " + << channels_ << " channels"; + return false; + } av_sample_format_ = codec_context_->sample_fmt; sample_format_ = AVSampleFormatToSampleFormat( static_cast<AVSampleFormat>(av_sample_format_)); |