Index: media/formats/webm/webm_tracks_parser.cc |
diff --git a/media/formats/webm/webm_tracks_parser.cc b/media/formats/webm/webm_tracks_parser.cc |
index 464a77ff1e66eab49ff8a43358508f76e509bad9..747317c4e0ffef246ffcdde17c52cf446bc7f1e3 100644 |
--- a/media/formats/webm/webm_tracks_parser.cc |
+++ b/media/formats/webm/webm_tracks_parser.cc |
@@ -77,6 +77,7 @@ int WebMTracksParser::Parse(const uint8_t* buf, int size) { |
video_decoder_config_ = VideoDecoderConfig(); |
text_tracks_.clear(); |
ignored_tracks_.clear(); |
+ media_tracks_.reset(new MediaTracks()); |
WebMListParser parser(kWebMIdTracks, this); |
int result = parser.Parse(buf, size); |
@@ -210,6 +211,9 @@ bool WebMTracksParser::OnListEnd(int id) { |
!audio_encryption_key_id_.empty(), &audio_decoder_config_)) { |
return false; |
} |
+ media_tracks_->AddAudioTrack(audio_decoder_config_, |
+ base::Uint64ToString(track_num_), "main", |
+ track_name_, track_language_); |
} else { |
MEDIA_LOG(DEBUG, media_log_) << "Ignoring audio track " << track_num_; |
ignored_tracks_.insert(track_num_); |
@@ -232,6 +236,9 @@ bool WebMTracksParser::OnListEnd(int id) { |
&video_decoder_config_)) { |
return false; |
} |
+ media_tracks_->AddVideoTrack(video_decoder_config_, |
+ base::Uint64ToString(track_num_), "main", |
+ track_name_, track_language_); |
} else { |
MEDIA_LOG(DEBUG, media_log_) << "Ignoring video track " << track_num_; |
ignored_tracks_.insert(track_num_); |