Je cherche un bon moyen d'énumérer tous les codecs vidéo sur une machine Windows XP/Vista.La meilleure façon d'énumérer tous les codecs vidéo disponibles sur Windows?
J'ai besoin de présenter à l'utilisateur un ensemble de codecs vidéo, y compris les compresseurs et les décompresseurs. La sortie ressemblerait à quelque chose comme
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
Le problème que je suis en cours d'exécution en est qu'il n'y a aucun moyen fiable pour de capturer tous les décodeurs disponibles au système. Par exemple:
- Vous pouvez énumérer tous les décompresseurs en utilisant DirectShow, mais cela ne vous dit rien sur les compresseurs (encodeurs).
- Vous pouvez énumérer tous les composants Video For Windows, mais vous n'obtenez aucune indication s'il s'agit d'encodeurs ou de décodeurs.
- Il existe des filtres DirectShow qui peuvent parfaitement vous convenir (filtre Motion JPEG par exemple), mais rien n'indique qu'un filtre DirectShow particulier soit un "décodeur vidéo".
Est-ce que quelqu'un a trouvé une solution généralisée pour ce problème en utilisant l'une des API Windows? Est-ce que Windows Vista Media Foundation API résout l'un de ces problèmes?
Je pourrais ajouter ce qui suit: http://msdn.microsoft.com/en-us/library/windows/desktop/dd375655(v=vs.85).aspx ".Au bas de la page, il suggère que la catégorie CLSID_LegacyAmFilterCategory serait celle contenant les DMOs accessibles par DirectShow en tant que décompresseurs audio et décompresseurs vidéo. – sboisse