IVIDENC2_OutArgs Struct Reference
[IVIDENC2 - XDM Video Encoder Interface (Beta)]

Defines the run time output arguments for all IVIDENC2 instance objects. More...

#include <ividenc2.h>

Collaboration diagram for IVIDENC2_OutArgs:
Collaboration graph
[legend]

Data Fields

XDAS_Int32 size
XDAS_Int32 extendedError
XDAS_Int32 bytesGenerated
XDAS_Int32 encodedFrameType
XDAS_Int32 inputFrameSkip
XDAS_Int32 freeBufID [IVIDEO2_MAX_IO_BUFFERS]
IVIDEO2_BufDesc reconBufs

Detailed Description

Defines the run time output arguments for all IVIDENC2 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 size parameter.
The size field must be correctly set by the caller.
See also:
IVIDENC2_Fxns::process()

Field Documentation

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

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

Number of bytes generated during the IVIDENC2_Fxns::process() call.

Video frame types.

Remarks:
For the various 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.
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_FrameType

Video frame skipping modes.

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_SkipMode
XDAS_Int32 IVIDENC2_OutArgs::freeBufID[IVIDEO2_MAX_IO_BUFFERS]

This is an array of inputID's corresponding to the buffers that have been unlocked in the current process call.

Remarks:
The buffers released by the algorithm are indicated by their non-zero ID (previously provided via IVIDENC2_InArgs::inputID).
A value of zero (0) indicates an invalid ID. The first zero entry in array will indicate end of valid freeBufIDs within the array. Hence the application can stop searching the array when it encounters the first zero entry.
If no buffer was unlocked in the process call, freeBufID[0] will have a value of zero.
See also:
IVIDENC2_InArgs::inputID

Reconstruction frames.


The documentation for this struct was generated from the following file:
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Defines

Copyright 2010, Texas Instruments Incorporated