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 #ifndef MEDIA_BASE_STREAM_PARSER_BUFFER_H_ | 5 #ifndef MEDIA_BASE_STREAM_PARSER_BUFFER_H_ |
6 #define MEDIA_BASE_STREAM_PARSER_BUFFER_H_ | 6 #define MEDIA_BASE_STREAM_PARSER_BUFFER_H_ |
7 | 7 |
8 #include <deque> | 8 #include <deque> |
9 | 9 |
10 #include "media/base/decoder_buffer.h" | 10 #include "media/base/decoder_buffer.h" |
(...skipping 43 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
54 // have any EOS buffers and must not have any nested splice buffers. | 54 // have any EOS buffers and must not have any nested splice buffers. |
55 // | 55 // |
56 // |pre_splice_buffers| will be deep copied and each copy's splice_timestamp() | 56 // |pre_splice_buffers| will be deep copied and each copy's splice_timestamp() |
57 // will be set to this buffer's splice_timestamp(). A copy of |this|, with a | 57 // will be set to this buffer's splice_timestamp(). A copy of |this|, with a |
58 // splice_timestamp() of kNoTimestamp(), will be added to the end of | 58 // splice_timestamp() of kNoTimestamp(), will be added to the end of |
59 // |splice_buffers_|. | 59 // |splice_buffers_|. |
60 // | 60 // |
61 // See the Audio Splice Frame Algorithm in the MSE specification for details. | 61 // See the Audio Splice Frame Algorithm in the MSE specification for details. |
62 typedef StreamParser::BufferQueue BufferQueue; | 62 typedef StreamParser::BufferQueue BufferQueue; |
63 void ConvertToSpliceBuffer(const BufferQueue& pre_splice_buffers); | 63 void ConvertToSpliceBuffer(const BufferQueue& pre_splice_buffers); |
64 const BufferQueue& get_splice_buffers() const { return splice_buffers_; } | 64 const BufferQueue& splice_buffers() const { return splice_buffers_; } |
65 | 65 |
66 private: | 66 private: |
67 StreamParserBuffer(const uint8* data, int data_size, | 67 StreamParserBuffer(const uint8* data, int data_size, |
68 const uint8* side_data, int side_data_size, | 68 const uint8* side_data, int side_data_size, |
69 bool is_keyframe, Type type, | 69 bool is_keyframe, Type type, |
70 TrackId track_id); | 70 TrackId track_id); |
71 virtual ~StreamParserBuffer(); | 71 virtual ~StreamParserBuffer(); |
72 | 72 |
73 bool is_keyframe_; | 73 bool is_keyframe_; |
74 base::TimeDelta decode_timestamp_; | 74 base::TimeDelta decode_timestamp_; |
75 int config_id_; | 75 int config_id_; |
76 Type type_; | 76 Type type_; |
77 TrackId track_id_; | 77 TrackId track_id_; |
78 | 78 |
79 BufferQueue splice_buffers_; | 79 BufferQueue splice_buffers_; |
80 | 80 |
81 DISALLOW_COPY_AND_ASSIGN(StreamParserBuffer); | 81 DISALLOW_COPY_AND_ASSIGN(StreamParserBuffer); |
82 }; | 82 }; |
83 | 83 |
84 } // namespace media | 84 } // namespace media |
85 | 85 |
86 #endif // MEDIA_BASE_STREAM_PARSER_BUFFER_H_ | 86 #endif // MEDIA_BASE_STREAM_PARSER_BUFFER_H_ |
OLD | NEW |