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_BASE_H_ | 5 #ifndef MEDIA_FILTERS_FRAME_PROCESSOR_BASE_H_ |
6 #define MEDIA_FILTERS_FRAME_PROCESSOR_BASE_H_ | 6 #define MEDIA_FILTERS_FRAME_PROCESSOR_BASE_H_ |
7 | 7 |
8 #include <map> | 8 #include <map> |
9 | 9 |
10 #include "base/basictypes.h" | 10 #include "base/basictypes.h" |
(...skipping 119 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
130 // append window represent the start of a new media segment. This method may | 130 // append window represent the start of a new media segment. This method may |
131 // both use and update this flag. | 131 // both use and update this flag. |
132 // Uses |*timestamp_offset| according to the coded frame processing algorithm, | 132 // Uses |*timestamp_offset| according to the coded frame processing algorithm, |
133 // including updating it as required in 'sequence' mode frame processing. | 133 // including updating it as required in 'sequence' mode frame processing. |
134 virtual bool ProcessFrames(const StreamParser::BufferQueue& audio_buffers, | 134 virtual bool ProcessFrames(const StreamParser::BufferQueue& audio_buffers, |
135 const StreamParser::BufferQueue& video_buffers, | 135 const StreamParser::BufferQueue& video_buffers, |
136 const StreamParser::TextBufferQueueMap& text_map, | 136 const StreamParser::TextBufferQueueMap& text_map, |
137 base::TimeDelta append_window_start, | 137 base::TimeDelta append_window_start, |
138 base::TimeDelta append_window_end, | 138 base::TimeDelta append_window_end, |
139 bool* new_media_segment, | 139 bool* new_media_segment, |
140 base::TimeDelta* timestamp_offset) = 0; | 140 base::TimeDelta* timestamp_offset, |
| 141 base::TimeDelta media_time) = 0; |
141 | 142 |
142 // Signals the frame processor to update its group start timestamp to be | 143 // Signals the frame processor to update its group start timestamp to be |
143 // |timestamp_offset| if it is in sequence append mode. | 144 // |timestamp_offset| if it is in sequence append mode. |
144 void SetGroupStartTimestampIfInSequenceMode(base::TimeDelta timestamp_offset); | 145 void SetGroupStartTimestampIfInSequenceMode(base::TimeDelta timestamp_offset); |
145 | 146 |
146 // Adds a new track with unique track ID |id|. | 147 // Adds a new track with unique track ID |id|. |
147 // If |id| has previously been added, returns false to indicate error. | 148 // If |id| has previously been added, returns false to indicate error. |
148 // Otherwise, returns true, indicating future ProcessFrames() will emit | 149 // Otherwise, returns true, indicating future ProcessFrames() will emit |
149 // frames for the track |id| to |stream|. | 150 // frames for the track |id| to |stream|. |
150 bool AddTrack(StreamParser::TrackId id, ChunkDemuxerStream* stream); | 151 bool AddTrack(StreamParser::TrackId id, ChunkDemuxerStream* stream); |
(...skipping 74 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
225 // The AudioDecoderConfig associated with buffers handed to ProcessFrames(). | 226 // The AudioDecoderConfig associated with buffers handed to ProcessFrames(). |
226 AudioDecoderConfig current_audio_config_; | 227 AudioDecoderConfig current_audio_config_; |
227 base::TimeDelta sample_duration_; | 228 base::TimeDelta sample_duration_; |
228 | 229 |
229 DISALLOW_COPY_AND_ASSIGN(FrameProcessorBase); | 230 DISALLOW_COPY_AND_ASSIGN(FrameProcessorBase); |
230 }; | 231 }; |
231 | 232 |
232 } // namespace media | 233 } // namespace media |
233 | 234 |
234 #endif // MEDIA_FILTERS_FRAME_PROCESSOR_BASE_H_ | 235 #endif // MEDIA_FILTERS_FRAME_PROCESSOR_BASE_H_ |
OLD | NEW |