EVT_ACX_STREAM_GET_HW_LATENCY función de devolución de llamada (acxstreams.h)

El evento EvtAcxStreamGetHwLatency indica al controlador que proporcione latencia de flujo para el circuito específico de esta secuencia (la latencia total será una suma de la latencia de los distintos circuitos).

Sintaxis

EVT_ACX_STREAM_GET_HW_LATENCY EvtAcxStreamGetHwLatency;

NTSTATUS EvtAcxStreamGetHwLatency(
  ACXSTREAM Stream,
  ULONG *FifoSize,
  ULONG *Delay
)
{...}

Parámetros

Stream

Un objeto ACXSTREAM representa una secuencia de audio creada por un circuito. La secuencia se compone de una lista de elementos creados en función de los elementos del circuito primario. Para obtener más información, vea ACX : resumen de objetos ACX.

FifoSize

FifoSize en bytes.

Delay

Retraso en unidades de 100 nanosegundos.

Valor devuelto

Devuelve STATUS_SUCCESS si la llamada se realizó correctamente. De lo contrario, devuelve un código de error adecuado. Para obtener más información, vea Uso de valores NTSTATUS.

Comentarios

A continuación se muestra el uso de ejemplo.

    //
    // Init streaming callbacks.
    //
    ACX_RT_STREAM_CALLBACKS rtCallbacks;
    ACX_RT_STREAM_CALLBACKS_INIT(&rtCallbacks);
    
    rtCallbacks.EvtAcxStreamGetHwLatency = EvtStreamGetHwLatency;

    status = AcxStreamInitAssignAcxRtStreamCallbacks(StreamInit, &rtCallbacks));
PAGED_CODE_SEG
NTSTATUS
EvtStreamGetHwLatency(
    _In_ ACXSTREAM Stream,
    _Out_ ULONG * FifoSize,
    _Out_ ULONG * Delay
)
{
    PSTREAM_CONTEXT ctx;

    PAGED_CODE();

    ctx = GetStreamContext(Stream);

    *FifoSize = ctx->DmaFifoSize;
    *Delay = ctx->ChipsetDelay + ctx->CodecDelay;

    return STATUS_SUCCESS;
}

Requisitos de ACX

Versión mínima de ACX: 1.0

Para obtener más información sobre las versiones de ACX, consulte Introducción a la versión de ACX.

Requisitos

Requisito Valor
Header acxstreams.h
IRQL PASSIVE_LEVEL

Consulte también