Indicates that data needs to be moved between a mix buffer and system memory.
struct SHAPE_FLOWGRAPH_DMA_COMMAND {
UINT64 command : 5;
UINT64 queued : 1;
UINT64 disabled : 1;
UINT64 error : 1;
UINT64 : 5;
UINT64 write : 1;
UINT64 mixBuffer : 13;
UINT64 contextId : 12;
UINT64 : 25;
};
command
The SHAPE_FLOWGRAPH_COMMAND_TYPE_DMA command from SHAPE_FLOWGRAPH_COMMAND_TYPE.
queued
Internal process flag: 1 == inserted into internal command queue, 0 == still waiting.
disabled
Flag to disable the operation.
error
Command is invalid (set by ACP).
write
1 == write, 0 == read.
mixBuffer
The input or output mix buffer.
contextId
Context ID.
Although the DMA command operates only on a single mix buffer, to accommodate multichannel (greater than mono) content, the DMA supports BLOCK offsets. This enables the DMA control to interleave the data with other DMA commands on a block basis. DMA read and write operations are supported. The DMA command is dispatched to the DMA hardware block for execution. For DMA read operations, the input data resides in system memory and the destination is a mix buffer. For DMA write operations, the input data resides in a mix buffer and the destination is system memory. Each command will correspond to the output processing of a single channel of 128 samples audio frame (at 48kHz).
Header: Declared in shapeflowgraph.h.
Library: Use acphal.lib.