| Index: media/filters/decrypting_demuxer_stream.cc
|
| diff --git a/media/filters/decrypting_demuxer_stream.cc b/media/filters/decrypting_demuxer_stream.cc
|
| index aa8498abb46bfa861d7bc4a5298863d7c895cd48..d86355526599596ba213f24ede481ada7b69d6d9 100644
|
| --- a/media/filters/decrypting_demuxer_stream.cc
|
| +++ b/media/filters/decrypting_demuxer_stream.cc
|
| @@ -373,28 +373,21 @@ void DecryptingDemuxerStream::InitializeDecoderConfig() {
|
| // The decoder selector or upstream demuxer make sure the stream is valid.
|
| DCHECK(IsStreamValid(demuxer_stream_));
|
|
|
| + // Since |this| is a decrypted version of |demuxer_stream_|, the decoder
|
| + // config of |this| should always be a decrypted version of |demuxer_stream_|
|
| + // configs.
|
| switch (demuxer_stream_->type()) {
|
| case AUDIO: {
|
| - AudioDecoderConfig input_audio_config =
|
| - demuxer_stream_->audio_decoder_config();
|
| - audio_config_.Initialize(
|
| - input_audio_config.codec(), input_audio_config.sample_format(),
|
| - input_audio_config.channel_layout(),
|
| - input_audio_config.samples_per_second(),
|
| - input_audio_config.extra_data(), Unencrypted(),
|
| - input_audio_config.seek_preroll(), input_audio_config.codec_delay());
|
| + audio_config_ = demuxer_stream_->audio_decoder_config();
|
| + if (audio_config_.is_encrypted())
|
| + audio_config_.SetIsEncrypted(false);
|
| break;
|
| }
|
|
|
| case VIDEO: {
|
| - VideoDecoderConfig input_video_config =
|
| - demuxer_stream_->video_decoder_config();
|
| - video_config_.Initialize(
|
| - input_video_config.codec(), input_video_config.profile(),
|
| - input_video_config.format(), input_video_config.color_space(),
|
| - input_video_config.coded_size(), input_video_config.visible_rect(),
|
| - input_video_config.natural_size(), input_video_config.extra_data(),
|
| - Unencrypted());
|
| + video_config_ = demuxer_stream_->video_decoder_config();
|
| + if (video_config_.is_encrypted())
|
| + video_config_.SetIsEncrypted(false);
|
| break;
|
| }
|
|
|
|
|