Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(235)

Side by Side Diff: media/filters/video_renderer_base.h

Issue 12335105: Merge 184048 (Closed) Base URL: svn://svn.chromium.org/chrome/branches/1364/src/
Patch Set: Created 7 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « no previous file | media/filters/video_renderer_base.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
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_FILTERS_VIDEO_RENDERER_BASE_H_ 5 #ifndef MEDIA_FILTERS_VIDEO_RENDERER_BASE_H_
6 #define MEDIA_FILTERS_VIDEO_RENDERER_BASE_H_ 6 #define MEDIA_FILTERS_VIDEO_RENDERER_BASE_H_
7 7
8 #include <deque> 8 #include <deque>
9 9
10 #include "base/memory/ref_counted.h" 10 #include "base/memory/ref_counted.h"
(...skipping 176 matching lines...) Expand 10 before | Expand all | Expand 10 after
187 scoped_refptr<VideoFrame> last_available_frame_; 187 scoped_refptr<VideoFrame> last_available_frame_;
188 188
189 // Used to signal |thread_| as frames are added to |frames_|. Rule of thumb: 189 // Used to signal |thread_| as frames are added to |frames_|. Rule of thumb:
190 // always check |state_| to see if it was set to STOPPED after waking up! 190 // always check |state_| to see if it was set to STOPPED after waking up!
191 base::ConditionVariable frame_available_; 191 base::ConditionVariable frame_available_;
192 192
193 // State transition Diagram of this class: 193 // State transition Diagram of this class:
194 // [kUninitialized] -------> [kError] 194 // [kUninitialized] -------> [kError]
195 // | 195 // |
196 // | Initialize() 196 // | Initialize()
197 // [kInitializing]
198 // |
197 // V All frames returned 199 // V All frames returned
198 // +------[kFlushed]<-----[kFlushing]<--- OnDecoderResetDone() 200 // +------[kFlushed]<-----[kFlushing]<--- OnDecoderResetDone()
199 // | | Preroll() or upon ^ 201 // | | Preroll() or upon ^
200 // | V got first frame [kFlushingDecoder] 202 // | V got first frame [kFlushingDecoder]
201 // | [kPrerolling] ^ 203 // | [kPrerolling] ^
202 // | | | Flush() 204 // | | | Flush()
203 // | V Got enough frames | 205 // | V Got enough frames |
204 // | [kPrerolled]---------------------->[kPaused] 206 // | [kPrerolled]---------------------->[kPaused]
205 // | | Pause() ^ 207 // | | Pause() ^
206 // | V Play() | 208 // | V Play() |
207 // | [kPlaying]---------------------------| 209 // | [kPlaying]---------------------------|
208 // | | Pause() ^ 210 // | | Pause() ^
209 // | V Receive EOF frame. | Pause() 211 // | V Receive EOF frame. | Pause()
210 // | [kEnded]-----------------------------+ 212 // | [kEnded]-----------------------------+
211 // | ^ 213 // | ^
212 // | | 214 // | |
213 // +-----> [kStopped] [Any state other than] 215 // +-----> [kStopped] [Any state other than]
214 // [kUninitialized/kError] 216 // [kUninitialized/kError]
215 217
216 // Simple state tracking variable. 218 // Simple state tracking variable.
217 enum State { 219 enum State {
218 kUninitialized, 220 kUninitialized,
221 kInitializing,
219 kPrerolled, 222 kPrerolled,
220 kPaused, 223 kPaused,
221 kFlushingDecoder, 224 kFlushingDecoder,
222 kFlushing, 225 kFlushing,
223 kFlushed, 226 kFlushed,
224 kPrerolling, 227 kPrerolling,
225 kPlaying, 228 kPlaying,
226 kEnded, 229 kEnded,
227 kStopped, 230 kStopped,
228 kError, 231 kError,
(...skipping 49 matching lines...) Expand 10 before | Expand all | Expand 10 after
278 281
279 // The last natural size |size_changed_cb_| was called with. 282 // The last natural size |size_changed_cb_| was called with.
280 gfx::Size last_natural_size_; 283 gfx::Size last_natural_size_;
281 284
282 DISALLOW_COPY_AND_ASSIGN(VideoRendererBase); 285 DISALLOW_COPY_AND_ASSIGN(VideoRendererBase);
283 }; 286 };
284 287
285 } // namespace media 288 } // namespace media
286 289
287 #endif // MEDIA_FILTERS_VIDEO_RENDERER_BASE_H_ 290 #endif // MEDIA_FILTERS_VIDEO_RENDERER_BASE_H_
OLDNEW
« no previous file with comments | « no previous file | media/filters/video_renderer_base.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698