Compartir a través de


Método IPinFlowControl::Block (strmif.h)

[La característica asociada a esta página, DirectShow, es una característica heredada. Se ha reemplazado por MediaPlayer, IMFMediaEngine y Captura de audio/vídeo en Media Foundation. Esas características se han optimizado para Windows 10 y Windows 11. Microsoft recomienda encarecidamente que el nuevo código use MediaPlayer, IMFMediaEngine y Audio/Video Capture en Media Foundation en lugar de DirectShow, siempre que sea posible. Microsoft sugiere que el código existente que usa las API heredadas se reescriba para usar las nuevas API si es posible.

El Block método bloquea o desbloquea el flujo de datos del pin.

Sintaxis

HRESULT Block(
  [in] DWORD  dwBlockFlags,
  [in] HANDLE hEvent
);

Parámetros

[in] dwBlockFlags

Marca que indica si se va a bloquear o desbloquear el pin. Debe ser uno de los siguientes valores:

  • Cero: desbloquee el flujo de datos desde la patilla.
  • AM_PIN_FLOW_CONTROL_BLOCK: bloquee el flujo de datos del pin.

[in] hEvent

Identificador de un objeto de evento o NULL. Si este parámetro no es NULL, el método es asincrónico y devuelve inmediatamente. El evento se señala cuando se completa la operación. Si este parámetro es NULL, el método es sincrónico y no se completa hasta que se bloquea el pin. Si dwBlockFlags es cero, este parámetro debe ser NULL.

Valor devuelto

Devuelve un valor HRESULT . Estos son algunos de los valores posibles.

Código devuelto Descripción
S_FALSE
El pin ya está desbloqueado.
S_OK
Correcto.
VFW_E_PIN_ALREADY_BLOCKED
El pin ya está bloqueado en otro subproceso.
VFW_E_PIN_ALREADY_BLOCKED_ON_THIS_THREAD
El pin ya está bloqueado en el subproceso que realiza la llamada.

Comentarios

Este método puede ser sincrónico o asincrónico:

  • Para llamarlo de forma asincrónica, use la función CreateEvent para crear un objeto de evento. Pase el identificador de eventos en el parámetro hEvent . El método devuelve inmediatamente y señala el evento cuando se ha completado la operación. Llame a una función de espera como WaitForSingleObject para esperar el evento.
  • Para llamar a este método de forma sincrónica, establezca el parámetro hEvent en NULL. El método se bloquea hasta que se completa. Es posible que el método no se complete hasta que el pin esté listo para entregar un ejemplo. Si el filtro está en pausa, el método podría bloquearse indefinidamente. Por lo tanto, no debe llamar a este método de forma sincrónica desde el subproceso de aplicación principal.

Requisitos

Requisito Value
Cliente mínimo compatible Windows XP [solo aplicaciones de escritorio]
Servidor mínimo compatible Windows Server 2003 [solo aplicaciones de escritorio]
Plataforma de destino Windows
Encabezado strmif.h (incluya Dshow.h)
Library Strmiids.lib

Consulte también

Reconexión dinámica

Códigos de error y éxito

IPinFlowControl (interfaz)