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

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

Issue 195973006: Allow StreamParsers to request automatic timestampOffset updates. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Add ADTS tests. Created 6 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 | Annotate | Revision Log
« no previous file with comments | « media/formats/mpeg/mpeg_audio_stream_parser_base.cc ('k') | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
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 <string> 7 #include <string>
8 8
9 #include "base/callback.h" 9 #include "base/callback.h"
10 #include "base/callback_helpers.h"
10 #include "base/logging.h" 11 #include "base/logging.h"
11 #include "media/formats/webm/webm_cluster_parser.h" 12 #include "media/formats/webm/webm_cluster_parser.h"
12 #include "media/formats/webm/webm_constants.h" 13 #include "media/formats/webm/webm_constants.h"
13 #include "media/formats/webm/webm_content_encodings.h" 14 #include "media/formats/webm/webm_content_encodings.h"
14 #include "media/formats/webm/webm_crypto_helpers.h" 15 #include "media/formats/webm/webm_crypto_helpers.h"
15 #include "media/formats/webm/webm_info_parser.h" 16 #include "media/formats/webm/webm_info_parser.h"
16 #include "media/formats/webm/webm_tracks_parser.h" 17 #include "media/formats/webm/webm_tracks_parser.h"
17 18
18 namespace media { 19 namespace media {
19 20
(...skipping 187 matching lines...) Expand 10 before | Expand all | Expand 10 after
207 tracks_parser.audio_track_num(), 208 tracks_parser.audio_track_num(),
208 tracks_parser.video_track_num(), 209 tracks_parser.video_track_num(),
209 tracks_parser.text_tracks(), 210 tracks_parser.text_tracks(),
210 tracks_parser.ignored_tracks(), 211 tracks_parser.ignored_tracks(),
211 tracks_parser.audio_encryption_key_id(), 212 tracks_parser.audio_encryption_key_id(),
212 tracks_parser.video_encryption_key_id(), 213 tracks_parser.video_encryption_key_id(),
213 log_cb_)); 214 log_cb_));
214 215
215 ChangeState(kParsingClusters); 216 ChangeState(kParsingClusters);
216 217
217 if (!init_cb_.is_null()) { 218 if (!init_cb_.is_null())
218 init_cb_.Run(true, duration); 219 base::ResetAndReturn(&init_cb_).Run(true, duration, false);
219 init_cb_.Reset();
220 }
221 220
222 return bytes_parsed; 221 return bytes_parsed;
223 } 222 }
224 223
225 int WebMStreamParser::ParseCluster(const uint8* data, int size) { 224 int WebMStreamParser::ParseCluster(const uint8* data, int size) {
226 if (!cluster_parser_) 225 if (!cluster_parser_)
227 return -1; 226 return -1;
228 227
229 int id; 228 int id;
230 int64 element_size; 229 int64 element_size;
(...skipping 50 matching lines...) Expand 10 before | Expand all | Expand 10 after
281 280
282 return bytes_parsed; 281 return bytes_parsed;
283 } 282 }
284 283
285 void WebMStreamParser::FireNeedKey(const std::string& key_id) { 284 void WebMStreamParser::FireNeedKey(const std::string& key_id) {
286 std::vector<uint8> key_id_vector(key_id.begin(), key_id.end()); 285 std::vector<uint8> key_id_vector(key_id.begin(), key_id.end());
287 need_key_cb_.Run(kWebMEncryptInitDataType, key_id_vector); 286 need_key_cb_.Run(kWebMEncryptInitDataType, key_id_vector);
288 } 287 }
289 288
290 } // namespace media 289 } // namespace media
OLDNEW
« no previous file with comments | « media/formats/mpeg/mpeg_audio_stream_parser_base.cc ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698