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

> SHAPE_PCM_CONTEXT

# SHAPE\_PCM\_CONTEXT

La estructura de contexto de PCM.

## Sintaxis

```cpp theme={null}
typedef struct SHAPE_PCM_CONTEXT {
    UINT32 bufferStart : 32;  
    UINT32 bufferLength : 21;  
    UINT32 reserved0 : 11;  
    UINT32 loopCount : 8;  
    UINT32 reserved1 : 8;  
    UINT32 full : 1;  
    UINT32 reserved2 : 15;  
    UINT32 readPointer : 21;  
    UINT32 reserved3 : 11;  
    UINT32 loopStartWritePointer : 21;  
    UINT32 reserved4 : 11;  
    UINT32 loopEnd : 21;  
    UINT32 reserved5 : 11;  
    UINT32 mode : 1;  
    UINT32 reserved6 : 15;  
    UINT32 format : 2;  
    UINT32 reserved7 : 14;  
    UINT32 reserved[1];  
} SHAPE_PCM_CONTEXT  
```

### Miembros

*bufferStart*\
Tipo: UINT32

Escritura: búfer de audio.

*bufferLength*\
Tipo: UINT32

Escritura: longitud del búfer de audio en muestras.

*reserved0*\
Tipo: UINT32

Reservado.

*loopCount*\
Tipo: UINT32

Lectura/Escritura: recuento de bucles.

*reserved1*\
Tipo: UINT32

Reservado.

*full*\
Tipo: UINT32

Escritura: para búferes circulares, cuando *readPointer* es igual que *loopStartWritePointer*: 1 == búfer lleno, 0 == búfer vacío.

*reserved2*\
Tipo: UINT32

Reservado.

*readPointer*\
Tipo: UINT32

Lectura/Escritura: desplazamiento en muestras de 128 muestras, alineado con fotogramas, desde el principio del búfer de audio. Los siete (7) bits inferiores se ignoran.

*reserved3*\
Tipo: UINT32

Reservado.

*loopStartWritePointer*\
Tipo: UINT32

Escritura: desplazamiento de muestra no alineado con fotogramas desde el principio del búfer de audio. Indica el inicio del bucle para búferes lineales, o el puntero de escritura para búferes circulares.

*reserved4*\
Tipo: UINT32

Reservado.

*loopEnd*\
Tipo: UINT32

Escritura: desplazamiento de muestra no alineado con fotogramas desde el principio del búfer de audio. Indica el final del bucle. El tamaño mínimo del bucle es de 128 muestras.

*reserved5*\
Tipo: UINT32

Reservado.

*mode*\
Tipo: UINT32

Escritura: SHAPE\_PCM\_MODE

*reserved6*\
Tipo: UINT32

Reservado.

*format*\
Tipo: UINT32

Escritura: SHAPE\_PCM\_FORMAT

*reserved7*\
Tipo: UINT32

Reservado.

*reserved*\
Tipo: UINT32\[1]

Reservado.

## Comentarios

Los campos marcados como **Escritura** los establece su aplicación y la biblioteca del procesador de control de audio (ACP) no los cambia. Los campos marcados como **Lectura/Escritura** los establece su aplicación, pero la biblioteca del ACP puede cambiarlos.

El tamaño de un búfer de modulación por impulsos codificados (PCM) depende del formato del búfer. Consulte los comentarios de [SHAPE\_PCM\_FORMAT](/reference/audio/shapepcmcontext/enums/shape_pcm_format).

## Requisitos

**Encabezado:** shapepcmcontext.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

[Información general sobre ACP](/build/console-features/audio/overviews/acp-overview)\
[Información general de SHAPE](/build/console-features/audio/overviews/shape-overview)\
[shapepcmcontext](/reference/audio/shapepcmcontext/shapepcmcontext_members)


## Related topics

- [ShapePcmContext](/es/reference/audio/shapepcmcontext/shapepcmcontext_members.md)
- [GetShapePcmFormat](/es/reference/audio/shapepcmcontext/functions/getshapepcmformat.md)
- [GetShapePcmMode](/es/reference/audio/shapepcmcontext/functions/getshapepcmmode.md)
- [SetShapePcmMode](/es/reference/audio/shapepcmcontext/functions/setshapepcmmode.md)
- [SetShapePcmFormat](/es/reference/audio/shapepcmcontext/functions/setshapepcmformat.md)
