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 MEDIA_FILTERS_FRAME_PROCESSOR_H_ | 5 #ifndef MEDIA_FILTERS_FRAME_PROCESSOR_H_ |
6 #define MEDIA_FILTERS_FRAME_PROCESSOR_H_ | 6 #define MEDIA_FILTERS_FRAME_PROCESSOR_H_ |
7 | 7 |
8 #include <map> | 8 #include <map> |
9 | 9 |
10 #include "base/callback_forward.h" | 10 #include "base/callback_forward.h" |
(...skipping 147 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
158 // discontinuity, parser reset during 'segments' mode, or switching from | 158 // discontinuity, parser reset during 'segments' mode, or switching from |
159 // 'sequence' to 'segments' mode. | 159 // 'sequence' to 'segments' mode. |
160 // Once a processed coded frame is emitted for the current coded frame group, | 160 // Once a processed coded frame is emitted for the current coded frame group, |
161 // tracks the decode timestamp of the last frame emitted. | 161 // tracks the decode timestamp of the last frame emitted. |
162 // Explicit setting of timestampOffset will trigger subsequent notification of | 162 // Explicit setting of timestampOffset will trigger subsequent notification of |
163 // a new coded frame start to the tracks' streams, even in 'sequence' mode, if | 163 // a new coded frame start to the tracks' streams, even in 'sequence' mode, if |
164 // the resulting frame has a DTS less than this. | 164 // the resulting frame has a DTS less than this. |
165 DecodeTimestamp coded_frame_group_last_dts_ = kNoDecodeTimestamp(); | 165 DecodeTimestamp coded_frame_group_last_dts_ = kNoDecodeTimestamp(); |
166 | 166 |
167 // Tracks the MSE coded frame processing variable of same name. | 167 // Tracks the MSE coded frame processing variable of same name. |
168 // Initially kNoTimestamp(), meaning "unset". | 168 // Initially kNoTimestamp, meaning "unset". |
169 base::TimeDelta group_start_timestamp_; | 169 base::TimeDelta group_start_timestamp_; |
170 | 170 |
171 // Tracks the MSE coded frame processing variable of same name. It stores the | 171 // Tracks the MSE coded frame processing variable of same name. It stores the |
172 // highest coded frame end timestamp across all coded frames in the current | 172 // highest coded frame end timestamp across all coded frames in the current |
173 // coded frame group. It is set to 0 when the SourceBuffer object is created | 173 // coded frame group. It is set to 0 when the SourceBuffer object is created |
174 // and gets updated by ProcessFrames(). | 174 // and gets updated by ProcessFrames(). |
175 base::TimeDelta group_end_timestamp_; | 175 base::TimeDelta group_end_timestamp_; |
176 | 176 |
177 UpdateDurationCB update_duration_cb_; | 177 UpdateDurationCB update_duration_cb_; |
178 | 178 |
179 // MediaLog for reporting messages and properties to debug content and engine. | 179 // MediaLog for reporting messages and properties to debug content and engine. |
180 scoped_refptr<MediaLog> media_log_; | 180 scoped_refptr<MediaLog> media_log_; |
181 | 181 |
182 // Counters that limit spam to |media_log_| for frame processor warnings. | 182 // Counters that limit spam to |media_log_| for frame processor warnings. |
183 int num_dropped_preroll_warnings_ = 0; | 183 int num_dropped_preroll_warnings_ = 0; |
184 int num_dts_beyond_pts_warnings_ = 0; | 184 int num_dts_beyond_pts_warnings_ = 0; |
185 | 185 |
186 DISALLOW_COPY_AND_ASSIGN(FrameProcessor); | 186 DISALLOW_COPY_AND_ASSIGN(FrameProcessor); |
187 }; | 187 }; |
188 | 188 |
189 } // namespace media | 189 } // namespace media |
190 | 190 |
191 #endif // MEDIA_FILTERS_FRAME_PROCESSOR_H_ | 191 #endif // MEDIA_FILTERS_FRAME_PROCESSOR_H_ |
OLD | NEW |