| Index: ppapi/c/ppb_video_decoder.h
|
| diff --git a/ppapi/c/ppb_video_decoder.h b/ppapi/c/ppb_video_decoder.h
|
| index f09908c222ff31ddef42233c324517f260a66092..721e2383455c7d570dda169021cbdcb9da1c7afb 100644
|
| --- a/ppapi/c/ppb_video_decoder.h
|
| +++ b/ppapi/c/ppb_video_decoder.h
|
| @@ -3,7 +3,7 @@
|
| * found in the LICENSE file.
|
| */
|
|
|
| -/* From ppb_video_decoder.idl modified Tue May 6 05:19:45 2014. */
|
| +/* From ppb_video_decoder.idl modified Wed May 21 09:50:52 2014. */
|
|
|
| #ifndef PPAPI_C_PPB_VIDEO_DECODER_H_
|
| #define PPAPI_C_PPB_VIDEO_DECODER_H_
|
| @@ -100,9 +100,8 @@ struct PPB_VideoDecoder_0_1 { /* dev */
|
| struct PP_CompletionCallback callback);
|
| /**
|
| * Decodes a bitstream buffer. Copies |size| bytes of data from the plugin's
|
| - * |buffer|. The plugin should maintain the buffer and not call Decode() again
|
| - * until the decoder signals completion by returning PP_OK or by running
|
| - * |callback|.
|
| + * |buffer|. The plugin should wait until the decoder signals completion by
|
| + * returning PP_OK or by running |callback| before calling Decode() again.
|
| *
|
| * In general, each bitstream buffer should contain a demuxed bitstream frame
|
| * for the selected video codec. For example, H264 decoders expect to receive
|
| @@ -126,6 +125,11 @@ struct PPB_VideoDecoder_0_1 { /* dev */
|
| * completion.
|
| *
|
| * @return An int32_t containing an error code from <code>pp_errors.h</code>.
|
| + * Returns PP_ERROR_FAILED if the decoder isn't initialized or if a Flush()
|
| + * or Reset() call is pending.
|
| + * Returns PP_ERROR_INPROGRESS if there is another Decode() call pending.
|
| + * Returns PP_ERROR_NOMEMORY if a bitstream buffer can't be created.
|
| + * Returns PP_ERROR_ABORTED when Reset() is called while Decode() is pending.
|
| */
|
| int32_t (*Decode)(PP_Resource video_decoder,
|
| uint32_t decode_id,
|
| @@ -147,7 +151,9 @@ struct PPB_VideoDecoder_0_1 { /* dev */
|
| * completion.
|
| *
|
| * @return An int32_t containing an error code from <code>pp_errors.h</code>.
|
| - * Returns PP_OK if a picture is available.
|
| + * Returns PP_ERROR_FAILED if the decoder isn't initialized or if a Reset()
|
| + * call is pending.
|
| + * Returns PP_ERROR_INPROGRESS if there is another GetPicture() call pending.
|
| * Returns PP_ERROR_ABORTED when Reset() is called, or if a call to Flush()
|
| * completes while GetPicture() is pending.
|
| */
|
| @@ -167,13 +173,15 @@ struct PPB_VideoDecoder_0_1 { /* dev */
|
| void (*RecyclePicture)(PP_Resource video_decoder,
|
| const struct PP_VideoPicture* picture);
|
| /**
|
| - * Flushes the decoder. The plugin should call this when it reaches the end of
|
| - * its video stream in order to stop cleanly. The decoder will run all pending
|
| - * calls to completion. The plugin should make no further calls to the decoder
|
| - * other than GetPicture() and RecyclePicture() until the decoder signals
|
| - * completion by running the callback. Just before completion, any pending
|
| - * GetPicture() call will complete by running the callback with result
|
| - * PP_ERROR_ABORTED to signal that no more pictures are available.
|
| + * Flushes the decoder. The plugin should call Flush() when it reaches the
|
| + * end of its video stream in order to stop cleanly. The decoder will run any
|
| + * pending Decode() call to completion. The plugin should make no further
|
| + * calls to the decoder other than GetPicture() and RecyclePicture() until
|
| + * the decoder signals completion by running |callback|. Just before
|
| + * completion, any pending GetPicture() call will complete by running its
|
| + * callback with result PP_ERROR_ABORTED to signal that no more pictures are
|
| + * available. The plugin should recycle any pictures it is using before
|
| + * resuming decoding.
|
| *
|
| * @param[in] video_decoder A <code>PP_Resource</code> identifying the video
|
| * decoder.
|
| @@ -181,15 +189,18 @@ struct PPB_VideoDecoder_0_1 { /* dev */
|
| * completion.
|
| *
|
| * @return An int32_t containing an error code from <code>pp_errors.h</code>.
|
| + * Returns PP_ERROR_FAILED if the decoder isn't initialized.
|
| */
|
| int32_t (*Flush)(PP_Resource video_decoder,
|
| struct PP_CompletionCallback callback);
|
| /**
|
| * Resets the decoder as quickly as possible. The plugin can call Reset() to
|
| - * skip to another position in the video stream. Pending calls to Decode() and
|
| - * GetPicture()) are immediately aborted, causing their callbacks to run with
|
| - * PP_ERROR_ABORTED. The plugin should not make any further calls to the
|
| - * decoder until the decoder signals completion by running |callback|.
|
| + * skip to another position in the video stream. After Reset() returns, any
|
| + * pending calls to Decode() and GetPicture()) abort, causing their callbacks
|
| + * to run with PP_ERROR_ABORTED. The plugin should not make further calls to
|
| + * the decoder until the decoder signals completion by running |callback|.
|
| + * The pictures in use by the plugin remain valid until decoding is resumed,
|
| + * but need not be recycled.
|
| *
|
| * @param[in] video_decoder A <code>PP_Resource</code> identifying the video
|
| * decoder.
|
| @@ -197,6 +208,7 @@ struct PPB_VideoDecoder_0_1 { /* dev */
|
| * completion.
|
| *
|
| * @return An int32_t containing an error code from <code>pp_errors.h</code>.
|
| + * Returns PP_ERROR_FAILED if the decoder isn't initialized.
|
| */
|
| int32_t (*Reset)(PP_Resource video_decoder,
|
| struct PP_CompletionCallback callback);
|
|
|