Choisir le bon convertisseur vidéo

[La fonctionnalité associée à cette page, DirectShow, est une fonctionnalité héritée. Il a été remplacé par MediaPlayer, IMFMediaEngine et Audio/Video Capture dans Media Foundation. Ces fonctionnalités ont été optimisées pour Windows 10 et Windows 11. Microsoft recommande vivement au nouveau code d’utiliser MediaPlayer, IMFMediaEngine et La capture audio/vidéo dans Media Foundation au lieu de DirectShow, lorsque cela est possible. Microsoft suggère que le code existant qui utilise les API héritées soit réécrit pour utiliser les nouvelles API si possible.]

DirectShow fournit plusieurs filtres de convertisseur vidéo, résumés dans le tableau suivant.

Filtrer Notes
Convertisseur vidéo amélioré (EVR) Utilise Direct3D 9. Nécessite Windows Vista ou version ultérieure.
Convertisseur de mixage vidéo 9 (VMR-9) Utilise Direct3D 9. Nécessite Windows XP ou version ultérieure.
Filtre de mixage vidéo 7 (VMR-7) Utilise DirectDraw. Nécessite Windows XP ou version ultérieure.
Mélangeur de superposition Prend en charge les superpositions matérielles via DirectDraw.
Filtre de convertisseur vidéo hérité. Utilise DirectDraw ou (rarement) GDI

 

Le convertisseur à utiliser dépend en grande partie des versions de Windows que vous devez prendre en charge.

  • Dans Windows Vista et versions ultérieures, les applications doivent utiliser l’EVR si le matériel le prend en charge. Sinon, revenez à VMR-9 ou VMR-7. L’EVR offre de meilleures performances et une meilleure qualité vidéo que les convertisseurs précédents. En outre, il est conçu pour fonctionner avec le Gestionnaire de fenêtres de bureau (DWM).
  • Avant Windows Vista, utilisez vmR-9 si le matériel le prend en charge et si la fonctionnalité de port vidéo n’est pas requise. Sinon, utilisez VMR-7.
  • Sur les systèmes plus anciens, vous devrez peut-être utiliser overlay Mixer (pour la prise en charge du port vidéo ou de la superposition matérielle) ou le filtre Video Renderer hérité.

Les méthodes IGraphBuilder::Render et RenderFile utilisent le VMR-7 par défaut. Si le matériel ne prend pas en charge vmR-7, ces méthodes reviennent au filtre Video Renderer hérité. Evr et VMR-9 ne sont jamais les convertisseurs par défaut.

Rendu vidéo