Enumerar dispositivos y filtros

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

A veces, una aplicación debe buscar un filtro determinado en el sistema del usuario. Por ejemplo, una aplicación de captura de vídeo podría mostrar una lista de dispositivos de captura disponibles. Dado que DirectShow usa una arquitectura basada en componentes, no se puede saber en tiempo de diseño qué filtros se instalan en el sistema del usuario. Esto es especialmente cierto para los filtros que representan dispositivos de hardware. DirectShow proporciona dos componentes que buscan filtros registrados:

Los enumeradores descritos en esta sección siguen el formato estándar que usan las interfaces de enumeración COM. Para obtener más información, vea el tema "IEnumXXXX" en el Kit de desarrollo de software (SDK) de la plataforma de Microsoft.

Esta sección contiene los siguientes temas:

Tareas básicas de DirectShow