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

# GetShapeDmaBufferFull

> GetShapeDmaBufferFull

# GetShapeDmaBufferFull

버퍼 가득 참(buffer-full) 플래그를 가져옵니다.

## Syntax

```cpp theme={null}
bool GetShapeDmaBufferFull(  
         const SHAPE_DMA_CONTEXT* context  
)  
```

### Parameters

*context*   \_In\_\
Type: [SHAPE\_DMA\_CONTEXT\*](/reference/audio/shapedmacontext/structs/shape_dma_context)

[SHAPE\_DMA\_CONTEXT](/reference/audio/shapedmacontext/structs/shape_dma_context) 구조체에 대한 포인터입니다.

### Return value

Type: bool

버퍼 가득 참 플래그입니다.

## Remarks

DMA(Direct Memory Access) 시스템은 자동 float-to-integer 및 integer-to-float 변환을 통해 읽기 및 쓰기 기능을 지원합니다. DMA 시스템은 128 샘플 블록 단위로 인터리브 해제된 샘플을 담고 있는 원형 버퍼를 사용합니다.

DMA 프로세서를 통해 SHAPE(Scalable Hardware Audio Processing Engine)는 믹스 버퍼에서 메인 시스템 메모리로 데이터를 보내고, 메인 시스템에서 믹스 버퍼로 데이터를 가져와 추가 처리를 할 수 있습니다. DMA는 한 번에 한 오디오 프레임의 데이터를 전송하며 블록 단위로 수행됩니다. 블록 인터리브 데이터를 지원하기 위해 skip 값은 샘플을 읽거나 쓸 때 시스템 메모리에서 (기본 주소로부터) 건너뛸 오디오 프레임 블록의 수를 지정합니다. 따라서 다중 채널 스트림은 채널당 하나의 DMA 컨텍스트가 필요합니다.

오디오 데이터 샘플은 항상 32비트 값(정수 또는 부동소수점)으로 읽고 쓰이며, [SHAPE\_DMA\_CONTEXT](/reference/audio/shapedmacontext/structs/shape_dma_context) 구조체의 `floatConvert` 플래그에 지정된 대로입니다. DMA의 방향(읽기 또는 쓰기)은 DMA 컨텍스트가 아닌 DMA 명령에서 지정된다는 점에 유의하세요. 이는 데이터 대역폭을 줄이는 데 도움이 됩니다. DMA 엔진은 신호 처리는 하지 않지만 float-to-integer 변환(또는 integer-to-float)을 수행할 수 있습니다. 이를 통해 애플리케이션 CPU가 데이터 샘플을 부동소수점 형식으로 처리할 수 있습니다.

DMA 버퍼의 크기를 계산하려면 다음 공식을 사용하세요:

```cpp theme={null}
fullBufferSizeInBytes = 128 * 4 * numChannels * numFrames  
```

읽기 및 쓰기 포인터는 다음과 같이 증가합니다:

```cpp theme={null}
readPointer = (readPointer + 1) % numFrames 

writePointer = (writePointer + 1) % numFrames  
```

오디오 버퍼 내의 주소는 다음과 같이 계산됩니다:

```cpp theme={null}
readAddress = audioBuffer + (128 * 4 * ((readPointer * numChannels) + channel))   

writeAddress = audioBuffer + (128 * 4 * ((writePointer * numChannels) + channel))  
```

## Requirements

**Header:** shapedmacontext.h

**지원 플랫폼:** XBOX One 제품군 콘솔 및 XBOX Series 콘솔

## See also

[SHAPE 개요](/build/console-features/audio/overviews/shape-overview)\
[ShapeDmaContext](/reference/audio/shapedmacontext/shapedmacontext_members)


## Related topics

- [ShapeDmaContext](/ko/reference/audio/shapedmacontext/shapedmacontext_members.md)
- [SetShapeDmaBufferFull](/ko/reference/audio/shapedmacontext/functions/setshapedmabufferfull.md)
- [GetShapeDmaReadWriteFull](/ko/reference/audio/shapedmacontext/functions/getshapedmareadwritefull.md)
- [GetShapeDmaAudioBuffer](/ko/reference/audio/shapedmacontext/functions/getshapedmaaudiobuffer.md)
- [GetShapePcmBufferFull](/ko/reference/audio/shapepcmcontext/functions/getshapepcmbufferfull.md)
