OLD | NEW |
1 // Copyright (c) 2016 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2016 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_FILTERS_MEDIA_SOURCE_STATE_H_ | 5 #ifndef MEDIA_FILTERS_MEDIA_SOURCE_STATE_H_ |
6 #define MEDIA_FILTERS_MEDIA_SOURCE_STATE_H_ | 6 #define MEDIA_FILTERS_MEDIA_SOURCE_STATE_H_ |
7 | 7 |
8 #include <list> | 8 #include <list> |
9 | 9 |
10 #include "base/bind.h" | 10 #include "base/bind.h" |
(...skipping 153 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
164 // so Append()'s caller can know the new offset. This pointer is only non-NULL | 164 // so Append()'s caller can know the new offset. This pointer is only non-NULL |
165 // during the lifetime of an Append() call. | 165 // during the lifetime of an Append() call. |
166 TimeDelta* timestamp_offset_during_append_; | 166 TimeDelta* timestamp_offset_during_append_; |
167 | 167 |
168 // During Append(), coded frame processing triggered by OnNewBuffers() | 168 // During Append(), coded frame processing triggered by OnNewBuffers() |
169 // requires these two attributes. These are only valid during the lifetime of | 169 // requires these two attributes. These are only valid during the lifetime of |
170 // an Append() call. | 170 // an Append() call. |
171 TimeDelta append_window_start_during_append_; | 171 TimeDelta append_window_start_during_append_; |
172 TimeDelta append_window_end_during_append_; | 172 TimeDelta append_window_end_during_append_; |
173 | 173 |
| 174 // Set to true if the next buffers appended within the append window |
| 175 // represent the start of a new media segment. This flag being set |
| 176 // triggers a call to |new_segment_cb_| when the new buffers are |
| 177 // appended. The flag is set on actual media segment boundaries and |
| 178 // when the "append window" filtering causes discontinuities in the |
| 179 // appended data. |
| 180 // TODO(wolenetz/acolwell): Investigate if we need this, or if coded frame |
| 181 // processing's discontinuity logic is enough. See http://crbug.com/351489. |
| 182 bool new_media_segment_; |
| 183 |
174 // Keeps track of whether a media segment is being parsed. | 184 // Keeps track of whether a media segment is being parsed. |
175 bool parsing_media_segment_; | 185 bool parsing_media_segment_; |
176 | 186 |
177 // Valid only while |parsing_media_segment_| is true. These flags enable | 187 // Valid only while |parsing_media_segment_| is true. These flags enable |
178 // warning when at least one frame for each A/V track is not in a parsed media | 188 // warning when at least one frame for each A/V track is not in a parsed media |
179 // segment. | 189 // segment. |
180 bool media_segment_contained_audio_frame_; | 190 bool media_segment_contained_audio_frame_; |
181 bool media_segment_contained_video_frame_; | 191 bool media_segment_contained_video_frame_; |
182 | 192 |
183 // The object used to parse appended data. | 193 // The object used to parse appended data. |
(...skipping 21 matching lines...) Expand all Loading... |
205 // TODO(wolenetz): Refactor this function while integrating April 29, 2014 | 215 // TODO(wolenetz): Refactor this function while integrating April 29, 2014 |
206 // changes to MSE spec. See http://crbug.com/371499. | 216 // changes to MSE spec. See http://crbug.com/371499. |
207 bool auto_update_timestamp_offset_; | 217 bool auto_update_timestamp_offset_; |
208 | 218 |
209 DISALLOW_COPY_AND_ASSIGN(MediaSourceState); | 219 DISALLOW_COPY_AND_ASSIGN(MediaSourceState); |
210 }; | 220 }; |
211 | 221 |
212 } // namespace media | 222 } // namespace media |
213 | 223 |
214 #endif // MEDIA_FILTERS_MEDIA_SOURCE_STATE_H_ | 224 #endif // MEDIA_FILTERS_MEDIA_SOURCE_STATE_H_ |
OLD | NEW |