Método IAsyncReader::SyncReadAligned (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 SyncReadAligned
método realiza una lectura sincrónica. El método se bloquea hasta que se completa la solicitud. Las posiciones de archivo y la dirección del búfer deben alinearse; compruebe las propiedades del asignador para la alineación necesaria.
Sintaxis
HRESULT SyncReadAligned(
IMediaSample *pSample
);
Parámetros
pSample
Puntero a la interfaz IMediaSample de un ejemplo multimedia proporcionado por el autor de la llamada.
Valor devuelto
Devuelve un valor HRESULT . Estos son algunos de los valores posibles.
Código devuelto | Descripción |
---|---|
|
Alineación no válida. |
|
Se recuperan menos bytes de los solicitados. (Probablemente se alcanzó el final del archivo). |
|
Correcto. |
Comentarios
Antes de llamar a este método, recupere un ejemplo multimedia del asignador del pin. Marca de tiempo la muestra con los desplazamientos de bytes que solicita, primero y último inclusive, multiplicado por 10 000 000. Los desplazamientos de bytes son relativos al inicio de la secuencia.
Las posiciones de inicio y detención deben coincidir con la alineación que se decidió cuando se conectaron las patillas. De lo contrario, el método devuelve VFW_E_BADALIGN. Si la alineación acordada es más gruesa que la alineación real de la secuencia, la posición de detención podría superar la duración real. Si es así, el método redondea la posición de detención hacia abajo hasta la alineación real.
Este método realiza una lectura sin búfer, por lo que podría ser más rápido que el método IAsyncReader::SyncRead .
Requisitos
Requisito | Value |
---|---|
Cliente mínimo compatible | Windows 2000 Professional [solo aplicaciones de escritorio] |
Servidor mínimo compatible | Windows 2000 Server [solo aplicaciones de escritorio] |
Plataforma de destino | Windows |
Encabezado | strmif.h (incluya Dshow.h) |
Library | Strmiids.lib |