![]() |
![]() |
Defines all of the operations on IAUDDEC1 objects. More...
#include <iauddec1.h>

Data Fields | |
| IALG_Fxns | ialg |
| XDAS_Int32(* | process )(IAUDDEC1_Handle handle, XDM1_BufDesc *inBufs, XDM1_BufDesc *outBufs, IAUDDEC1_InArgs *inArgs, IAUDDEC1_OutArgs *outArgs) |
| Basic audio decoding call. | |
| XDAS_Int32(* | control )(IAUDDEC1_Handle handle, IAUDDEC1_Cmd id, IAUDDEC1_DynamicParams *params, IAUDDEC1_Status *status) |
| Control behaviour of an algorithm. | |
Defines all of the operations on IAUDDEC1 objects.
XDAIS algorithm interface.
| XDAS_Int32(* IAUDDEC1_Fxns::process)(IAUDDEC1_Handle handle, XDM1_BufDesc *inBufs, XDM1_BufDesc *outBufs, IAUDDEC1_InArgs *inArgs, IAUDDEC1_OutArgs *outArgs) |
Basic audio decoding call.
| [in] | handle | Handle to an algorithm instance. |
| [in,out] | inBufs | Input buffer descriptors. |
| [in,out] | outBufs | Output buffer descriptors. The algorithm may modify the output buffer pointers. |
| [in] | inArgs | Input arguments. This is a required parameter. |
| [out] | outArgs | Ouput results. This is a required parameter. |
handle must be a valid algorithm instance handle.inArgs must not be NULL, and must point to a valid IAUDDEC1_InArgs structure.outArgs must not be NULL, and must point to a valid IAUDDEC1_OutArgs structure.inBufs must not be NULL, and must point to a valid XDM1_BufDesc structure.inBufs->descs[0].buf must not be NULL, and must point to a valid buffer of data that is at least inBufs->descs[0].bufSize bytes in length.outBufs must not be NULL, and must point to a valid XDM1_BufDesc structure.outBufs->descs[0].buf must not be NULL, and must point to a valid buffer of data that is at least outBufs->descs[0].bufSize bytes in length.inBufs and outBufs are physically contiguous and owned by the calling application.inArgs.inBufs, with the exception of inBufs.descs[].accessMask. That is, the data and buffers pointed to by these parameters must be treated as read-only.XDM1_BufDesc::descs[].accessMask field in both inBufs and outBufs. For example, if the algorithm only read from inBufs.descs[0].buf using the algorithm processor, it could utilize XDM_SETACCESSMODE_READ to update the appropriate accessMask fields. The application may utilize these returned values to appropriately manage cache.inBufs and outBufs are owned by the calling application.| IAUDDEC1_EOK | Success. |
| IAUDDEC1_EFAIL | General failure. See IAUDDEC1_Status::extendedError for more detailed further error conditions. |
| IAUDDEC1_EUNSUPPORTED | Request is unsupported. |
| XDAS_Int32(* IAUDDEC1_Fxns::control)(IAUDDEC1_Handle handle, IAUDDEC1_Cmd id, IAUDDEC1_DynamicParams *params, IAUDDEC1_Status *status) |
Control behaviour of an algorithm.
| [in] | handle | Handle to an algorithm instance. |
| [in] | id | Command id. See XDM_CmdId. |
| [in] | params | Dynamic parameters. This is a required parameter. |
| [out] | status | Output results. This is a required parameter. |
handle must be a valid algorithm instance handle.params must not be NULL, and must point to a valid IAUDDEC1_DynamicParams structure.status must not be NULL, and must point to a valid IAUDDEC1_Status structure.status->data field, it must be physically contiguous and owned by the calling application.params. That is, the data pointed to by this parameter must be treated as read-only.status->data field, it is owned by the calling application.| IAUDDEC1_EOK | Success. |
| IAUDDEC1_EFAIL | General failure. See IAUDDEC1_Status::extendedError for more detailed further error conditions. |
| IAUDDEC1_EUNSUPPORTED | Request is unsupported. |