OLD | NEW |
1 // Copyright (c) 2010 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2010 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 // VideoRendererBase creates its own thread for the sole purpose of timing frame | 5 // VideoRendererBase creates its own thread for the sole purpose of timing frame |
6 // presentation. It handles reading from the decoder and stores the results in | 6 // presentation. It handles reading from the decoder and stores the results in |
7 // a queue of decoded frames, calling OnFrameAvailable() on subclasses to notify | 7 // a queue of decoded frames, calling OnFrameAvailable() on subclasses to notify |
8 // when a frame is ready to display. | 8 // when a frame is ready to display. |
9 // | 9 // |
10 // The media filter methods Initialize(), Stop(), SetPlaybackRate() and Seek() | 10 // The media filter methods Initialize(), Stop(), SetPlaybackRate() and Seek() |
(...skipping 26 matching lines...) Expand all Loading... |
37 // Helper method to parse out video-related information from a MediaFormat. | 37 // Helper method to parse out video-related information from a MediaFormat. |
38 // Returns true all the required parameters are existent in |media_format|. | 38 // Returns true all the required parameters are existent in |media_format|. |
39 // |surface_type_out|, |surface_format_out|, |width_out|, |height_out| can | 39 // |surface_type_out|, |surface_format_out|, |width_out|, |height_out| can |
40 // be NULL where the result is not needed. | 40 // be NULL where the result is not needed. |
41 static bool ParseMediaFormat( | 41 static bool ParseMediaFormat( |
42 const MediaFormat& media_format, | 42 const MediaFormat& media_format, |
43 VideoFrame::SurfaceType* surface_type_out, | 43 VideoFrame::SurfaceType* surface_type_out, |
44 VideoFrame::Format* surface_format_out, | 44 VideoFrame::Format* surface_format_out, |
45 int* width_out, int* height_out); | 45 int* width_out, int* height_out); |
46 | 46 |
47 // MediaFilter implementation. | 47 // Filter implementation. |
48 virtual void Play(FilterCallback* callback); | 48 virtual void Play(FilterCallback* callback); |
49 virtual void Pause(FilterCallback* callback); | 49 virtual void Pause(FilterCallback* callback); |
50 virtual void Flush(FilterCallback* callback); | 50 virtual void Flush(FilterCallback* callback); |
51 virtual void Stop(FilterCallback* callback); | 51 virtual void Stop(FilterCallback* callback); |
52 virtual void SetPlaybackRate(float playback_rate); | 52 virtual void SetPlaybackRate(float playback_rate); |
53 virtual void Seek(base::TimeDelta time, FilterCallback* callback); | 53 virtual void Seek(base::TimeDelta time, FilterCallback* callback); |
54 | 54 |
55 // VideoRenderer implementation. | 55 // VideoRenderer implementation. |
56 virtual void Initialize(VideoDecoder* decoder, FilterCallback* callback); | 56 virtual void Initialize(VideoDecoder* decoder, FilterCallback* callback); |
57 virtual bool HasEnded(); | 57 virtual bool HasEnded(); |
(...skipping 152 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
210 scoped_ptr<FilterCallback> seek_callback_; | 210 scoped_ptr<FilterCallback> seek_callback_; |
211 | 211 |
212 base::TimeDelta seek_timestamp_; | 212 base::TimeDelta seek_timestamp_; |
213 | 213 |
214 DISALLOW_COPY_AND_ASSIGN(VideoRendererBase); | 214 DISALLOW_COPY_AND_ASSIGN(VideoRendererBase); |
215 }; | 215 }; |
216 | 216 |
217 } // namespace media | 217 } // namespace media |
218 | 218 |
219 #endif // MEDIA_FILTERS_VIDEO_RENDERER_BASE_H_ | 219 #endif // MEDIA_FILTERS_VIDEO_RENDERER_BASE_H_ |
OLD | NEW |