API Reference
4-46
Field
Data Type
Input/
Output
Description
If
scatteredBlocksFlag
is set to
XDAS_FALSE
,
this field points directly to the start of the first block,
and is not treated as a pointer to an array.
If
scatteredBlocksFlag
is set to
XDAS_TRUE
,
this field points to an array of pointers to data blocks.
numBlocks
XDAS_Int32
Input/Ou
tput
Number of blocks available
varBlockSize
sFlag
XDAS_Int32
Input/Ou
tput
Flag indicating whether any of the data blocks vary in
size.
Valid values are
XDAS_TRUE
and
XDAS_FALSE
.
*blockSizes
XDAS_Int32
Input/Ou
tput
Variable block sizes array.
If
varBlockSizesFlag
is
XDAS_TRUE
, this array
contains the sizes of each block.
If
varBlockSizesFlag
is
XDAS_FALSE
, this
contains the size of same-size blocks.
Memory for this array (of size
numBlocks
) has to be
allocated by the caller of the
putData
API.
4.2.2
Common Multi-core Data Structures
This section descibes below data structures which are used for multicore
operations. These data structures are common across all codecs.
IVIDMC_t
4.2.2.1
IVIDMC_t
║
Description
This structure contains Control parameters that are used for multi-core program flow along with
application API function pointers, which can be called by codec for multi core synchronization.
This structure is added extended parameter in “
IVIDENC2_Params
” structure; all the fields must be
set by application before calling codec instance creation.
║
Fields
Field
Data Type
Input/
Output
Description
swbarr
(*)()
Input
Pointer to Software Barrier function which is
used for synchronization between multiple
CPU cores
shmmap
(*)()
Input
Pointer to shared memory allocation function..
shmmunmap
(*)()
Input
Pointer to shared memory de allocation
function.