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

> SHAPE_PCM_FORMAT

# SHAPE\_PCM\_FORMAT

Especifica a enumeração de formatos PCM.

## Sintaxe

```cpp theme={null}
enum SHAPE_PCM_FORMAT    
{  
    SHAPE_PCM_FORMAT_16_BIT_MONO,  
    SHAPE_PCM_FORMAT_16_BIT_STEREO,  
    SHAPE_PCM_FORMAT_32_BIT_MONO,  
    SHAPE_PCM_FORMAT_32_BIT_FLOAT  
}  
```

## Constantes

| Constante | Descrição |
| - | - |
| SHAPE\_PCM\_FORMAT\_16\_BIT\_MONO | Mono de 16 bits. O tamanho do buffer é `numSamples * sizeof(INT16)`. |
| SHAPE\_PCM\_FORMAT\_16\_BIT\_STEREO | Estéreo de 16 bits. Tratado como uma única amostra de 32 bits para ponteiros de leitura e gravação. O tamanho do buffer é `numSamples * 2 * sizeof(INT16)`. |
| SHAPE\_PCM\_FORMAT\_32\_BIT\_MONO | Mono inteiro de 24 ou 32 bits. 24 bits justificado à esquerda ou 32 bits com os 8 bits inferiores mascarados. O tamanho do buffer é `numSamples * sizeof(INT32)`. |
| SHAPE\_PCM\_FORMAT\_32\_BIT\_FLOAT | Mono de ponto flutuante de 32 bits. O tamanho do buffer é `numSamples * sizeof(FLOAT32)`. |

## Comentários

| Função | Descrição |
| - | - |
| PCM linear sem loop | Inicie a voz usando a constante `SHAPE_SRC_COMMAND_TYPE_START` para o Sample Rate Convertor (SRC). Deixe a voz ser reproduzida até o fim ou, opcionalmente, pare-a antes do fim usando a constante `SHAPE_SRC_COMMAND_TYPE_STOP_IMMEDIATE`. Para obter mais informações, confira a enumeração [SHAPE\_SRC\_COMMAND\_TYPE](/pt-BR/reference/audio/shapesrccontext/enums/shape_src_command_type). |
| PCM linear com loop infinito | Defina a contagem de loops do contexto Pulse Code Modulation (PCM) *loopCount* como a constante `SHAPE_PCM_INFINITE_LOOP_COUNT`. Inicie a voz usando `SHAPE_SRC_COMMAND_TYPE_START` para o SRC. Deixe a voz ser reproduzida até que você queira parar, seja no fim de um loop usando `SHAPE_SRC_COMMAND_TYPE_STOP_END` e deixando a voz terminar de ser reproduzida, ou imediatamente usando `SHAPE_SRC_COMMAND_TYPE_STOP_IMMEDIATE`. |
| PCM linear com loop finito | Defina a contagem de loops do contexto PCM *loopCount* até o fim ou, opcionalmente, pare-a no fim de um loop usando `SHAPE_SRC_COMMAND_TYPE_STOP_END` e deixe a voz terminar de ser reproduzida, ou pare-a imediatamente usando `SHAPE_SRC_COMMAND_TYPE_STOP_IMMEDIATE`. |
| PCM circular | Inicie a voz usando `SHAPE_SRC_COMMAND_TYPE_START` para o SRC. Continue transmitindo dados, atualizando o ponteiro de gravação do contexto PCM, até que você queira parar. Use `SHAPE_SRC_COMMAND_TYPE_STOP_END` para permitir que o SRC reproduza até o ponteiro de gravação PCM atual `loopStartWritePointer`, ou `SHAPE_SRC_COMMAND_TYPE_STOP_IMMEDIATE` para pará-lo imediatamente. |

Formatos de amostra de entrada:\\

<img src="https://mintcdn.com/microsoft-4404708b/gzrdvT5kpqAXKEQt/images/gdk/reference/pcm_format.png?fit=max&auto=format&n=gzrdvT5kpqAXKEQt&q=85&s=58f4b6bb7fadd542a8c9a337cd729ba2" alt="Diagrama que mostra as atribuições de bits para cada um dos quatro formatos de amostra de entrada PCM com suporte." width="740" height="357" data-path="images/gdk/reference/pcm_format.png" />

## Requisitos

**Cabeçalho:** shapepcmcontext.h

**Plataformas compatíveis:** consoles da família XBOX One e consoles XBOX Series

## Confira também

[Visão geral do ACP](/pt-BR/build/console-features/audio/overviews/acp-overview)\
[Visão geral do SHAPE](/pt-BR/build/console-features/audio/overviews/shape-overview)\
[shapepcmcontext](/pt-BR/reference/audio/shapepcmcontext/shapepcmcontext_members)


## Related topics

- [GetShapePcmFormat](/pt-BR/reference/audio/shapepcmcontext/functions/getshapepcmformat.md)
- [SetShapePcmFormat](/pt-BR/reference/audio/shapepcmcontext/functions/setshapepcmformat.md)
- [ShapePcmContext](/pt-BR/reference/audio/shapepcmcontext/shapepcmcontext_members.md)
- [SHAPE_PCM_CONTEXT](/pt-BR/reference/audio/shapepcmcontext/structs/shape_pcm_context.md)
- [SHAPE_PCM_MODE](/pt-BR/reference/audio/shapepcmcontext/enums/shape_pcm_mode.md)
