AOMedia AV1 Codec

Functions

aom_codec_err_t aom_codec_set_frame_buffer_functions (aom_codec_ctx_t *ctx, aom_get_frame_buffer_cb_fn_t cb_get, aom_release_frame_buffer_cb_fn_t cb_release, void *cb_priv)
 Pass in external frame buffers for the decoder to use.
 

Detailed Description

The following function is required to be implemented for all decoders that advertise the AOM_CODEC_CAP_EXTERNAL_FRAME_BUFFER capability. Calling this function for codecs that don't advertise this capability will result in an error code being returned, usually AOM_CODEC_INCAPABLE.

Function Documentation

◆ aom_codec_set_frame_buffer_functions()

aom_codec_err_t aom_codec_set_frame_buffer_functions ( aom_codec_ctx_t * ctx,
aom_get_frame_buffer_cb_fn_t cb_get,
aom_release_frame_buffer_cb_fn_t cb_release,
void * cb_priv )

Pass in external frame buffers for the decoder to use.

Registers functions to be called when libaom needs a frame buffer to decode the current frame and a function to be called when libaom does not internally reference the frame buffer. This set function must be called before the first call to decode or libaom will assume the default behavior of allocating frame buffers internally.

Parameters
[in]ctxPointer to this instance's context
[in]cb_getPointer to the get callback function
[in]cb_releasePointer to the release callback function
[in]cb_privCallback's private data
Return values
AOM_CODEC_OKExternal frame buffers will be used by libaom.
AOM_CODEC_INVALID_PARAMOne or more of the callbacks were NULL.
AOM_CODEC_ERRORDecoder context not initialized.
AOM_CODEC_INCAPABLEAlgorithm not capable of using external frame buffers.
Note
When decoding AV1, the application may be required to pass in at least AOM_MAXIMUM_WORK_BUFFERS external frame buffers.