Método CPullPin.Connect
[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 Connect
método completa una conexión con el pin de salida.
Sintaxis
HRESULT Connect(
IUnknown *pUnk,
IMemAllocator *pAlloc,
BOOL bSync
);
Parámetros
-
pUnk
-
Puntero a la interfaz IUnknown del pin de salida.
-
pAlloc
-
Puntero a la interfaz IMemAllocator del asignador preferido del pin de entrada o NULL.
-
bSync
-
Valor booleano que especifica si se deben usar lecturas sincrónicas. Si es TRUE, la patilla realiza operaciones de lectura sincrónicas en el pin de salida. Si es FALSE, el pin realiza solicitudes de lectura asincrónicas.
Valor devuelto
Devuelve un VALOR HRESULT. Estos son algunos de los valores posibles.
Código devuelto | Descripción |
---|---|
|
Correcto. |
|
El pin de entrada ya está conectado. |
|
El pin de salida no expone IAsyncReader. |
Observaciones
Llame a este método durante el proceso de conexión del pin de entrada. Si se produce un error en el método, la patilla debe producir un error en la conexión.
Este método consulta el pin de salida de la interfaz IAsyncReader . Si se ejecuta correctamente, llama a CPullPin::D ecideAllocator para negociar el asignador de la conexión. Si el pin de entrada tiene un asignador preferido, especifíquelo en el parámetro pAlloc ; El método DecideAllocator pasa este puntero al método IAsyncReader::RequestAllocator del pin de salida. De lo contrario, establezca pAlloc en NULL.
Si el valor de bSync es TRUE, el objeto CPullPin realiza solicitudes de lectura sincrónicas mediante una llamada al IAsyncReader::SyncReadAligned del pin de salida. De lo contrario, llama al método IAsyncReader::Request para realizar solicitudes de lectura superpuestas.
Requisitos
Requisito | Value |
---|---|
Encabezado |
|
Biblioteca |
|