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

# SetShapePcmFormat

> SetShapePcmFormat

# SetShapePcmFormat

PCM 形式を設定します。

## 構文

```cpp theme={null}
HRESULT SetShapePcmFormat(  
         SHAPE_PCM_CONTEXT* context,  
         SHAPE_PCM_FORMAT format  
)  
```

### パラメーター

*context*   \_Inout\_\
型: [SHAPE\_PCM\_CONTEXT\*](/reference/audio/shapepcmcontext/structs/shape_pcm_context)

[SHAPE\_PCM\_CONTEXT](/reference/audio/shapepcmcontext/structs/shape_pcm_context) 構造体へのポインター。

*format*   \
型: [SHAPE\_PCM\_FORMAT](/reference/audio/shapepcmcontext/enums/shape_pcm_format)

[SHAPE\_PCM\_FORMAT](/reference/audio/shapepcmcontext/enums/shape_pcm_format) 列挙型のメンバーの 1 つ。

### 戻り値

型: HRESULT

HRESULT の成功またはエラーコード。

## 解説

| 機能          | 説明                                                                                                                                                                                                                                                                  |
| ----------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| 非ループ線形 PCM  | サンプルレートコンバーター (SRC) 用の `SHAPE_SRC_COMMAND_TYPE_START` 定数を使用してボイスを開始します。ボイスを最後まで再生させるか、任意で `SHAPE_SRC_COMMAND_TYPE_STOP_IMMEDIATE` 定数を使用して途中で停止します。詳細については、 [SHAPE\_SRC\_COMMAND\_TYPE](/reference/audio/shapesrccontext/enums/shape_src_command_type) 列挙型を参照してください。 |
| 無限ループ線形 PCM | PCM コンテキストのループカウント *loopCount* を `SHAPE_PCM_INFINITE_LOOP_COUNT` 定数に設定します。SRC 用に `SHAPE_SRC_COMMAND_TYPE_START` を使用してボイスを開始します。停止させたいときまでボイスを再生させ、ループの終端で `SHAPE_SRC_COMMAND_TYPE_STOP_END` を使用してボイスを再生し切るか、`SHAPE_SRC_COMMAND_TYPE_STOP_IMMEDIATE` を使用して即座に停止します。  |
| 有限ループ線形 PCM | PCM コンテキストのループカウント *loopCount* を \[0, 254] に設定します。SRC 用に `SHAPE_SRC_COMMAND_TYPE_START` を使用してボイスを開始します。ボイスを最後まで再生させるか、任意でループの終端で `SHAPE_SRC_COMMAND_TYPE_STOP_END` を使用して停止しボイスを再生し切るか、`SHAPE_SRC_COMMAND_TYPE_STOP_IMMEDIATE` を使用して即座に停止します。                        |
| 循環 PCM      | SRC 用に `SHAPE_SRC_COMMAND_TYPE_START` を使用してボイスを開始します。停止させたいときまで、PCM コンテキストの書き込みポインターを更新しながらデータをストリーミングし続けます。`SHAPE_SRC_COMMAND_TYPE_STOP_END` を使用して SRC を現在の PCM 書き込みポインター `loopStartWritePointer` まで再生させるか、`SHAPE_SRC_COMMAND_TYPE_STOP_IMMEDIATE` を使用して即座に停止します。  |

入力サンプル形式:\\

<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="サポートされている 4 種類の PCM 入力サンプル形式それぞれのビット割り当てを示す図。" width="740" height="357" data-path="images/gdk/reference/pcm_format.png" />

## 要件

**ヘッダー:** shapepcmcontext.h

**サポート対象プラットフォーム:** XBOX One ファミリー本体および XBOX Series 本体

## 関連項目

[ACP の概要](/build/console-features/audio/overviews/acp-overview)\
[Shape の概要](/build/console-features/audio/overviews/shape-overview)\
[shapepcmcontext](/reference/audio/shapepcmcontext/shapepcmcontext_members)


## Related topics

- [ShapePcmContext](/ja-jp/reference/audio/shapepcmcontext/shapepcmcontext_members.md)
- [SHAPE_PCM_FORMAT](/ja-jp/reference/audio/shapepcmcontext/enums/shape_pcm_format.md)
- [GetShapePcmFormat](/ja-jp/reference/audio/shapepcmcontext/functions/getshapepcmformat.md)
- [SetShapePcmMode](/ja-jp/reference/audio/shapepcmcontext/functions/setshapepcmmode.md)
- [SetShapePcmAudioBuffer](/ja-jp/reference/audio/shapepcmcontext/functions/setshapepcmaudiobuffer_2.md)
