Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(138)

Side by Side Diff: media/filters/decrypting_demuxer_stream.cc

Issue 1490613005: media config: expand is_encrypted to a struct. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: ddorwin comments Created 4 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "media/filters/decrypting_demuxer_stream.h" 5 #include "media/filters/decrypting_demuxer_stream.h"
6 6
7 #include "base/bind.h" 7 #include "base/bind.h"
8 #include "base/callback_helpers.h" 8 #include "base/callback_helpers.h"
9 #include "base/location.h" 9 #include "base/location.h"
10 #include "base/logging.h" 10 #include "base/logging.h"
11 #include "base/single_thread_task_runner.h" 11 #include "base/single_thread_task_runner.h"
12 #include "media/base/bind_to_current_loop.h" 12 #include "media/base/bind_to_current_loop.h"
13 #include "media/base/decoder_buffer.h" 13 #include "media/base/decoder_buffer.h"
14 #include "media/base/encryption_scheme.h"
14 #include "media/base/media_log.h" 15 #include "media/base/media_log.h"
15 16
16 namespace media { 17 namespace media {
17 18
18 static bool IsStreamValidAndEncrypted(DemuxerStream* stream) { 19 static bool IsStreamValidAndEncrypted(DemuxerStream* stream) {
19 return ((stream->type() == DemuxerStream::AUDIO && 20 return ((stream->type() == DemuxerStream::AUDIO &&
20 stream->audio_decoder_config().IsValidConfig() && 21 stream->audio_decoder_config().IsValidConfig() &&
21 stream->audio_decoder_config().is_encrypted()) || 22 stream->audio_decoder_config().is_encrypted()) ||
22 (stream->type() == DemuxerStream::VIDEO && 23 (stream->type() == DemuxerStream::VIDEO &&
23 stream->video_decoder_config().IsValidConfig() && 24 stream->video_decoder_config().IsValidConfig() &&
(...skipping 316 matching lines...) Expand 10 before | Expand all | Expand 10 after
340 341
341 void DecryptingDemuxerStream::InitializeDecoderConfig() { 342 void DecryptingDemuxerStream::InitializeDecoderConfig() {
342 // The decoder selector or upstream demuxer make sure the stream is valid and 343 // The decoder selector or upstream demuxer make sure the stream is valid and
343 // potentially encrypted. 344 // potentially encrypted.
344 DCHECK(IsStreamValidAndEncrypted(demuxer_stream_)); 345 DCHECK(IsStreamValidAndEncrypted(demuxer_stream_));
345 346
346 switch (demuxer_stream_->type()) { 347 switch (demuxer_stream_->type()) {
347 case AUDIO: { 348 case AUDIO: {
348 AudioDecoderConfig input_audio_config = 349 AudioDecoderConfig input_audio_config =
349 demuxer_stream_->audio_decoder_config(); 350 demuxer_stream_->audio_decoder_config();
350 audio_config_.Initialize(input_audio_config.codec(), 351 audio_config_.Initialize(
351 input_audio_config.sample_format(), 352 input_audio_config.codec(), input_audio_config.sample_format(),
352 input_audio_config.channel_layout(), 353 input_audio_config.channel_layout(),
353 input_audio_config.samples_per_second(), 354 input_audio_config.samples_per_second(),
354 input_audio_config.extra_data(), 355 input_audio_config.extra_data(), EncryptionScheme::Unencrypted(),
355 false, // Output audio is not encrypted. 356 input_audio_config.seek_preroll(), input_audio_config.codec_delay());
356 input_audio_config.seek_preroll(),
357 input_audio_config.codec_delay());
358 break; 357 break;
359 } 358 }
360 359
361 case VIDEO: { 360 case VIDEO: {
362 VideoDecoderConfig input_video_config = 361 VideoDecoderConfig input_video_config =
363 demuxer_stream_->video_decoder_config(); 362 demuxer_stream_->video_decoder_config();
364 video_config_.Initialize( 363 video_config_.Initialize(
365 input_video_config.codec(), input_video_config.profile(), 364 input_video_config.codec(), input_video_config.profile(),
366 input_video_config.format(), input_video_config.color_space(), 365 input_video_config.format(), input_video_config.color_space(),
367 input_video_config.coded_size(), input_video_config.visible_rect(), 366 input_video_config.coded_size(), input_video_config.visible_rect(),
368 input_video_config.natural_size(), input_video_config.extra_data(), 367 input_video_config.natural_size(), input_video_config.extra_data(),
369 false); // Output video is not encrypted. 368 EncryptionScheme::Unencrypted());
370 break; 369 break;
371 } 370 }
372 371
373 default: 372 default:
374 NOTREACHED(); 373 NOTREACHED();
375 return; 374 return;
376 } 375 }
377 } 376 }
378 377
379 } // namespace media 378 } // namespace media
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698