OLD | NEW |
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_GPU_VIDEO_DECODER_H_ | 5 #ifndef MEDIA_FILTERS_GPU_VIDEO_DECODER_H_ |
6 #define MEDIA_FILTERS_GPU_VIDEO_DECODER_H_ | 6 #define MEDIA_FILTERS_GPU_VIDEO_DECODER_H_ |
7 | 7 |
8 #include <list> | 8 #include <list> |
9 #include <map> | 9 #include <map> |
10 #include <set> | 10 #include <set> |
(...skipping 86 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
97 | 97 |
98 // Enqueue a frame for later delivery (or drop it on the floor if a | 98 // Enqueue a frame for later delivery (or drop it on the floor if a |
99 // vda->Reset() is in progress) and trigger out-of-line delivery of the oldest | 99 // vda->Reset() is in progress) and trigger out-of-line delivery of the oldest |
100 // ready frame to the client if there is a pending read. A NULL |frame| | 100 // ready frame to the client if there is a pending read. A NULL |frame| |
101 // merely triggers delivery, and requires the ready_video_frames_ queue not be | 101 // merely triggers delivery, and requires the ready_video_frames_ queue not be |
102 // empty. | 102 // empty. |
103 void EnqueueFrameAndTriggerFrameDelivery( | 103 void EnqueueFrameAndTriggerFrameDelivery( |
104 const scoped_refptr<VideoFrame>& frame); | 104 const scoped_refptr<VideoFrame>& frame); |
105 | 105 |
106 // Indicate the picture buffer can be reused by the decoder. | 106 // Indicate the picture buffer can be reused by the decoder. |
107 void ReusePictureBuffer(int64 picture_buffer_id, uint32 sync_point); | 107 void ReusePictureBuffer(int64 picture_buffer_id, |
| 108 scoped_ptr<gpu::MailboxHolder> mailbox_holder); |
108 | 109 |
109 void RecordBufferData( | 110 void RecordBufferData( |
110 const BitstreamBuffer& bitstream_buffer, const DecoderBuffer& buffer); | 111 const BitstreamBuffer& bitstream_buffer, const DecoderBuffer& buffer); |
111 void GetBufferData(int32 id, base::TimeDelta* timetamp, | 112 void GetBufferData(int32 id, base::TimeDelta* timetamp, |
112 gfx::Rect* visible_rect, gfx::Size* natural_size); | 113 gfx::Rect* visible_rect, gfx::Size* natural_size); |
113 | 114 |
114 void DestroyVDA(); | 115 void DestroyVDA(); |
115 | 116 |
116 // Request a shared-memory segment of at least |min_size| bytes. Will | 117 // Request a shared-memory segment of at least |min_size| bytes. Will |
117 // allocate as necessary. Caller does not own returned pointer. | 118 // allocate as necessary. Caller does not own returned pointer. |
(...skipping 65 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
183 // Set during ProvidePictureBuffers(), used for checking and implementing | 184 // Set during ProvidePictureBuffers(), used for checking and implementing |
184 // HasAvailableOutputFrames(). | 185 // HasAvailableOutputFrames(). |
185 int available_pictures_; | 186 int available_pictures_; |
186 | 187 |
187 DISALLOW_COPY_AND_ASSIGN(GpuVideoDecoder); | 188 DISALLOW_COPY_AND_ASSIGN(GpuVideoDecoder); |
188 }; | 189 }; |
189 | 190 |
190 } // namespace media | 191 } // namespace media |
191 | 192 |
192 #endif // MEDIA_FILTERS_GPU_VIDEO_DECODER_H_ | 193 #endif // MEDIA_FILTERS_GPU_VIDEO_DECODER_H_ |
OLD | NEW |