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_VIDEO_VIDEO_DECODE_ACCELERATOR_H_ | 5 #ifndef MEDIA_VIDEO_VIDEO_DECODE_ACCELERATOR_H_ |
6 #define MEDIA_VIDEO_VIDEO_DECODE_ACCELERATOR_H_ | 6 #define MEDIA_VIDEO_VIDEO_DECODE_ACCELERATOR_H_ |
7 | 7 |
8 #include <stdint.h> | 8 #include <stdint.h> |
9 | 9 |
10 #include <memory> | 10 #include <memory> |
(...skipping 153 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
164 // empty list means any format is supported. | 164 // empty list means any format is supported. |
165 std::vector<VideoPixelFormat> supported_output_formats; | 165 std::vector<VideoPixelFormat> supported_output_formats; |
166 | 166 |
167 // The H264 SPS and PPS configuration data. Not all clients populate these | 167 // The H264 SPS and PPS configuration data. Not all clients populate these |
168 // fields, so they should be parsed from the bitstream instead, if required. | 168 // fields, so they should be parsed from the bitstream instead, if required. |
169 // Each SPS and PPS is prefixed with the Annex B framing bytes: 0, 0, 0, 1. | 169 // Each SPS and PPS is prefixed with the Annex B framing bytes: 0, 0, 0, 1. |
170 std::vector<uint8_t> sps; | 170 std::vector<uint8_t> sps; |
171 std::vector<uint8_t> pps; | 171 std::vector<uint8_t> pps; |
172 | 172 |
173 // Color space specified by the container. | 173 // Color space specified by the container. |
174 gfx::ColorSpace color_space; | 174 VideoColorSpace color_space; |
175 }; | 175 }; |
176 | 176 |
177 // Interface for collaborating with picture interface to provide memory for | 177 // Interface for collaborating with picture interface to provide memory for |
178 // output picture and blitting them. These callbacks will not be made unless | 178 // output picture and blitting them. These callbacks will not be made unless |
179 // Initialize() has returned successfully. | 179 // Initialize() has returned successfully. |
180 // This interface is extended by the various layers that relay messages back | 180 // This interface is extended by the various layers that relay messages back |
181 // to the plugin, through the PPP_VideoDecoder_Dev interface the plugin | 181 // to the plugin, through the PPP_VideoDecoder_Dev interface the plugin |
182 // implements. | 182 // implements. |
183 class MEDIA_EXPORT Client { | 183 class MEDIA_EXPORT Client { |
184 public: | 184 public: |
(...skipping 183 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
368 // std::unique_ptr<VideoDecodeAccelerator> uses "Destroy()" instead of trying to | 368 // std::unique_ptr<VideoDecodeAccelerator> uses "Destroy()" instead of trying to |
369 // use the destructor. | 369 // use the destructor. |
370 template <> | 370 template <> |
371 struct MEDIA_EXPORT default_delete<media::VideoDecodeAccelerator> { | 371 struct MEDIA_EXPORT default_delete<media::VideoDecodeAccelerator> { |
372 void operator()(media::VideoDecodeAccelerator* vda) const; | 372 void operator()(media::VideoDecodeAccelerator* vda) const; |
373 }; | 373 }; |
374 | 374 |
375 } // namespace std | 375 } // namespace std |
376 | 376 |
377 #endif // MEDIA_VIDEO_VIDEO_DECODE_ACCELERATOR_H_ | 377 #endif // MEDIA_VIDEO_VIDEO_DECODE_ACCELERATOR_H_ |
OLD | NEW |