Skip to main content

GetShapeDmaWritePointer

Obtiene el puntero de escritura de acceso directo a memoria (DMA).

Sintaxis

Parámetros

context   _In_
Tipo: SHAPE_DMA_CONTEXT*
Puntero a una estructura SHAPE_DMA_CONTEXT.

Valor devuelto

Tipo: UINT32 El puntero de escritura de DMA.

Comentarios

Para calcular el tamaño de un búfer DMA, use la fórmula siguiente:
Los punteros de lectura y escritura se incrementan de la siguiente manera:
Las direcciones dentro del búfer de audio se calculan de la siguiente manera:
Puede evitar los comandos DMA bloqueados asegurándose de que el búfer de audio sea lo suficientemente grande y de que los datos se transmitan a intervalos regulares (en relación con el tamaño del búfer). Por ejemplo, si transmite cuatro fotogramas de hardware a la vez, asegúrese de que en el búfer haya algún múltiplo de esos fotogramas (al menos con doble búfer, es decir, ocho fotogramas) para que el hardware pueda escribir por delante del puntero de lectura del título. Como alternativa, podría exigir el vaciado del búfer antes de enviar el siguiente grafo de flujo (consumir, actualizar el puntero de lectura de DMA y, a continuación, enviar el grafo de flujo). Para obtener más detalles, consulte Comandos bloqueados en Información general sobre SHAPE. Puede enviar grafos de flujo para que se procesen como persistentes o no persistentes. Los grafos de flujo persistentes se procesan y, a continuación, permanecen residentes para repetir su procesamiento en el siguiente fotograma después de que los punteros de lectura y escritura hayan avanzado y de que se haya actualizado el resto de la información de contexto.

Requisitos

Encabezado: shapedmacontext.h Plataformas compatibles: consolas de la familia XBOX One y consolas XBOX Series

Consulte también

ShapeDmaContext
Última modificación el 28 de agosto de 2026