Codec Engine Application Programming Interface (API)  ce-w08
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Data Fields
IVIDDEC3_DynamicParams Struct Reference

This structure defines the algorithm parameters that can be modified after creation via IVIDDEC3_Fxns.control() calls. More...

#include <ividdec3.h>

Collaboration diagram for IVIDDEC3_DynamicParams:
Collaboration graph

Data Fields

XDAS_Int32 size
XDAS_Int32 decodeHeader
 Decode entire access unit or only header.
XDAS_Int32 displayWidth
XDAS_Int32 frameSkipMode
 Video frame skip features for video decoder.
XDAS_Int32 newFrameFlag
XDM_DataSyncPutFxn putDataFxn
XDM_DataSyncHandle putDataHandle
XDM_DataSyncGetFxn getDataFxn
XDM_DataSyncHandle getDataHandle
XDM_DataSyncPutBufferFxn putBufferFxn
XDM_DataSyncHandle putBufferHandle
XDAS_Int32 lateAcquireArg

Detailed Description

This structure defines the algorithm parameters that can be modified after creation via IVIDDEC3_Fxns.control() calls.

@remarks    It is not necessary that a given implementation support all
            dynamic parameters to be configurable at run time.  If a
            particular algorithm does not support run-time updates to
            a parameter that the application is attempting to change
            at runtime, it may indicate this as an error.

@remarks This structure may be extended by individual codec implementations allowing customization with vendor specific parameters.  The presence of vendor specific extensions will be detected by the value of the @c size parameter.
Remarks:
The size field must be correctly set by the caller. See https://processors.wiki.ti.com/index.php/Extending_data_structures_in_XDM for more details.
@sa         IVIDDEC3_Fxns::control()

Field Documentation

XDAS_Int32 IVIDDEC3_DynamicParams::size

Size of this structure in bytes. Because this structure can be extended, this field must be correctly set by the caller.

XDAS_Int32 IVIDDEC3_DynamicParams::decodeHeader

Decode entire access unit or only header.

@remarks This enumeration data type should not be used for storage, but rather only for its constant values.

@remarks This enumeration defines a base set of values.  Algorithms which require proprietary enumeration values may define them - much like extended fields in base structures.  These extended enums should be between #XDM_CUSTOMENUMBASE and 0x7FFF.
See also:
XDM_CUSTOMENUMBASE

                                 @sa XDM_DecMode
XDAS_Int32 IVIDDEC3_DynamicParams::displayWidth

Pitch. If set to zero, use the decoded image width. Else, use given display width in pixels. Display width has to be greater than or equal to image width.

XDAS_Int32 IVIDDEC3_DynamicParams::frameSkipMode

Video frame skip features for video decoder.

@remarks This enumeration data type should not be used for storage, but rather only for its constant values.

@remarks This enumeration defines a base set of values.  Algorithms which require proprietary enumeration values may define them - much like extended fields in base structures.  These extended enums should be between #XDM_CUSTOMENUMBASE and 0x7FFF.
See also:
XDM_CUSTOMENUMBASE

                                 @sa IVIDEO_FrameSkip
XDAS_Int32 IVIDDEC3_DynamicParams::newFrameFlag

Flag to indicate that the algorithm should start a new frame.

Remarks:
Valid values are XDAS_TRUE and XDAS_FALSE.
This is useful for error recovery, for example when the end of frame cannot be detected by the codec but is known to the application.
XDM_DataSyncPutFxn IVIDDEC3_DynamicParams::putDataFxn

Optional datasync "put data" function.

                                @remarks   Apps/frameworks that don't
                                           support datasync should set
                                           this to NULL.

                                @remarks   This function is provided
                                           by the app/framework to the
                                           video decoder.  The decoder
                                           calls this function when
                                           sub-frame data has been put
                                           into an output buffer and is
                                           available.
XDM_DataSyncHandle IVIDDEC3_DynamicParams::putDataHandle

Datasync "put data" handle

                                @remarks   This is a handle which the
                                           codec must provide when
                                           calling the app-registered
                                           IVIDDEC3_DynamicParams.putDataFxn().

                                @remarks   Apps/frameworks that don't
                                           support datasync should set
                                           this to NULL.

                                @remarks   For an algorithm, this handle
                                           is read-only; it must not be
                                           modified when calling
                                           the app-registered
                                           IVIDDEC3_DynamicParams.putDataFxn().

                                @remarks   The app/framework can use
                                           this handle to differentiate
                                           callbacks from different
                                           algorithms.
XDM_DataSyncGetFxn IVIDDEC3_DynamicParams::getDataFxn

Datasync "get data" function.

                                @remarks   This function is provided
                                           by the app/framework to the
                                           video decoder.  The decoder
                                           calls this function to get
                                           partial compressed bit-stream
                                           data from the app/framework.

                                @remarks   Apps/frameworks that don't
                                           support datasync should set
                                           this to NULL.
XDM_DataSyncHandle IVIDDEC3_DynamicParams::getDataHandle

Datasync "get data" handle

                                @remarks   This is a handle which the
                                           codec must provide when
                                           calling @c getDataFxn.

                                @remarks   Apps/frameworks that don't
                                           support datasync should set
                                           this to NULL.

                                @remarks   For an algorithm, this handle
                                           is read-only; it must not be
                                           modified when calling
                                           the app-registered
                                           IVIDDEC3_DynamicParams.getDataFxn().

                                @remarks   The app/framework can use
                                           this handle to differentiate
                                           callbacks from different
                                           algorithms.
XDM_DataSyncPutBufferFxn IVIDDEC3_DynamicParams::putBufferFxn

Datasync "put buffer" function.

                                @remarks   This function is provided
                                           by the app/framework to the
                                           video decoder.  The decoder
                                           calls this function to release
                                           consumed, partial compressed
                                           bit-stream data buffers to the
                                           app/framework.

                                @remarks   Apps/frameworks that don't
                                           support datasync should set
                                           this to NULL.
XDM_DataSyncHandle IVIDDEC3_DynamicParams::putBufferHandle

Datasync "put buffer" handle

                                @remarks   This is a handle which the
                                           codec must provide when
                                           calling the app-registered
                                           IVIDDEC3_DynamicParam.putBufferFxn().

                                @remarks   Apps/frameworks that don't
                                           support datasync should set
                                           this to NULL.

                                @remarks   For an algorithm, this handle
                                           is read-only; it must not be
                                           modified when calling
                                           the app-registered
                                           IVIDDEC3_DynamicParams.putBufferFxn().

                                @remarks   The app/framework can use
                                           this handle to differentiate
                                           callbacks from different
                                           algorithms.
XDAS_Int32 IVIDDEC3_DynamicParams::lateAcquireArg

Argument used during late acquire.

                                @remarks   For all control() commands
                                           other than
                                           #XDM_SETLATEACQUIREARG, this
                                           field is ignored and can
                                           therefore be set by the
                                           caller to any value.

                                @remarks   This field is used to
                                           provide the
                                           'late acquire' arg required by
                                           #XDM_SETLATEACQUIREARG.

                                @remarks   Late acquire support is
                                           an optional feature for
                                           video decoders.  If the
                                           codec supports late
                                           acquisition of resources,
                                           and the application has supplied
                                           a lateAcquireArg value (via
                                           #XDM_SETLATEACQUIREARG), then the
                                           codec must also provide this
                                           @c lateAcquireArg value when
                                           requesting resources (i.e.
                                           during their call to
                                           acquire() when requesting
                                           the resource).

The documentation for this struct was generated from the following file:
Copyright 2013, Texas Instruments Incorporated