| Index: media/base/media_tracks.cc
 | 
| diff --git a/media/base/media_tracks.cc b/media/base/media_tracks.cc
 | 
| index 832e5a822b12a497f43d01aabc9ef898c55fb7d0..fc1f3df84b333cb37b7796a96030c83da918efed 100644
 | 
| --- a/media/base/media_tracks.cc
 | 
| +++ b/media/base/media_tracks.cc
 | 
| @@ -14,30 +14,43 @@ MediaTracks::MediaTracks() {}
 | 
|  
 | 
|  MediaTracks::~MediaTracks() {}
 | 
|  
 | 
| -void MediaTracks::AddAudioTrack(const AudioDecoderConfig& config,
 | 
| -                                const std::string& id,
 | 
| -                                const std::string& kind,
 | 
| -                                const std::string& label,
 | 
| -                                const std::string& language) {
 | 
| +const MediaTrack* MediaTracks::AddAudioTrack(const AudioDecoderConfig& config,
 | 
| +                                             const std::string& id,
 | 
| +                                             const std::string& kind,
 | 
| +                                             const std::string& label,
 | 
| +                                             const std::string& language) {
 | 
|    DCHECK(config.IsValidConfig());
 | 
|    CHECK(audio_configs_.find(id) == audio_configs_.end());
 | 
|    scoped_ptr<MediaTrack> track = make_scoped_ptr(
 | 
|        new MediaTrack(MediaTrack::Audio, id, kind, label, language));
 | 
|    tracks_.push_back(std::move(track));
 | 
|    audio_configs_[id] = config;
 | 
| +  return tracks_.back().get();
 | 
|  }
 | 
|  
 | 
| -void MediaTracks::AddVideoTrack(const VideoDecoderConfig& config,
 | 
| -                                const std::string& id,
 | 
| -                                const std::string& kind,
 | 
| -                                const std::string& label,
 | 
| -                                const std::string& language) {
 | 
| +const MediaTrack* MediaTracks::AddVideoTrack(const VideoDecoderConfig& config,
 | 
| +                                             const std::string& id,
 | 
| +                                             const std::string& kind,
 | 
| +                                             const std::string& label,
 | 
| +                                             const std::string& language) {
 | 
|    DCHECK(config.IsValidConfig());
 | 
|    CHECK(video_configs_.find(id) == video_configs_.end());
 | 
|    scoped_ptr<MediaTrack> track = make_scoped_ptr(
 | 
|        new MediaTrack(MediaTrack::Video, id, kind, label, language));
 | 
|    tracks_.push_back(std::move(track));
 | 
|    video_configs_[id] = config;
 | 
| +  return tracks_.back().get();
 | 
| +}
 | 
| +
 | 
| +void MediaTracks::set_track_to_demux_stream_map(
 | 
| +    const TrackToDemuxStreamMap& m) {
 | 
| +  DCHECK_EQ(m.size(), tracks_.size());
 | 
| +#if DCHECK_IS_ON()
 | 
| +  for (const auto& track : tracks_) {
 | 
| +    DCHECK(m.find(track.get()) != m.end());
 | 
| +  }
 | 
| +#endif
 | 
| +  track_to_demux_stream_map_ = m;
 | 
|  }
 | 
|  
 | 
|  const AudioDecoderConfig& MediaTracks::getAudioConfig(
 | 
| 
 |