OLD | NEW |
1 /* Copyright (c) 2014 The Chromium Authors. All rights reserved. | 1 /* Copyright (c) 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 | 5 |
6 /** | 6 /** |
7 * This file defines the <code>PPB_VideoDecoder</code> interface. | 7 * This file defines the <code>PPB_VideoDecoder</code> interface. |
8 */ | 8 */ |
9 | 9 |
10 [generate_thunk] | 10 [generate_thunk] |
11 | 11 |
12 label Chrome { | 12 label Chrome { |
13 /** Though not labeled 'channel=dev', 0.1 is a still a 'Dev' only API. */ | 13 /** Though not labeled 'channel=dev', 0.1 is a still a 'Dev' only API. */ |
14 M36 = 0.1, | 14 M36 = 0.1, |
15 M39 = 0.2 | 15 M39 = 0.2, |
| 16 M40 = 1.0 |
16 }; | 17 }; |
17 | 18 |
18 /** | 19 /** |
19 * Video decoder interface. | 20 * Video decoder interface. |
20 * | 21 * |
21 * Typical usage: | 22 * Typical usage: |
22 * - Call Create() to create a new video decoder resource. | 23 * - Call Create() to create a new video decoder resource. |
23 * - Call Initialize() to initialize it with a 3d graphics context and the | 24 * - Call Initialize() to initialize it with a 3d graphics context and the |
24 * desired codec profile. | 25 * desired codec profile. |
25 * - Call Decode() continuously (waiting for each previous call to complete) to | 26 * - Call Decode() continuously (waiting for each previous call to complete) to |
(...skipping 149 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
175 * | 176 * |
176 * @return An int32_t containing an error code from <code>pp_errors.h</code>. | 177 * @return An int32_t containing an error code from <code>pp_errors.h</code>. |
177 * Returns PP_ERROR_FAILED if the decoder isn't initialized or if a Reset() | 178 * Returns PP_ERROR_FAILED if the decoder isn't initialized or if a Reset() |
178 * call is pending. | 179 * call is pending. |
179 * Returns PP_ERROR_INPROGRESS if there is another GetPicture() call pending. | 180 * Returns PP_ERROR_INPROGRESS if there is another GetPicture() call pending. |
180 * Returns PP_ERROR_ABORTED when Reset() is called, or if a call to Flush() | 181 * Returns PP_ERROR_ABORTED when Reset() is called, or if a call to Flush() |
181 * completes while GetPicture() is pending. | 182 * completes while GetPicture() is pending. |
182 */ | 183 */ |
183 int32_t GetPicture( | 184 int32_t GetPicture( |
184 [in] PP_Resource video_decoder, | 185 [in] PP_Resource video_decoder, |
| 186 [out] PP_VideoPicture_0_1 picture, |
| 187 [in] PP_CompletionCallback callback); |
| 188 |
| 189 /** |
| 190 * Gets the next picture from the decoder. The picture is valid after the |
| 191 * decoder signals completion by returning PP_OK or running |callback|. The |
| 192 * plugin can call GetPicture() again after the decoder signals completion. |
| 193 * When the plugin is finished using the picture, it should return it to the |
| 194 * system by calling RecyclePicture(). |
| 195 * |
| 196 * @param[in] video_decoder A <code>PP_Resource</code> identifying the video |
| 197 * decoder. |
| 198 * @param[out] picture A <code>PP_VideoPicture</code> to hold the decoded |
| 199 * picture. |
| 200 * @param[in] callback A <code>PP_CompletionCallback</code> to be called on |
| 201 * completion. |
| 202 * |
| 203 * @return An int32_t containing an error code from <code>pp_errors.h</code>. |
| 204 * Returns PP_ERROR_FAILED if the decoder isn't initialized or if a Reset() |
| 205 * call is pending. |
| 206 * Returns PP_ERROR_INPROGRESS if there is another GetPicture() call pending. |
| 207 * Returns PP_ERROR_ABORTED when Reset() is called, or if a call to Flush() |
| 208 * completes while GetPicture() is pending. |
| 209 */ |
| 210 [version = 1.0] |
| 211 int32_t GetPicture( |
| 212 [in] PP_Resource video_decoder, |
185 [out] PP_VideoPicture picture, | 213 [out] PP_VideoPicture picture, |
186 [in] PP_CompletionCallback callback); | 214 [in] PP_CompletionCallback callback); |
187 | 215 |
188 /** | 216 /** |
189 * Recycles a picture that the plugin has received from the decoder. | 217 * Recycles a picture that the plugin has received from the decoder. |
190 * The plugin should call this as soon as it has finished using the texture so | 218 * The plugin should call this as soon as it has finished using the texture so |
191 * the decoder can decode more pictures. | 219 * the decoder can decode more pictures. |
192 * | 220 * |
193 * @param[in] video_decoder A <code>PP_Resource</code> identifying the video | 221 * @param[in] video_decoder A <code>PP_Resource</code> identifying the video |
194 * decoder. | 222 * decoder. |
(...skipping 42 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
237 * @param[in] callback A <code>PP_CompletionCallback</code> to be called on | 265 * @param[in] callback A <code>PP_CompletionCallback</code> to be called on |
238 * completion. | 266 * completion. |
239 * | 267 * |
240 * @return An int32_t containing an error code from <code>pp_errors.h</code>. | 268 * @return An int32_t containing an error code from <code>pp_errors.h</code>. |
241 * Returns PP_ERROR_FAILED if the decoder isn't initialized. | 269 * Returns PP_ERROR_FAILED if the decoder isn't initialized. |
242 */ | 270 */ |
243 int32_t Reset( | 271 int32_t Reset( |
244 [in] PP_Resource video_decoder, | 272 [in] PP_Resource video_decoder, |
245 [in] PP_CompletionCallback callback); | 273 [in] PP_CompletionCallback callback); |
246 }; | 274 }; |
OLD | NEW |