> ## 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.

# ShapeDmaContext

> ShapeDmaContext

# ShapeDmaContext

## Functions

| Function                                                                                                          | Description                                                                             |
| ----------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------- |
| [GetShapeDmaAudioBuffer](/reference/audio/shapedmacontext/functions/getshapedmaaudiobuffer)                       | Gets the DMA audio buffer.                                                              |
| [GetShapeDmaBufferFull](/reference/audio/shapedmacontext/functions/getshapedmabufferfull)                         | Gets the buffer-full flag.                                                              |
| [GetShapeDmaBytesPerFrame](/reference/audio/shapedmacontext/functions/getshapedmabytesperframe)                   | Gets the number of bytes per frame.                                                     |
| [GetShapeDmaChannel](/reference/audio/shapedmacontext/functions/getshapedmachannel)                               | Gets the current audio channel.                                                         |
| [GetShapeDmaFloatSamples](/reference/audio/shapedmacontext/functions/getshapedmafloatsamples)                     | Gets the flag that indicates whether samples are floating point or 32-bit integer.      |
| [GetShapeDmaFramesAvailable](/reference/audio/shapedmacontext/functions/getshapedmaframesavailable)               | Gets the number of frames available to read.                                            |
| [GetShapeDmaFramesFree](/reference/audio/shapedmacontext/functions/getshapedmaframesfree)                         | Gets the number of frames available to write to.                                        |
| [GetShapeDmaMixBufferPeakMagnitude](/reference/audio/shapedmacontext/functions/getshapedmamixbufferpeakmagnitude) | Gets the peak magnitude of the DMA mix buffer.                                          |
| [GetShapeDmaNumBytes](/reference/audio/shapedmacontext/functions/getshapedmanumbytes)                             | Gets the number of bytes in the audio buffer.                                           |
| [GetShapeDmaNumChannels](/reference/audio/shapedmacontext/functions/getshapedmanumchannels)                       | Gets the number of channels in the DMA audio buffer.                                    |
| [GetShapeDmaNumFrames](/reference/audio/shapedmacontext/functions/getshapedmanumframes)                           | Gets the number of DMA frames.                                                          |
| [GetShapeDmaPeakMagnitude](/reference/audio/shapedmacontext/functions/getshapedmapeakmagnitude)                   | Gets the peak magnitude.                                                                |
| [GetShapeDmaReadPointer](/reference/audio/shapedmacontext/functions/getshapedmareadpointer)                       | Gets the DMA read pointer.                                                              |
| [GetShapeDmaReadWriteFull](/reference/audio/shapedmacontext/functions/getshapedmareadwritefull)                   | Gets a 32-bit value that contains the read and write pointers and the buffer-full flag. |
| [GetShapeDmaTimestamp](/reference/audio/shapedmacontext/functions/getshapedmatimestamp)                           | Gets the DMA time stamp.                                                                |
| [GetShapeDmaWritePointer](/reference/audio/shapedmacontext/functions/getshapedmawritepointer)                     | Gets the DMA write pointer.                                                             |
| [IncrementShapeDmaReadPointer](/reference/audio/shapedmacontext/functions/incrementshapedmareadpointer)           | Increments the read pointer.                                                            |
| [IncrementShapeDmaWritePointer](/reference/audio/shapedmacontext/functions/incrementshapedmawritepointer)         | Increments the write pointer.                                                           |
| [SetShapeDmaAudioBuffer function](/reference/audio/shapedmacontext/functions/setshapedmaaudiobuffer)              | Sets the DMA audio buffer.                                                              |
| [SetShapeDmaAudioBuffer](/reference/audio/shapedmacontext/functions/setshapedmaaudiobuffer_2)                     | Sets the DMA audio buffer.                                                              |
| [SetShapeDmaBufferFull](/reference/audio/shapedmacontext/functions/setshapedmabufferfull)                         | Sets the buffer-full flag.                                                              |
| [SetShapeDmaChannel](/reference/audio/shapedmacontext/functions/setshapedmachannel)                               | Sets the current channel.                                                               |
| [SetShapeDmaFloatSamples](/reference/audio/shapedmacontext/functions/setshapedmafloatsamples)                     | Sets the flag that indicates whether samples are floating point or 32-bit integer.      |
| [SetShapeDmaNumChannels](/reference/audio/shapedmacontext/functions/setshapedmanumchannels)                       | Sets the number of channels in the DMA audio buffer.                                    |
| [SetShapeDmaNumFrames](/reference/audio/shapedmacontext/functions/setshapedmanumframes)                           | Sets the number of DMA frames.                                                          |
| [SetShapeDmaReadPointer](/reference/audio/shapedmacontext/functions/setshapedmareadpointer)                       | Sets the DMA read pointer.                                                              |
| [SetShapeDmaReadWriteFull](/reference/audio/shapedmacontext/functions/setshapedmareadwritefull)                   | Sets the read and write pointers and buffer-full flag in a single atomic operation.     |
| [SetShapeDmaWritePointer](/reference/audio/shapedmacontext/functions/setshapedmawritepointer)                     | Sets the DMA write pointer.                                                             |

## Structures

| Structure                                                                                           | Description                                                                            |
| --------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------- |
| [SHAPE\_DMA\_CONTEXT](/reference/audio/shapedmacontext/structs/shape_dma_context)                   | The DMA context structure.                                                             |
| [SHAPE\_DMA\_READ\_WRITE\_FULL](/reference/audio/shapedmacontext/structs/shape_dma_read_write_full) | Structure used to query read and write pointers and buffer-full flag in one operation. |


## Related topics

- [SHAPE_DMA_CONTEXT](/reference/audio/shapedmacontext/structs/shape_dma_context.md)
- [GetShapeDmaTimestamp](/reference/audio/shapedmacontext/functions/getshapedmatimestamp.md)
- [GetShapeDmaChannel](/reference/audio/shapedmacontext/functions/getshapedmachannel.md)
- [SetShapeDmaChannel](/reference/audio/shapedmacontext/functions/setshapedmachannel.md)
- [GetShapeDmaAudioBuffer](/reference/audio/shapedmacontext/functions/getshapedmaaudiobuffer.md)
