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

Detailed buffer descriptor for video buffers. More...

#include <ivideo.h>

Collaboration diagram for IVIDEO1_BufDesc:
Collaboration graph

Data Fields

XDAS_Int32 numBufs
XDAS_Int32 frameWidth
XDAS_Int32 frameHeight
XDAS_Int32 framePitch
XDM1_SingleBufDesc bufDesc [3]
XDAS_Int32 extendedError
 Extended error information.
XDAS_Int32 frameType
 Video frame types.
XDAS_Int32 topFieldFirstFlag
XDAS_Int32 repeatFirstFieldFlag
XDAS_Int32 frameStatus
 Video output buffer status.
XDAS_Int32 repeatFrame
XDAS_Int32 contentType
XDAS_Int32 chromaFormat
 Chroma formats.

Detailed Description

Detailed buffer descriptor for video buffers.


Field Documentation

XDAS_Int32 IVIDEO1_BufDesc::numBufs

Number of buffers in bufDesc[].

XDAS_Int32 IVIDEO1_BufDesc::frameWidth

Width of the video frame.

XDAS_Int32 IVIDEO1_BufDesc::frameHeight

Height of the video frame.

XDAS_Int32 IVIDEO1_BufDesc::framePitch

Frame pitch used to store the frame.

                                @remarks   This field can also be used to
                                           indicate the padded width.
XDM1_SingleBufDesc IVIDEO1_BufDesc::bufDesc[3]

Picture buffers.

XDAS_Int32 IVIDEO1_BufDesc::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
XDAS_Int32 IVIDEO1_BufDesc::frameType

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.
See also:
XDM_CUSTOMENUMBASE

                                 @sa IVIDEO_FrameType
XDAS_Int32 IVIDEO1_BufDesc::topFieldFirstFlag

Flag to indicate when the application should display the top field first.

Remarks:
Valid values are XDAS_TRUE and XDAS_FALSE.
This field is only applicable for interlaced content, not progressive.
This field does not apply to encoder recon bufs.
XDAS_Int32 IVIDEO1_BufDesc::repeatFirstFieldFlag

Flag to indicate when the first field should be repeated.

Remarks:
Valid values are XDAS_TRUE and XDAS_FALSE.
This field is only applicable for interlaced content, not progressive.
This field does not apply to encoder recon bufs.
XDAS_Int32 IVIDEO1_BufDesc::frameStatus

Video output buffer status.

@remarks    Ownership of the buffers, either by application or algorithm,
            is conveyed via these values.

@remarks    This reflects the status of ALL output buffers.  For example,
            if video decoded output is in 4:2:0 format, all the 3
            output buffers' status is described by this value.
            Similarly, for 4:2:2 formatted buffers, this value
            describes the single buffer's status.

@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_OutputFrameStatus

                                 @remarks   This field does not apply to
                                            encoder recon bufs.
XDAS_Int32 IVIDEO1_BufDesc::repeatFrame

Number of times the display process needs to repeat the displayed progressive frame.

Remarks:
This information is useful for progressive content when the decoder expects the display process to repeat the displayed frame for a certain number of times. This is useful for pulldown (frame/field repetition by display system) support where the display frame rate is increased without increasing the decode frame rate.
The default value is 0.
This field does not apply to encoder recon bufs.
XDAS_Int32 IVIDEO1_BufDesc::contentType

Content type of the buffer.

                                @remarks   This is useful when the
                                           content is both
                                           interlaced and
                                           progressive.  The
                                           display process can
                                           use this field to
                                           determine how to
                                           render the display
                                           buffer.

                                @sa        IVIDEO_ContentType
XDAS_Int32 IVIDEO1_BufDesc::chromaFormat

Chroma formats.

@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_ChromaFormat

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