Image encoder codec interface
Data Structures |
struct | IIMGENC1_CodecClassConfig |
| Definition of IIMGENC1 codec class configurable parameters. More...
|
Defines |
#define | IMGENC1_EOK IIMGENC1_EOK |
#define | IMGENC1_EFAIL IIMGENC1_EFAIL |
#define | IMGENC1_EUNSUPPORTED IIMGENC1_EUNSUPPORTED |
#define | IMGENC1_ETIMEOUT VISA_ETIMEOUT |
#define | IMGENC1_FOREVER VISA_FOREVER |
Typedefs |
typedef VISA_Handle | IMGENC1_Handle |
| Opaque handle to a IMGENC1 codec.
|
typedef struct IIMGENC1_Params | IMGENC1_Params |
typedef IIMGENC1_InArgs | IMGENC1_InArgs |
typedef IIMGENC1_OutArgs | IMGENC1_OutArgs |
typedef IIMGENC1_Cmd | IMGENC1_Cmd |
typedef IIMGENC1_DynamicParams | IMGENC1_DynamicParams |
typedef IIMGENC1_Status | IMGENC1_Status |
Functions |
Int32 | IMGENC1_control (IMGENC1_Handle handle, IMGENC1_Cmd id, IMGENC1_DynamicParams *params, IMGENC1_Status *status) |
| Execute the control() method in this instance of an image encoder algorithm.
|
IMGENC1_Handle | IMGENC1_create (Engine_Handle e, String name, IMGENC1_Params *params) |
| Create an instance of an image encoder algorithm.
|
Void | IMGENC1_delete (IMGENC1_Handle handle) |
| Delete the instance of a image encoder algorithm.
|
Int32 | IMGENC1_process (IMGENC1_Handle handle, XDM1_BufDesc *inBufs, XDM1_BufDesc *outBufs, IMGENC1_InArgs *inArgs, IMGENC1_OutArgs *outArgs) |
| Execute the process() method in this instance of an image encoder algorithm.
|
XDAS_Int32 | IMGENC1_processAsync (IMGENC1_Handle handle, XDM1_BufDesc *inBufs, XDM1_BufDesc *outBufs, IIMGENC1_InArgs *inArgs, IIMGENC1_OutArgs *outArgs) |
| Perform asynchronous submission to this instance of a image encoder algorithm.
|
XDAS_Int32 | IMGENC1_processWait (IMGENC1_Handle handle, XDM1_BufDesc *inBufs, XDM1_BufDesc *outBufs, IIMGENC1_InArgs *inArgs, IIMGENC1_OutArgs *outArgs, UInt timeout) |
| Wait for a return message from a previous invocation of IMGENC1_processAsync() in this instance of an image encoder algorithm.
|
Detailed Description
This is the IMGENC1 image encoder codec interface. Several of the data types in this API are specified by the XDM IIMGENC1 interface; please see the XDM documentation for those details.
Define Documentation
#define IMGENC1_EOK IIMGENC1_EOK |
#define IMGENC1_EFAIL IIMGENC1_EFAIL |
#define IMGENC1_EUNSUPPORTED IIMGENC1_EUNSUPPORTED |
#define IMGENC1_ETIMEOUT VISA_ETIMEOUT |
#define IMGENC1_FOREVER VISA_FOREVER |
Special value for timeout parameter indicating never timeout.
Typedef Documentation
Opaque handle to a IMGENC1 codec.
Defines the creation time parameters for all IIMGENC1 instance objects.
Function Documentation
Execute the control() method in this instance of an image encoder algorithm.
- Parameters:
-
[in] | handle | Handle to a created image encoder instance. |
[in] | id | Command id for XDM control operation. |
[in] | params | Runtime control parameters used for encoding. |
[out] | status | Status info upon completion of encode operation. |
- Precondition:
handle
is a valid (non-NULL) image encoder handle and the image encoder is in the created state.
- Return values:
-
- See also:
- IMGENC1_create()
-
IMGENC1_delete()
-
IIMGENC1_Fxns::control()
Create an instance of an image encoder algorithm.
Instance handles must not be concurrently accessed by multiple threads; each thread must either obtain its own handle (via IMGENC1_create()) or explicitly serialize access to a shared handle.
- Parameters:
-
[in] | e | Handle to an opened engine. |
[in] | name | String identifier of the type of image encoder to create. |
[in] | params | Creation parameters. |
- Return values:
-
| NULL | An error has occurred. |
| non-NULL | The handle to the newly created image encoder instance. |
- See also:
- Engine_open()
-
IMGENC1_delete()
Delete the instance of a image encoder algorithm.
- Parameters:
-
[in] | handle | Handle to a created image encoder instance. |
- Precondition:
handle
is a valid (non-NULL) handle which is in the created state.
- Postcondition:
- All resources allocated as part of the IMGENC1_create() operation (memory, DMA channels, etc.) are freed.
- See also:
- IMGENC1_create()
Execute the process() method in this instance of an image encoder algorithm.
- Parameters:
-
[in] | handle | Handle to a created image encoder instance. |
[in] | inBufs | A buffer descriptor containing input buffers. |
[out] | outBufs | A buffer descriptor containing output buffers. |
[in] | inArgs | Input Arguments. |
[out] | outArgs | Output Arguments. |
- Precondition:
handle
is a valid (non-NULL) image encoder handle and the image encoder is in the created state.
- Return values:
-
- See also:
- IMGENC1_create()
-
IMGENC1_delete()
-
IMGENC1_control()
-
IMGENC1_processAsync()
-
IMGENC1_processWait()
-
IIMGENC1_Fxns::process()
Perform asynchronous submission to this instance of a image encoder algorithm.
- Parameters:
-
[in] | handle | Handle to a created image encoder instance. |
[in] | inBufs | A buffer descriptor containing input buffers. |
[out] | outBufs | A buffer descriptor containing output buffers. |
[in] | inArgs | Input Arguments. |
[out] | outArgs | Output Arguments. |
- Precondition:
handle
is a valid (non-NULL) image encoder handle and the image encoder is in the created state.
- Return values:
-
- See also:
- IMGENC1_create()
-
IMGENC1_delete()
-
IMGENC1_control()
-
IMGENC1_process()
-
IMGENC1_processWait()
-
IIMGENC1_Fxns::process()
Wait for a return message from a previous invocation of IMGENC1_processAsync() in this instance of an image encoder algorithm.
- Parameters:
-
[in] | handle | Handle to a created image encoder instance. |
[in] | inBufs | A buffer descriptor containing input buffers. |
[out] | outBufs | A buffer descriptor containing output buffers. |
[in] | inArgs | Input Arguments. |
[out] | outArgs | Output Arguments. |
[in] | timeout | Amount of "time" to wait (from 0 -> IMGENC1_FOREVER) |
- Precondition:
handle
is a valid (non-NULL) image encoder handle and the image encoder is in the created state.
- Return values:
-
- See also:
- IMGENC1_create()
-
IMGENC1_delete()
-
IMGENC1_control()
-
IMGENC1_process()
-
IMGENC1_processAsync()