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

PCM コンテキスト構造体。

## 構文

```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  
```

### メンバー

*bufferStart*\
型: UINT32

Write: オーディオバッファー。

*bufferLength*\
型: UINT32

Write: オーディオバッファーの長さ (サンプル単位)。

*reserved0*\
型: UINT32

予約済み。

*loopCount*\
型: UINT32

Read/Write: ループカウント。

*reserved1*\
型: UINT32

予約済み。

*full*\
型: UINT32

Write: 循環バッファーの場合、*readPointer* が *loopStartWritePointer* と同じとき: 1 == バッファーフル、0 == バッファーが空。

*reserved2*\
型: UINT32

予約済み。

*readPointer*\
型: UINT32

Read/Write: フレーム整列された、オーディオバッファーの先頭からの 128 サンプルオフセット (サンプル単位)。下位 7 ビットは無視されます。

*reserved3*\
型: UINT32

予約済み。

*loopStartWritePointer*\
型: UINT32

Write: オーディオバッファーの先頭からのフレーム境界に整列していないサンプルオフセット。線形バッファーの場合はループ開始位置、循環バッファーの場合は書き込みポインターを示します。

*reserved4*\
型: UINT32

予約済み。

*loopEnd*\
型: UINT32

Write: オーディオバッファーの先頭からのフレーム境界に整列していないサンプルオフセット。ループ終端を示します。ループの最小サイズは 128 サンプルです。

*reserved5*\
型: UINT32

予約済み。

*mode*\
型: UINT32

Write: SHAPE\_PCM\_MODE

*reserved6*\
型: UINT32

予約済み。

*format*\
型: UINT32

Write: SHAPE\_PCM\_FORMAT

*reserved7*\
型: UINT32

予約済み。

*reserved*\
型: UINT32\[1]

予約済み。

## 解説

**Write** としてマークされているフィールドはアプリケーションによって設定され、Audio Control Processor (ACP) ライブラリによって変更されることはありません。**Read/Write** としてマークされているフィールドはアプリケーションによって設定されますが、ACP ライブラリによって変更される場合があります。

Pulse Code Modulation (PCM) バッファーのサイズは、バッファーの形式に依存します。[SHAPE\_PCM\_FORMAT](/reference/audio/shapepcmcontext/enums/shape_pcm_format) の解説を参照してください。

## 要件

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

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

## 概念ドキュメント

* [ACP の概要](/build/console-features/audio/overviews/acp-overview)

## 関連項目

[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)
- [GetShapePcmFormat](/ja-jp/reference/audio/shapepcmcontext/functions/getshapepcmformat.md)
- [GetShapePcmMode](/ja-jp/reference/audio/shapepcmcontext/functions/getshapepcmmode.md)
- [SetShapePcmFormat](/ja-jp/reference/audio/shapepcmcontext/functions/setshapepcmformat.md)
- [SetShapePcmMode](/ja-jp/reference/audio/shapepcmcontext/functions/setshapepcmmode.md)
