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

Side by Side Diff: media/formats/webm/webm_stream_parser.cc

Issue 1874413003: Convert media/formats to std::unique_ptr (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 4 years, 8 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 2014 The Chromium Authors. All rights reserved. 1 // Copyright 2014 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/formats/webm/webm_stream_parser.h" 5 #include "media/formats/webm/webm_stream_parser.h"
6 6
7 #include <memory>
7 #include <string> 8 #include <string>
8 9
9 #include "base/callback.h" 10 #include "base/callback.h"
10 #include "base/callback_helpers.h" 11 #include "base/callback_helpers.h"
11 #include "base/logging.h" 12 #include "base/logging.h"
12 #include "base/strings/string_number_conversions.h" 13 #include "base/strings/string_number_conversions.h"
13 #include "media/base/media_track.h" 14 #include "media/base/media_track.h"
14 #include "media/base/media_tracks.h" 15 #include "media/base/media_tracks.h"
15 #include "media/base/timestamp_constants.h" 16 #include "media/base/timestamp_constants.h"
16 #include "media/formats/webm/webm_cluster_parser.h" 17 #include "media/formats/webm/webm_cluster_parser.h"
(...skipping 201 matching lines...) Expand 10 before | Expand all | Expand 10 after
218 } 219 }
219 220
220 const AudioDecoderConfig& audio_config = tracks_parser.audio_decoder_config(); 221 const AudioDecoderConfig& audio_config = tracks_parser.audio_decoder_config();
221 if (audio_config.is_encrypted()) 222 if (audio_config.is_encrypted())
222 OnEncryptedMediaInitData(tracks_parser.audio_encryption_key_id()); 223 OnEncryptedMediaInitData(tracks_parser.audio_encryption_key_id());
223 224
224 const VideoDecoderConfig& video_config = tracks_parser.video_decoder_config(); 225 const VideoDecoderConfig& video_config = tracks_parser.video_decoder_config();
225 if (video_config.is_encrypted()) 226 if (video_config.is_encrypted())
226 OnEncryptedMediaInitData(tracks_parser.video_encryption_key_id()); 227 OnEncryptedMediaInitData(tracks_parser.video_encryption_key_id());
227 228
228 scoped_ptr<MediaTracks> media_tracks = tracks_parser.media_tracks(); 229 std::unique_ptr<MediaTracks> media_tracks = tracks_parser.media_tracks();
229 CHECK(media_tracks.get()); 230 CHECK(media_tracks.get());
230 if (!config_cb_.Run(std::move(media_tracks), tracks_parser.text_tracks())) { 231 if (!config_cb_.Run(std::move(media_tracks), tracks_parser.text_tracks())) {
231 DVLOG(1) << "New config data isn't allowed."; 232 DVLOG(1) << "New config data isn't allowed.";
232 return -1; 233 return -1;
233 } 234 }
234 235
235 cluster_parser_.reset(new WebMClusterParser( 236 cluster_parser_.reset(new WebMClusterParser(
236 info_parser.timecode_scale(), tracks_parser.audio_track_num(), 237 info_parser.timecode_scale(), tracks_parser.audio_track_num(),
237 tracks_parser.GetAudioDefaultDuration(timecode_scale_in_us), 238 tracks_parser.GetAudioDefaultDuration(timecode_scale_in_us),
238 tracks_parser.video_track_num(), 239 tracks_parser.video_track_num(),
(...skipping 43 matching lines...) Expand 10 before | Expand all | Expand 10 after
282 283
283 return bytes_parsed; 284 return bytes_parsed;
284 } 285 }
285 286
286 void WebMStreamParser::OnEncryptedMediaInitData(const std::string& key_id) { 287 void WebMStreamParser::OnEncryptedMediaInitData(const std::string& key_id) {
287 std::vector<uint8_t> key_id_vector(key_id.begin(), key_id.end()); 288 std::vector<uint8_t> key_id_vector(key_id.begin(), key_id.end());
288 encrypted_media_init_data_cb_.Run(EmeInitDataType::WEBM, key_id_vector); 289 encrypted_media_init_data_cb_.Run(EmeInitDataType::WEBM, key_id_vector);
289 } 290 }
290 291
291 } // namespace media 292 } // namespace media
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698