Defines all of the operations on IVIDENC2 objects.
More...
#include <ividenc2.h>
Detailed Description
Defines all of the operations on IVIDENC2 objects.
Field Documentation
XDAIS algorithm interface.
- See also:
- IALG_Fxns
Basic video encoding call.
- Parameters:
-
[in] | handle | Handle to an algorithm instance. |
[in,out] | inBufs | Input video 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. |
- Precondition:
inBufs
must not be NULL, and must point to a valid IVIDEO2_BufDesc structure.
-
inBufs->numPlanes
will indicate the total number of input buffers supplied for input frame in the inBufs->planeDesc
[] array.
-
inBufs->numMetaPlanes
will indicate the total number of input buffers supplied for meta data planes in the inBufs->metadataPlaneDesc
[] array.
-
outBufs
must not be NULL, and must point to a valid XDM2_BufDesc structure.
-
outBufs->buf
[0] must not be NULL, and must point to a valid buffer of data that is at least outBufs->bufSizes
[0] bytes in length.
-
inArgs
must not be NULL, and must point to a valid IVIDENC2_InArgs structure.
-
outArgs
must not be NULL, and must point to a valid IVIDENC2_OutArgs structure.
-
The buffers in
inBuf
and outBuf
are physically contiguous and owned by the calling application.
- Postcondition:
- The algorithm must not modify the contents of
inArgs
.
-
The algorithm must not modify the contents of
inBufs
, with the exception of inBufs.bufDesc
[].accessMask. That is, the data and buffers pointed to by these parameters must be treated as read-only.
-
The algorithm must appropriately set/clear the IVIDEO2_BufDesc.planeDesc[].accessMask and IVIDEO2_BufDesc.metadataPlaneDesc[].accessMask fields in
inBufs
to indicate the mode in which each of the respective buffers were read. For example, if the algorithm only read from inBufs.planeDesc
[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.
-
The buffers in
inBufs
are owned by the calling application.
- Return values:
-
- Todo:
- Need to review these comments. Not sure
inBufs
and outBufs
are correctly described.
Control behavior of an algorithm.
- Parameters:
-
[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. |
- Precondition:
handle
must be a valid algorithm instance handle.
-
params
must not be NULL, and must point to a valid IVIDENC2_DynamicParams structure.
-
status
must not be NULL, and must point to a valid IVIDENC2_Status structure.
-
If a buffer is provided in the
status->data
field, it must be physically contiguous and owned by the calling application.
- Postcondition:
- The algorithm must not modify the contents of
params
. That is, the data pointed to by this parameter must be treated as read-only.
-
If a buffer was provided in the
status->data
field, it is owned by the calling application.
- Return values:
-
The documentation for this struct was generated from the following file: