Estoy buscando una buena manera de enumerar todos los códecs de video en una máquina con Windows XP/Vista.¿La mejor manera de enumerar todos los códecs de video disponibles en Windows?
Necesito presentar al usuario un conjunto de códecs de video, incluidos los compresores y descompresores. La salida sería algo como
Available Decoders DiVX Version 6.0 XVID Motion JPEG CompanyX's MPEG-2 Decoder Windows Media Video **Available Encoders** DiVX Version 6.0 Windows Media Video
El problema que estoy funcionando con en es que no hay manera confiable de capturar todos los decodificadores disponibles para el sistema. Por ejemplo:
- Puede enumerar todos los descompresores usando DirectShow, pero esto no le dice nada sobre los compresores (codificadores).
- Puede enumerar todos los componentes de Video para Windows, pero no se indica si estos son codificadores o decodificadores.
- Hay filtros DirectShow que pueden hacer el trabajo por usted perfectamente (filtro Motion JPEG, por ejemplo), pero no hay ninguna indicación de que un filtro DirectShow en particular sea un "decodificador de video".
¿Alguien ha encontrado una solución general para este problema usando cualquiera de las API de Windows? ¿El Windows Vista Media Foundation API resuelve alguno de estos problemas?
Podría agregar lo siguiente: http://msdn.microsoft.com/en-us/library/windows/desktop/dd375655(v=vs.85).aspx ". En la parte inferior de la página, sugiere que la categoría CLSID_LegacyAmFilterCategory sería la que contiene DMO accesible por DirectShow como descompresores de audio y descompresores de video. – sboisse