Skip to main content

GetShapeDmaReadPointer

DMA(Direct Memory Access) 읽기 포인터를 가져옵니다.

Syntax

Parameters

context   _In_
Type: SHAPE_DMA_CONTEXT*
SHAPE_DMA_CONTEXT 구조체에 대한 포인터입니다.

Return value

Type: UINT32 읽기 포인터로, 프레임(128개 샘플 블록) 단위입니다.

Remarks

DMA 버퍼의 크기를 계산하려면 다음 공식을 사용하십시오:
읽기 및 쓰기 포인터는 다음과 같이 증가합니다:
오디오 버퍼 내의 주소는 다음과 같이 계산됩니다:
오디오 버퍼가 충분히 크고 (버퍼 크기와 관련된) 일정한 간격으로 데이터를 스트리밍하도록 함으로써 차단된 DMA 명령을 방지할 수 있습니다. 예를 들어, 한 번에 4개의 하드웨어 프레임을 스트리밍하는 경우, 하드웨어가 타이틀의 읽기 포인터보다 앞서 쓸 수 있도록 이러한 프레임의 배수(적어도 이중 버퍼링된 8프레임)가 버퍼에 있는지 확인하십시오. 또는, 다음 플로우그래프를 제출하기 전에 버퍼 비우기를 강제할 수도 있습니다(소비, DMA 읽기 포인터 갱신, 그런 다음 플로우그래프 제출). 자세한 내용은 Overview of SHAPEBlocked commands를 참조하십시오. 플로우그래프는 지속형(persistent) 또는 비지속형(non-persistent)으로 처리하도록 제출할 수 있습니다. 지속형 플로우그래프는 처리를 수행한 후 상주 상태로 남아, 읽기 및 쓰기 포인터가 진행되고 다른 컨텍스트 정보가 갱신된 다음 프레임에서 처리를 반복합니다.

Requirements

Header: shapedmacontext.h Supported platforms: XBOX One 계열 콘솔 및 XBOX Series 콘솔

See also

ShapeDmaContext
마지막 수정일 2026년 8월 24일