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

Side by Side Diff: content/renderer/media/webmediaplayer_impl.h

Issue 23702007: Render inband text tracks in the media pipeline (Closed) Base URL: http://git.chromium.org/chromium/src.git@master
Patch Set: incorporate aaron's comments (10/12) Created 7 years, 2 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 2013 The Chromium Authors. All rights reserved. 1 // Copyright 2013 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 // Delegate calls from WebCore::MediaPlayerPrivate to Chrome's video player. 5 // Delegate calls from WebCore::MediaPlayerPrivate to Chrome's video player.
6 // It contains Pipeline which is the actual media player pipeline, it glues 6 // It contains Pipeline which is the actual media player pipeline, it glues
7 // the media player pipeline, data source, audio renderer and renderer. 7 // the media player pipeline, data source, audio renderer and renderer.
8 // Pipeline would creates multiple threads and access some public methods 8 // Pipeline would creates multiple threads and access some public methods
9 // of this class, so we need to be extra careful about concurrent access of 9 // of this class, so we need to be extra careful about concurrent access of
10 // methods and members. 10 // methods and members.
(...skipping 37 matching lines...) Expand 10 before | Expand all | Expand 10 after
48 namespace WebKit { 48 namespace WebKit {
49 class WebFrame; 49 class WebFrame;
50 } 50 }
51 51
52 namespace base { 52 namespace base {
53 class MessageLoopProxy; 53 class MessageLoopProxy;
54 } 54 }
55 55
56 namespace media { 56 namespace media {
57 class ChunkDemuxer; 57 class ChunkDemuxer;
58 class FFmpegDemuxer; 58 class DemuxerStream;
acolwell GONE FROM CHROMIUM 2013/10/14 20:42:24 nit: not needed.
Matthew Heaney (Chromium) 2013/10/17 05:46:44 Done.
59 class GpuVideoAcceleratorFactories; 59 class GpuVideoAcceleratorFactories;
60 class MediaLog; 60 class MediaLog;
61 } 61 }
62 62
63 namespace webkit { 63 namespace webkit {
64 class WebLayerImpl; 64 class WebLayerImpl;
65 } 65 }
66 66
67 namespace content { 67 namespace content {
68 class BufferedDataSource; 68 class BufferedDataSource;
(...skipping 120 matching lines...) Expand 10 before | Expand all | Expand 10 after
189 void OnDemuxerOpened(); 189 void OnDemuxerOpened();
190 void OnKeyAdded(const std::string& session_id); 190 void OnKeyAdded(const std::string& session_id);
191 void OnKeyError(const std::string& session_id, 191 void OnKeyError(const std::string& session_id,
192 media::MediaKeys::KeyError error_code, 192 media::MediaKeys::KeyError error_code,
193 int system_code); 193 int system_code);
194 void OnKeyMessage(const std::string& session_id, 194 void OnKeyMessage(const std::string& session_id,
195 const std::vector<uint8>& message, 195 const std::vector<uint8>& message,
196 const std::string& default_url); 196 const std::string& default_url);
197 void OnNeedKey(const std::string& type, 197 void OnNeedKey(const std::string& type,
198 const std::vector<uint8>& init_data); 198 const std::vector<uint8>& init_data);
199 scoped_ptr<media::TextTrack> OnTextTrack(media::TextKind kind, 199 void OnAddTextTrack(media::TextKind kind,
200 const std::string& label, 200 const std::string& label,
201 const std::string& language); 201 const std::string& language,
202 const media::AddTextTrackDoneCB& done_cb);
203
202 void SetOpaque(bool); 204 void SetOpaque(bool);
203 205
204 private: 206 private:
205 // Called after |defer_load_cb_| has decided to allow the load. If 207 // Called after |defer_load_cb_| has decided to allow the load. If
206 // |defer_load_cb_| is null this is called immediately. 208 // |defer_load_cb_| is null this is called immediately.
207 void DoLoad(LoadType load_type, 209 void DoLoad(LoadType load_type,
208 const WebKit::WebURL& url, 210 const WebKit::WebURL& url,
209 CORSMode cors_mode); 211 CORSMode cors_mode);
210 212
211 // Called after asynchronous initialization of a data source completed. 213 // Called after asynchronous initialization of a data source completed.
(...skipping 153 matching lines...) Expand 10 before | Expand all | Expand 10 after
365 367
366 // Text track objects get a unique index value when they're created. 368 // Text track objects get a unique index value when they're created.
367 int text_track_index_; 369 int text_track_index_;
368 370
369 DISALLOW_COPY_AND_ASSIGN(WebMediaPlayerImpl); 371 DISALLOW_COPY_AND_ASSIGN(WebMediaPlayerImpl);
370 }; 372 };
371 373
372 } // namespace content 374 } // namespace content
373 375
374 #endif // CONTENT_RENDERER_MEDIA_WEBMEDIAPLAYER_IMPL_H_ 376 #endif // CONTENT_RENDERER_MEDIA_WEBMEDIAPLAYER_IMPL_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698