![]() |
![]() |
Codec Engine Application Programming Interface (API)
ce-w08
|
Defines the run time output arguments for all IVIDENC1 instance objects. More...
#include <ividenc1.h>
Data Fields | |
XDAS_Int32 | size |
XDAS_Int32 | extendedError |
Extended error information. | |
XDAS_Int32 | bytesGenerated |
XDAS_Int32 | encodedFrameType |
Video frame types. | |
XDAS_Int32 | inputFrameSkip |
Video frame skipping modes. | |
XDAS_Int32 | outputID |
XDM1_SingleBufDesc | encodedBuf |
IVIDEO1_BufDesc | reconBufs |
Defines the run time output arguments for all IVIDENC1 instance objects.
@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.
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 IVIDENC1_Fxns::process()
XDAS_Int32 IVIDENC1_OutArgs::size |
Size of this structure in bytes. Because this structure can be extended, this field must be correctly set by the caller.
XDAS_Int32 IVIDENC1_OutArgs::extendedError |
Extended error information.
XDAS_Int32 IVIDENC1_OutArgs::bytesGenerated |
Number of bytes generated during the IVIDENC1_Fxns::process() call.
XDAS_Int32 IVIDENC1_OutArgs::encodedFrameType |
Video frame types.
@remarks For the various @c IVIDEO_xy_FRAME values, this frame type is interlaced where both top and bottom fields are provided in a single frame. The first field is an "x" frame, the second field is "y" field. @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.
@sa IVIDEO_FrameType
XDAS_Int32 IVIDENC1_OutArgs::inputFrameSkip |
Video frame skipping modes.
@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.
@sa IVIDEO_SkipMode
XDAS_Int32 IVIDENC1_OutArgs::outputID |
Output ID corresponding with the encoded buffer. This shall also be used to free up the corresponding image buffer for further use by client application code.
XDM1_SingleBufDesc IVIDENC1_OutArgs::encodedBuf |
The encoder fills the buffer with the encoded bitstream. In case of sequences having I & P frames only, these values are identical to outBufs
passed in IVIDENC1_Fxns::process().
encodedBuf.bufSize
field returned corresponds to the actual valid size of the memory buffer. See the bytesGenerated
field for how much data is in this buffer.outputID
and encodedBuf
together provide info relating to the corresponding encoded image buffer. IVIDEO1_BufDesc IVIDENC1_OutArgs::reconBufs |
Reconstruction frames.
@remarks These output buffers correspond to @c outBufs->bufs[1], @c outBufs->bufs[2], and @c outBufs->bufs[3]. @remarks @c reconBufs.bufDesc[0].buf is equivalent to @c outBufs->bufs[1], @c reconBufs.bufDesc[1].buf is equivalent to @c outBufs->bufs[2], and @c reconBufs.bufDesc[2].buf is equivalent to @c outBufs->bufs[3].