> ## Documentation Index
> Fetch the complete documentation index at: https://devdocs.xbox.com/llms.txt
> Use this file to discover all available pages before exploring further.

# SHAPE_FLOWGRAPH_DMA_COMMAND

> SHAPE_FLOWGRAPH_DMA_COMMAND

# SHAPE\_FLOWGRAPH\_DMA\_COMMAND

Indicates that data is to be moved between a mix buffer and system memory.

## Syntax

```cpp theme={null}
typedef struct SHAPE_FLOWGRAPH_DMA_COMMAND {  
    UINT64 command : 5;
    UINT64 queued : 1;
    UINT64 disabled : 1;
    UINT64 error : 1;
    UINT64 reserved0 : 5;
    UINT64 write : 1;
    UINT64 mixBuffer : 13;
    UINT64 contextId : 12;
    UINT64 reserved1 : 25;
} SHAPE_FLOWGRAPH_DMA_COMMAND  
```

### Members

`command`\
Type: UINT64

The SHAPE\_FLOWGRAPH\_COMMAND\_TYPE\_DMA command from [SHAPE\_FLOWGRAPH\_COMMAND\_TYPE](/reference/audio/shapeflowgraph/enums/shape_flowgraph_command_type).

`queued`\
Type: UINT64

Internal process flag: 1 == inserted into the internal command queue; 0 == waiting.

`disabled`\
Type: UINT64

Flag for disabling the operation.

`error`\
Type: UINT64

Command is invalid. Set by the Audio Control Processor (ACP).

`reserved0`\
Type: UINT64

Reserved.

`write`\
Type: UINT64

1 == write; 0 == read.

`mixBuffer`\
Type: UINT64

The input or output mix buffer.

`contextId`\
Type: UINT64

Context ID.

`reserved1`\
Type: UINT64

Reserved.

## Remarks

The Direct Memory Access (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 per-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 corresponds to the output processing of a single channel of a 128-sample audio frame at 48 KHz.

## Requirements

**Header:** shapeflowgraph.h

**Supported platforms:** XBOX One family consoles and XBOX Series consoles

## See also

[ACP Overview](/build/console-features/audio/overviews/acp-overview)

[SHAPE Overview](/build/console-features/audio/overviews/shape-overview)

[shapeflowgraph](/reference/audio/shapeflowgraph/shapeflowgraph_members)


## Related topics

- [SHAPE_FLOWGRAPH_COMMAND](/reference/audio/shapeflowgraph/structs/shape_flowgraph_command.md)
- [ShapeFlowGraph](/reference/audio/shapeflowgraph/shapeflowgraph_members.md)
- [SHAPE_FLOWGRAPH_COMMAND_TYPE](/reference/audio/shapeflowgraph/enums/shape_flowgraph_command_type.md)
- [SetShapeDmaCommand](/reference/audio/shapeflowgraph/functions/setshapedmacommand.md)
- [ACP_COMMAND_LOAD_SHAPE_FLOWGRAPH](/reference/audio/acphal/structs/acp_command_load_shape_flowgraph.md)
