XDAIS  dais-x04
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Groups Pages
Data Fields
IVIDENC2_Status Struct Reference

Defines instance status parameters. More...

#include <ividenc2.h>

Collaboration diagram for IVIDENC2_Status:
Collaboration graph

Data Fields

XDAS_Int32 size
XDAS_Int32 extendedError
 Extended error information.
XDM1_SingleBufDesc data
XDAS_Int32 encodingPreset
XDAS_Int32 rateControlPreset
 Video rate control presets.
XDAS_Int32 maxInterFrameInterval
XDAS_Int32 inputChromaFormat
XDAS_Int32 inputContentType
XDAS_Int32 operatingMode
XDAS_Int32 profile
XDAS_Int32 level
XDAS_Int32 inputDataMode
XDAS_Int32 outputDataMode
XDAS_Int32 numInputDataUnits
XDAS_Int32 numOutputDataUnits
XDAS_Int32 configurationID
XDM1_AlgBufInfo bufInfo
XDAS_Int32 metadataType [3]
IVIDENC2_DynamicParams encDynamicParams

Detailed Description

Defines instance status parameters.

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 size parameter.
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.
See also:
IVIDENC2_Fxns::control()

Field Documentation

XDAS_Int32 IVIDENC2_Status::size

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

XDAS_Int32 IVIDENC2_Status::extendedError

Extended error information.

Remarks:
When an internal error occurs, the algorithm will return an error return value (e.g. EFAIL, EUNSUPPORTED)
The value of each enum is the bit which is set.
Bits 31-16 are reserved. Bits 7-0 are codec and implementation specific.
The algorithm can set multiple bits to 1 based on conditions. e.g. it will set bits XDM_FATALERROR (fatal) and XDM_UNSUPPORTEDPARAM (unsupported params) in case of unsupported run time parameters.
This enumeration data type should not be used for storage, but rather only for its constant values.

See also:
XDM_ErrorBit
XDM1_SingleBufDesc IVIDENC2_Status::data

Buffer descriptor for data passing.

Remarks:
If this field is not used, the application must set data.buf to NULL.
This buffer can be used as either input or output, depending on the command.
The buffer will be provided by the application, and returned to the application upon return of the IVIDENC2_Fxns.control() call. The algorithm must not retain a pointer to this data.
See also:
XDM_GETVERSION
XDAS_Int32 IVIDENC2_Status::encodingPreset

Encoding preset.

XDAS_Int32 IVIDENC2_Status::rateControlPreset

Video rate control presets.

Remarks:
This enumeration data type should not be used for storage, but rather only for its constant values.
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

See also:
IVIDEO_RateControlPreset
XDAS_Int32 IVIDENC2_Status::maxInterFrameInterval

I to P frame distance. e.g. = 1 if no B frames, 2 to insert one B frame.

Remarks:
This is used for setting the maximum number of B frames between two refererence frames.
XDAS_Int32 IVIDENC2_Status::inputChromaFormat

Chroma format for the input buffer.

See also:
XDM_ChromaFormat
XDAS_Int32 IVIDENC2_Status::inputContentType

Video content type of the buffer being encoded.

See also:
IVIDEO_ContentType
XDAS_Int32 IVIDENC2_Status::operatingMode

Video encoding mode of operation.

See also:
IVIDEO_OperatingMode
XDAS_Int32 IVIDENC2_Status::profile

Profile indicator of video codec.

See also:
IVIDENC2_DEFAULTPROFILE
IVIDENC2_Params.profile
XDAS_Int32 IVIDENC2_Status::level

Level indicator of video codec.

See also:
IVIDENC2_DEFAULTLEVEL
IVIDENC2_Params.level
XDAS_Int32 IVIDENC2_Status::inputDataMode
XDAS_Int32 IVIDENC2_Status::outputDataMode

Output data mode.

See also:
IVIDENC2_Params.outputDataMode
IVIDEO_DataMode
XDAS_Int32 IVIDENC2_Status::numInputDataUnits

Number of input slices/rows.

Remarks:
Units depend on the IVIDENC2_Params.inputDataMode, like number of slices/rows/blocks etc.
Ignored if IVIDENC2_Params.inputDataMode is set to full frame mode.
See also:
IVIDENC2_Params.inputDataMode
XDAS_Int32 IVIDENC2_Status::numOutputDataUnits

Number of output slices/rows.

Remarks:
Units depend on the outputDataMode, like number of slices/rows/blocks etc.
Ignored if IVIDENC2_Params.outputDataMode is set to full frame mode.
See also:
IVIDENC2_Params.outputDataMode
XDAS_Int32 IVIDENC2_Status::configurationID

Configuration ID of given codec.

Remarks:
This is used to differentiate multiple images of a vendor. It can be used by the framework to optimize the save/restore overhead of any resources used.
This can be useful in multichannel use case scenarios.
XDM1_AlgBufInfo IVIDENC2_Status::bufInfo

Input and output buffer information.

Remarks:
This field provides the application with the algorithm's buffer requirements. The requirements may vary depending on the current configuration of the algorithm instance.
See also:
IVIDENC2_Params
XDM1_AlgBufInfo
IVIDENC2_Fxns.process()
XDAS_Int32 IVIDENC2_Status::metadataType[3]

Type of each metadata plane.

See also:
IVIDEO_MetadataType
IVIDENC2_DynamicParams IVIDENC2_Status::encDynamicParams

Video encoder dynamic parameters.

Todo:
Need to better wordsmith this section.
Remarks:
In case of extened dynamic Params, alg can check the size of status or DynamicParams and return the parameters accordingly.

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