OLD | NEW |
---|---|
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 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 // SourceBufferStream is a data structure that stores media Buffers in ranges. | 5 // SourceBufferStream is a data structure that stores media Buffers in ranges. |
6 // Buffers can be appended out of presentation order. Buffers are retrieved by | 6 // Buffers can be appended out of presentation order. Buffers are retrieved by |
7 // seeking to the desired start point and calling GetNextBuffer(). Buffers are | 7 // seeking to the desired start point and calling GetNextBuffer(). Buffers are |
8 // returned in sequential presentation order. | 8 // returned in sequential presentation order. |
9 | 9 |
10 #ifndef MEDIA_FILTERS_SOURCE_BUFFER_STREAM_H_ | 10 #ifndef MEDIA_FILTERS_SOURCE_BUFFER_STREAM_H_ |
(...skipping 258 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
269 // Searches |ranges_| for the first keyframe timestamp that is >= |timestamp|. | 269 // Searches |ranges_| for the first keyframe timestamp that is >= |timestamp|. |
270 // If |ranges_| doesn't contain a GOP that covers |timestamp| or doesn't | 270 // If |ranges_| doesn't contain a GOP that covers |timestamp| or doesn't |
271 // have a keyframe after |timestamp| then kNoTimestamp() is returned. | 271 // have a keyframe after |timestamp| then kNoTimestamp() is returned. |
272 DecodeTimestamp FindKeyframeAfterTimestamp(const DecodeTimestamp timestamp); | 272 DecodeTimestamp FindKeyframeAfterTimestamp(const DecodeTimestamp timestamp); |
273 | 273 |
274 // Returns "VIDEO" for a video SourceBufferStream, "AUDIO" for an audio | 274 // Returns "VIDEO" for a video SourceBufferStream, "AUDIO" for an audio |
275 // stream, and "TEXT" for a text stream. | 275 // stream, and "TEXT" for a text stream. |
276 std::string GetStreamTypeName() const; | 276 std::string GetStreamTypeName() const; |
277 | 277 |
278 // Returns true if we don't have any ranges or the last range is selected | 278 // Returns true if we don't have any ranges or the last range is selected |
279 // or there is a pending seek beyond any existing ranges. | 279 // or there is a pending seek beyond any existing ranges. |
wolenetz
2015/05/12 20:36:24
nit: Please adjust this comment, too: there are ne
| |
280 bool IsEndSelected() const; | 280 bool IsEndOfStreamReached() const; |
281 | 281 |
282 // Deletes the range pointed to by |*itr| and removes it from |ranges_|. | 282 // Deletes the range pointed to by |*itr| and removes it from |ranges_|. |
283 // If |*itr| points to |selected_range_|, then |selected_range_| is set to | 283 // If |*itr| points to |selected_range_|, then |selected_range_| is set to |
284 // NULL. After the range is removed, |*itr| is to the range after the one that | 284 // NULL. After the range is removed, |*itr| is to the range after the one that |
285 // was removed or to |ranges_.end()| if the last range was removed. | 285 // was removed or to |ranges_.end()| if the last range was removed. |
286 void DeleteAndRemoveRange(RangeList::iterator* itr); | 286 void DeleteAndRemoveRange(RangeList::iterator* itr); |
287 | 287 |
288 // Helper function used by Remove() and PrepareRangesForNextAppend() to | 288 // Helper function used by Remove() and PrepareRangesForNextAppend() to |
289 // remove buffers and ranges between |start| and |end|. | 289 // remove buffers and ranges between |start| and |end|. |
290 // |exclude_start| - If set to true, buffers with timestamps that | 290 // |exclude_start| - If set to true, buffers with timestamps that |
(...skipping 124 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
415 | 415 |
416 // Indicates that splice frame generation is enabled. | 416 // Indicates that splice frame generation is enabled. |
417 const bool splice_frames_enabled_; | 417 const bool splice_frames_enabled_; |
418 | 418 |
419 DISALLOW_COPY_AND_ASSIGN(SourceBufferStream); | 419 DISALLOW_COPY_AND_ASSIGN(SourceBufferStream); |
420 }; | 420 }; |
421 | 421 |
422 } // namespace media | 422 } // namespace media |
423 | 423 |
424 #endif // MEDIA_FILTERS_SOURCE_BUFFER_STREAM_H_ | 424 #endif // MEDIA_FILTERS_SOURCE_BUFFER_STREAM_H_ |
OLD | NEW |