Escribir filtros de transformación

[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.

En esta sección se describe cómo escribir un filtro de transformación, definido como un filtro que tiene exactamente un pin de entrada y un pin de salida. Para ilustrar los pasos, en esta sección se describe un filtro de transformación hipotético que genera vídeo codificado de longitud de ejecución (RLE). No describe el propio algoritmo de codificación RLE, solo las tareas específicas de DirectShow. (DirectShow ya proporciona un códec RLE a través del filtro AVI Compressor ).

En esta sección se supone que usará la biblioteca de clases base DirectShow para crear filtros. Aunque puede escribir un filtro sin él, se recomienda encarecidamente la biblioteca de clases base.

Nota:

Antes de escribir un filtro de transformación, considere si un objeto multimedia de DirectX (DMO) cumpliría sus requisitos. Las DPO pueden hacer muchas de las mismas cosas que los filtros y el modelo de programación para DTO es más sencillo. Las DPO se hospedan en DirectShow a través del filtro contenedor DMO , pero también se pueden usar fuera de DirectShow. Las DMV ahora son la solución recomendada para codificadores y descodificadores.

 

Esta sección contiene los siguientes temas:

Creación de filtros directShow

Clases base directShow

Escribir filtros directShow