OLD | NEW |
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 #ifndef WebSourceBufferClient_h | 5 #ifndef WebSourceBufferClient_h |
6 #define WebSourceBufferClient_h | 6 #define WebSourceBufferClient_h |
7 | 7 |
| 8 #include "WebMediaPlayer.h" |
| 9 #include "WebString.h" |
| 10 #include "WebVector.h" |
| 11 |
8 namespace blink { | 12 namespace blink { |
9 | 13 |
10 class WebSourceBufferClient { | 14 class WebSourceBufferClient { |
11 public: | 15 public: |
12 virtual ~WebSourceBufferClient() { } | 16 virtual ~WebSourceBufferClient() { } |
13 | 17 |
14 // FIXME: Add a track collection parameter here. | 18 // Creates a new media track of a given type with given properties (id, kind
, label, language) for this SourceBuffer and |
15 virtual void initializationSegmentReceived() = 0; | 19 // places it into a collection of pending SB tracks. This notifies SourceBuf
fer to expect the newly created track to be |
| 20 // used in a new init segment. This function returns a unique blink media tr
ack id, which is used to identify media track |
| 21 // in WebMediaPlayer::enabledAudioTracksChanged and WebMediaPlayer::selected
VideoTrackChanged. |
| 22 virtual WebMediaPlayer::TrackId createMediaTrack(WebMediaPlayer::TrackType,
WebString, WebString, WebString, WebString) = 0; |
| 23 |
| 24 // Notifies SourceBuffer that parsing of a new init segment has been complet
ed successfully. The media tracks encountered |
| 25 // in the new init segment has been created via createMediaTrack above. The
input parameter is a vector of TrackIds |
| 26 // specifying media track order in the init segment. |
| 27 virtual void initializationSegmentReceived(const WebVector<WebMediaPlayer::T
rackId>&) = 0; |
16 }; | 28 }; |
17 | 29 |
18 } // namespace blink | 30 } // namespace blink |
19 | 31 |
20 #endif // WebSourceBufferClient_h | 32 #endif // WebSourceBufferClient_h |
OLD | NEW |