Frame properties

The video capture API includes arrays for storing and communicating video frame properties.

Frame property arrays

The video capture API uses the arrays below for video frame properties. All these properties (except CAPTURE_PROPERTY_FRAME_BUFFERS, which is a pointer to the capture buffers) are indexed by the buffer index:

CAPTURE_PROPERTY_FRAME_BUFFERS
CAPTURE_PROPERTY( 'Q', 'F', 'B', 'A' )
Read/Write [] void*
Pointers to the video capture buffers.
CAPTURE_PROPERTY_FRAME_TIMESTAMP
CAPTURE_PROPERTY( 'Q', 'F', 'B', 'T' )
Read [] uint64_t
An array of CLOCK_MONOTONIC timestamps.
CAPTURE_PROPERTY_FRAME_TIMECODE
CAPTURE_PROPERTY( 'Q', 'F', 'B', 'C' )
Read [] struct smpte_timestamp
An array of SMTPE timestamps.
CAPTURE_PROPERTY_FRAME_SEQNO
CAPTURE_PROPERTY( 'Q', 'F', 'B', 'S' )
Read [] uint32_t
An array of frame sequence numbers.
CAPTURE_PROPERTY_FRAME_FLAGS
CAPTURE_PROPERTY( 'Q', 'F', 'B', 'F' )
Read [] uint32_t
An array of frame flags. See "Frame flags" below.
CAPTURE_PROPERTY_FRAME_NBYTES
CAPTURE_PROPERTY( 'Q', 'F', 'B', 'B' )
Read [] uint32_t
An array of frame sizes, in bytes.
CAPTURE_PROPERTY_FRAME_NBUFFERS
CAPTURE_PROPERTY( 'Q', 'F', 'B', 'N' )
Read/Writer uint32_t
The number of destination buffers that have been specified in CAPTURE_PROPERTY_FRAME_BUFFERS.

For information about how to use arrays, see "Properties applied to arrays".

Frame flags

The following flags specify properties for the CAPTURE_PROPERTY_FRAME_FLAGS array:

CAPTURE_FRAME_FLAG_ERROR
0x0001
There is an error in the frame.
CAPTURE_FRAME_FLAG_INTERLACED
0x0002
The frame is interlaced. For more information about interlacing, see "Deinterlacing enumerated values".
CAPTURE_FRAME_FLAG_FIELD_BOTTOM
0x0004
TBD