Buffer constants

Updated: April 19, 2023

Constants specifying item keys and a data locator type for QNX buffers

Synopsis:

#include <OMXAL/OpenMAXAL_QNX.h>

Keys for identifying buffer item types:

#define XAQ_ITEMKEY_NONE ((XAuint32)0x00000000)

Buffer is empty (itemData is NULL)

#define XAQ_ITEMKEY_EOS ((XAuint32)0x00000001)

End of stream (itemData is NULL)

#define XAQ_ITEMKEY_DISCONTINUITY ((XAuint32)0x00000002)

There's a discontinuity in playback, likely because of a seek operation (itemData is NULL)

#define XAQ_ITEMKEY_BUFFERQUEUEEVENT ((XAuint32)0x00000003)

An event affecting the buffer queue has occurred, such as playback starting or stopping (itemData is NULL)

#define XAQ_ITEMKEY_FORMAT_CHANGE ((XAuint32)0x00000004)

A format change, such as a video resizing, has occurred (itemData is NULL)

#define XAQ_ITEMKEY_LOST_FRAME ((XAuint32) 0x00000005)

A frame has been lost (itemData is NULL)

#define XAQ_ITEMKEY_TIMESTAMP ((XAuint32) 0x00000006)

Timestamp, which is saved in itemData as an int64_t

#define XAQ_ITEMKEY_DIRTY_RECTS ((XAuint32) 0x00000007)

Dirty rectangles for video frames. This applies to hardware platforms in which the video frames are larger than the actual content area, because the frames include metadata. In this case, itemData points to an integer array containing the offset from the top left corner and the dimensions of the video area that should be displayed. The array contains these values: [x, y, width, height].

#define XAQ_ITEMKEY_DECODER_CONFIG ((XAuint32) 0x00000008)

Decoder configuration data. The itemData field contains the number of configurations, as a uint8_t.

#define XAQ_ITEMKEY_USER_DATA ((XAuint32) 0x00000009)

A pointer to user data, which is saved in itemData as a uint8_t

#define XAQ_ITEMKEY_VIDEO ((XAuint32) 0x00000010)

Buffer item is a video packet. This key is used by multiplexers to distinguish audio and video packets. Here, itemData is NULL and itemSize is 0.

Data locator type for QNX buffers:

#define XA_DATALOCATOR_QNXBUFFERQUEUE ((XAuint32) 0x80000801)

Locator type for a QNX buffer queue data locator