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

> SHAPE_DMA_CONTEXT

# SHAPE\_DMA\_CONTEXT

La estructura de contexto de acceso directo a memoria (DMA).

## Sintaxis

```cpp theme={null}
typedef struct SHAPE_DMA_CONTEXT {  
    UINT32 timestamp : 21;
    UINT32 reserved0 : 3;
    UINT32 mixBufPeakMag : 4;
    UINT32 peakMag : 4;
    UINT32 readPointer : 5;
    UINT32 reserved1 : 3;
    UINT32 writePointer : 5;
    UINT32 reserved2 : 3;
    UINT32 full : 1;
    UINT32 reserved3 : 15;
    UINT32 reserved4 : 9;
    UINT32 address : 23;
    UINT32 numFrames : 5;
    UINT32 reserved5 : 3;
    UINT32 floatConvert : 1;
    UINT32 reserved6 : 7;
    UINT32 numChannels : 3;
    UINT32 reserved7 : 5;
    UINT32 channel : 3;
    UINT32 reserved8 : 5;
} SHAPE_DMA_CONTEXT  
```

### Miembros

*timestamp*\
Tipo: UINT32

Lectura: Marca de tiempo de la finalización del procesamiento del contexto.

*reserved0*\
Tipo: UINT32

Reservado.

*mixBufPeakMag*\
Tipo: UINT32

Lectura: Magnitud máxima del búfer de mezcla de salida.

*peakMag*\
Tipo: UINT32

Lectura: Magnitud máxima de la salida.

*readPointer*\
Tipo: UINT32

Lectura/Escritura: Puntero de lectura desde el inicio del búfer, en unidades de tramas por canal o grupos de intercalación de tramas.

*reserved1*\
Tipo: UINT32

Reservado.

*writePointer*\
Tipo: UINT32

Lectura/Escritura: Puntero de escritura desde el inicio del búfer, en unidades de tramas por canal o grupos de intercalación de tramas.

*reserved2*\
Tipo: UINT32

Reservado.

*full*\
Tipo: UINT32

Lectura/Escritura: Cuando el puntero de lectura y el puntero de escritura son iguales, *full* indica si el búfer está vacío o lleno (0 == vacío, 1 == lleno).

*reserved3*\
Tipo: UINT32

Reservado.

*reserved4*\
Tipo: UINT32

Reservado.

*address*\
Tipo: UINT32

Escritura: Dirección del búfer, alineada a 128 muestras.

*numFrames*\
Tipo: UINT32

Escritura: *numFrames* + 1 equivale al número de tramas por canal, o el número de grupos de intercalación de tramas en el búfer DMA de memoria del sistema. Un valor de cero indica una trama. A partir de esta información, el bloque DMA puede derivar el tamaño del búfer circular de DMA. Este campo se establece cuando se definen el contexto y el búfer.

*reserved5*\
Tipo: UINT32

Reservado.

*floatConvert*\
Tipo: UINT32

Escritura: 1 si los datos se van a convertir en un valor float o desde este. 0 si los datos son un entero de 32 bits.

*reserved6*\
Tipo: UINT32

Reservado.

*numChannels*\
Tipo: UINT32

Escritura: *numChannels* + 1 es el número de canales de audio del búfer. Un valor de cero indica un canal.

*reserved7*\
Tipo: UINT32

Reservado.

*channel*\
Tipo: UINT32

Escritura: El canal para leer/escribir.

*reserved8*\
Tipo: UINT32

Reservado.

## Comentarios

Los miembros marcados como **Lectura** los escribe la biblioteca ACP y su aplicación solo debe leerlos. Los miembros marcados como **Escritura** los establece su aplicación y la biblioteca ACP no los cambia. Los miembros marcados como **Lectura/Escritura** los establece su aplicación, pero la biblioteca ACP puede cambiarlos.

Para obtener información sobre los grafos de flujo, consulte [Análisis de grafos de flujo en Información general sobre ACP](/build/console-features/audio/overviews/acp-overview#ID4EHF).

## Requisitos

**Encabezado:** shapedmacontext.h

**Plataformas compatibles:** consolas de la familia XBOX One y consolas XBOX Series

## Documentación conceptual

* [Información general sobre ACP](/build/console-features/audio/overviews/acp-overview)

## Consulte también

[ShapeDmaContext](/reference/audio/shapedmacontext/shapedmacontext_members)


## Related topics

- [ShapeDmaContext](/es/reference/audio/shapedmacontext/shapedmacontext_members.md)
- [GetShapeDmaTimestamp](/es/reference/audio/shapedmacontext/functions/getshapedmatimestamp.md)
- [GetShapeDmaChannel](/es/reference/audio/shapedmacontext/functions/getshapedmachannel.md)
- [SetShapeDmaChannel](/es/reference/audio/shapedmacontext/functions/setshapedmachannel.md)
- [GetShapeDmaNumBytes](/es/reference/audio/shapedmacontext/functions/getshapedmanumbytes.md)
