Data Structures |
struct | IVIDENC2_CodecClassConfig |
| Definition of IVIDENC2 codec class configurable parameters. More...
|
Defines |
#define | VIDENC2_EOK IVIDENC2_EOK |
#define | VIDENC2_EFAIL IVIDENC2_EFAIL |
#define | VIDENC2_EUNSUPPORTED IVIDENC2_EUNSUPPORTED |
#define | VIDENC2_ETIMEOUT VISA_ETIMEOUT |
#define | VIDENC2_FOREVER VISA_FOREVER |
Typedefs |
typedef VISA_Handle | VIDENC2_Handle |
| Opaque handle to a VIDENC2 codec.
|
typedef struct IVIDENC2_Params | VIDENC2_Params |
typedef IVIDENC2_InArgs | VIDENC2_InArgs |
typedef IVIDENC2_OutArgs | VIDENC2_OutArgs |
typedef IVIDENC2_Cmd | VIDENC2_Cmd |
typedef IVIDENC2_DynamicParams | VIDENC2_DynamicParams |
typedef IVIDENC2_Status | VIDENC2_Status |
typedef struct
IVIDENC2_CodecClassConfig | IVIDENC2_CodecClassConfig |
| Definition of IVIDENC2 codec class configurable parameters.
|
Functions |
Int32 | VIDENC2_control (VIDENC2_Handle handle, VIDENC2_Cmd id, VIDENC2_DynamicParams *params, VIDENC2_Status *status) |
| Execute the control() method in this instance of a video encoder algorithm.
|
VIDENC2_Handle | VIDENC2_create (Engine_Handle e, String name, VIDENC2_Params *params) |
| Create an instance of a video encoder algorithm.
|
Void | VIDENC2_delete (VIDENC2_Handle handle) |
| Delete the instance of a video encoder algorithm.
|
Int32 | VIDENC2_process (VIDENC2_Handle handle, IVIDEO2_BufDesc *inBufs, XDM2_BufDesc *outBufs, VIDENC2_InArgs *inArgs, VIDENC2_OutArgs *outArgs) |
| Execute the process() method in this instance of a video encoder algorithm.
|
XDAS_Int32 | VIDENC2_processAsync (VIDENC2_Handle handle, IVIDEO2_BufDesc *inBufs, XDM2_BufDesc *outBufs, IVIDENC2_InArgs *inArgs, IVIDENC2_OutArgs *outArgs) |
| Perform asynchronous submission to this instance of a video decoder algorithm.
|
XDAS_Int32 | VIDENC2_processWait (VIDENC2_Handle handle, IVIDEO2_BufDesc *inBufs, XDM2_BufDesc *outBufs, IVIDENC2_InArgs *inArgs, IVIDENC2_OutArgs *outArgs, UInt timeout) |
| Wait for a return message from a previous invocation of VIDENC2_processAsync() in this instance of an video decoder algorithm.
|
Detailed Description
This is the VIDENC2 video encoder interface. Several of the data types in this API are specified by the XDM IVIDENC2 interface; please see the XDM documentation for those details.
Define Documentation
#define VIDENC2_EOK IVIDENC2_EOK |
#define VIDENC2_EFAIL IVIDENC2_EFAIL |
#define VIDENC2_EUNSUPPORTED IVIDENC2_EUNSUPPORTED |
#define VIDENC2_ETIMEOUT VISA_ETIMEOUT |
#define VIDENC2_FOREVER VISA_FOREVER |
Special value for timeout parameter indicating never timeout.
Typedef Documentation
Opaque handle to a VIDENC2 codec.
Defines the creation time parameters for all IVIDENC2 instance objects.
This structure defines the algorithm parameters that can be modified after creation via control() calls.
- See also:
- IVIDENC2_Fxns::control()
Function Documentation
Execute the control() method in this instance of a video encoder algorithm.
- Parameters:
-
[in] | handle | Handle to a created video 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) video encoder handle and the video encoder is in the created state.
- Return values:
-
- See also:
- VIDENC2_create()
-
VIDENC2_delete()
-
IVIDENC2_Fxns::process()
Create an instance of a video encoder algorithm.
Instance handles must not be concurrently accessed by multiple threads; each thread must either obtain its own handle (via VIDENC2_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 video encoder to create. |
[in] | params | Creation parameters. |
- Return values:
-
NULL | An error has occurred. |
non-NULL | The handle to the newly created video encoder instance. |
- See also:
- Engine_open()
-
VIDENC2_delete()
Delete the instance of a video encoder algorithm.
- Parameters:
-
[in] | handle | Handle to a created video encoder instance. |
- Precondition:
handle
is a valid (non-NULL) handle which is in the created state.
- Postcondition:
- All resources allocated as part of the VIDENC2_create() operation (memory, DMA channels, etc.) are freed.
- See also:
- VIDENC2_create()
Execute the process() method in this instance of a video encoder algorithm.
- Parameters:
-
[in] | handle | Handle to a created video 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) video encoder handle and the video encoder is in the created state.
- Return values:
-
- See also:
- VIDENC2_create()
-
VIDENC2_delete()
-
VIDENC2_control()
-
VIDENC2_processAsync()
-
VIDENC2_processWait()
-
IVIDENC2_Fxns::process() - the reflected algorithm interface, which may contain further usage details.
Perform asynchronous submission to this instance of a video decoder algorithm.
- Parameters:
-
[in] | handle | Handle to a created video decoder 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) video decoder handle and the video decoder is in the created state.
- Return values:
-
- See also:
- VIDENC2_create()
-
VIDENC2_delete()
-
VIDENC2_control()
-
VIDENC2_process()
-
VIDENC2_processWait()
-
IVIDENC2_Fxns::process()
Wait for a return message from a previous invocation of VIDENC2_processAsync() in this instance of an video decoder algorithm.
- Parameters:
-
[in] | handle | Handle to a created video decoder 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 -> VIDENC2_FOREVER) |
- Precondition:
handle
is a valid (non-NULL) video decoder handle and the video decoder is in the created state.
- Return values:
-
- See also:
- VIDENC2_create()
-
VIDENC2_delete()
-
VIDENC2_control()
-
VIDENC2_process()
-
VIDENC2_processAsync()