Index: media/formats/mp4/mp4_stream_parser.cc |
diff --git a/media/formats/mp4/mp4_stream_parser.cc b/media/formats/mp4/mp4_stream_parser.cc |
index 7becdf941019ffca0378baf9e08a9702957f35cc..854bbf2f3411c0f8450e3ddb87d318dd9ae6f4d1 100644 |
--- a/media/formats/mp4/mp4_stream_parser.cc |
+++ b/media/formats/mp4/mp4_stream_parser.cc |
@@ -14,6 +14,7 @@ |
#include "base/time/time.h" |
#include "build/build_config.h" |
#include "media/base/audio_decoder_config.h" |
+#include "media/base/encryption_scheme.h" |
#include "media/base/stream_parser_buffer.h" |
#include "media/base/text_track_config.h" |
#include "media/base/timestamp_constants.h" |
@@ -301,9 +302,12 @@ bool MP4StreamParser::ParseMoov(BoxReader* reader) { |
is_audio_track_encrypted_ = entry.sinf.info.track_encryption.is_encrypted; |
DVLOG(1) << "is_audio_track_encrypted_: " << is_audio_track_encrypted_; |
+ EncryptionScheme encryption_scheme( |
+ is_audio_track_encrypted_ ? EncryptionScheme::kCipherModeAesCtr |
+ : EncryptionScheme::kCipherModeUnencrypted); |
audio_config.Initialize(codec, sample_format, channel_layout, |
- sample_per_second, extra_data, |
- is_audio_track_encrypted_, base::TimeDelta(), 0); |
+ sample_per_second, extra_data, encryption_scheme, |
+ base::TimeDelta(), 0); |
has_audio_ = true; |
audio_track_id_ = track->header.track_id; |
} |
@@ -339,12 +343,15 @@ bool MP4StreamParser::ParseMoov(BoxReader* reader) { |
is_video_track_encrypted_ = entry.sinf.info.track_encryption.is_encrypted; |
DVLOG(1) << "is_video_track_encrypted_: " << is_video_track_encrypted_; |
- video_config.Initialize( |
- entry.video_codec, entry.video_codec_profile, PIXEL_FORMAT_YV12, |
- COLOR_SPACE_HD_REC709, coded_size, visible_rect, natural_size, |
- // No decoder-specific buffer needed for AVC; |
- // SPS/PPS are embedded in the video stream |
- std::vector<uint8_t>(), is_video_track_encrypted_); |
+ EncryptionScheme encryption_scheme( |
+ is_video_track_encrypted_ ? EncryptionScheme::kCipherModeAesCtr |
+ : EncryptionScheme::kCipherModeUnencrypted); |
+ video_config.Initialize(entry.video_codec, entry.video_codec_profile, |
+ PIXEL_FORMAT_YV12, COLOR_SPACE_HD_REC709, |
+ coded_size, visible_rect, natural_size, |
+ // No decoder-specific buffer needed for AVC; |
+ // SPS/PPS are embedded in the video stream |
+ std::vector<uint8_t>(), encryption_scheme); |
xhwang
2016/03/03 22:33:01
ditto about EmptyExtraData()
dougsteed
2016/03/04 19:07:30
Done.
|
has_video_ = true; |
video_track_id_ = track->header.track_id; |
} |