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" | 8 #include "WebMediaPlayer.h" |
9 #include "WebString.h" | 9 #include "WebString.h" |
10 #include "WebVector.h" | 10 #include "WebVector.h" |
11 | 11 |
12 namespace blink { | 12 namespace blink { |
13 | 13 |
14 // Interface that the media engine uses to signal Blink's Media Source | 14 // Interface that the media engine uses to signal Blink's Media Source |
15 // extensions module. | 15 // extensions module. |
16 class WebSourceBufferClient { | 16 class WebSourceBufferClient { |
17 public: | 17 public: |
18 virtual ~WebSourceBufferClient() { } | 18 virtual ~WebSourceBufferClient() { } |
19 | 19 |
20 // Complete media track info: track type, unique track id, kind, label, lang
uage. | 20 // Complete media track info: track type, unique track id, kind, label, lang
uage. |
21 struct MediaTrackInfo { | 21 struct MediaTrackInfo { |
22 WebMediaPlayer::TrackType trackType; | 22 WebMediaPlayer::TrackType trackType; |
23 WebMediaPlayer::TrackId id; | 23 WebMediaPlayer::TrackId id; |
| 24 WebString byteStreamTrackID; |
24 WebString kind; | 25 WebString kind; |
25 WebString label; | 26 WebString label; |
26 WebString language; | 27 WebString language; |
27 }; | 28 }; |
28 | 29 |
29 // Notifies SourceBuffer that parsing of a new init segment has been complet
ed successfully. The input parameter is a collection | 30 // Notifies SourceBuffer that parsing of a new init segment has been complet
ed successfully. The input parameter is a collection |
30 // of information about media tracks found in the new init segment. The retu
rn value is a vector of blink WebMediaPlayer track ids | 31 // of information about media tracks found in the new init segment. The retu
rn value is true in case of success. |
31 // assigned to each track of the input collection (the order of output track
ids must match the input track information). | 32 virtual bool initializationSegmentReceived(const WebVector<MediaTrackInfo>&
tracks) = 0; |
32 virtual WebVector<WebMediaPlayer::TrackId> initializationSegmentReceived(con
st WebVector<MediaTrackInfo>& tracks) = 0; | |
33 }; | 33 }; |
34 | 34 |
35 } // namespace blink | 35 } // namespace blink |
36 | 36 |
37 #endif // WebSourceBufferClient_h | 37 #endif // WebSourceBufferClient_h |
OLD | NEW |