Partager via


Méthode IMixerPinConfig ::SetColorKey (mpconfig.h)

[La fonctionnalité associée à cette page, DirectShow, est une fonctionnalité héritée. Il a été remplacé par MediaPlayer, IMFMediaEngine et Audio/Video Capture in Media Foundation. Ces fonctionnalités ont été optimisées pour Windows 10 et Windows 11. Microsoft recommande vivement que le nouveau code utilise MediaPlayer, IMFMediaEngine et Audio/Video Capture dans Media Foundation au lieu de DirectShow, si 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.]

La SetColorKey méthode définit la clé de couleur utilisée par un flux vidéo.

Syntaxe

HRESULT SetColorKey(
  [in] COLORKEY *pColorKey
);

Paramètres

[in] pColorKey

Pointeur vers une structure COLORKEY .

Valeur retournée

Retourne une valeur HRESULT.

Remarques

Le terme clé de couleur a des significations différentes selon le flux auquel il fait référence. La clé de couleur du flux principal fait référence à la clé de couleur de destination utilisée par la surface de superposition. La clé de couleur du flux secondaire fait référence à la clé de couleur source utilisée lors du blittage d’une surface hors écran vers la surface primaire.

Les applications doivent définir la clé de couleur de la broche primaire sur une couleur obscure (une couleur qui, selon toute probabilité, ne sera pas présente sur le bureau). Les filtres de mélangeur de superposition essaient de choisir une couleur obscure, mais si l’application sait que la couleur spécifiée fait partie d’un autre contenu, l’application doit la modifier.

La définition de la clé de couleur sur le flux secondaire peut être utilisée pour rendre le flux transparent et activer les images nonrectangulaires. Par exemple, si le flux secondaire est du texte sous-titré, le décodeur de texte sous-titré doit peindre une couleur unie dans l’arrière-plan, puis définir la touche de couleur sur l’épingle correspondante sur cette couleur. Cela garantit que tous les pixels sont transférés à l’exception de ceux spécifiés par la clé de couleur. Si possible, les applications doivent définir la clé de couleur du flux secondaire sur la même que celle du flux principal pour bénéficier d’un léger avantage en termes de performances.

La définition de cette valeur sur le flux principal définit la clé de couleur de destination utilisée par la surface de superposition. Par défaut, la clé de couleur de destination est utilisée comme clé de couleur pour tous les flux transparents (secondaires).

Les arguments valides pour le paramètre pColorKey incluent CK_INDEX lorsque le mode d’affichage vidéo est défini sur 256 couleurs et CK_RGB lorsque le mode d’affichage vidéo est défini sur une profondeur de couleur plus élevée, par exemple hi-color, 24 bits ou 32 bits. L’indicateur CK_RGB doit être spécifié avec le CK_INDEX. Si CK_INDEX indicateur est défini, l’index est utilisé comme index de palette en mode 256 couleurs. Toutefois, vous devez fournir un COLORREF avec une couleur true valide afin que si le mode d’affichage est modifié à la volée, DirectShow peut basculer vers à l’aide de la couleur true spécifiée. Cela est dû au fait qu’un certain nombre de couleurs vraies peuvent être mappées à un seul index de palette, mais passer de l’index de palette à une couleur vraie n’est pas un-à-un.

Note Actuellement, cette méthode est implémentée uniquement pour la broche d’entrée principale.
 

Configuration requise

Condition requise Valeur
Client minimal pris en charge Windows 2000 Professionnel [applications de bureau uniquement]
Serveur minimal pris en charge Windows 2000 Server [applications de bureau uniquement]
Plateforme cible Windows
En-tête mpconfig.h
Bibliothèque Strmiids.lib

Voir aussi

Codes d’erreur et de réussite

IMixerPinConfig, interface

IMixerPinConfig ::GetColorKey