structure KS_VIDEOINFO (ksmedia.h)
La structure KS_VIDEOINFO décrit les informations bitmap et de couleur d’un flux vidéo.
Syntaxe
typedef struct tagKS_VIDEOINFO {
RECT rcSource;
RECT rcTarget;
DWORD dwBitRate;
DWORD dwBitErrorRate;
REFERENCE_TIME AvgTimePerFrame;
KS_BITMAPINFOHEADER bmiHeader;
union {
KS_RGBQUAD bmiColors[KS_iPALETTE_COLORS];
DWORD dwBitMasks[KS_iMASK_COLORS];
KS_TRUECOLORINFO TrueColorInfo;
};
} KS_VIDEOINFO, *PKS_VIDEOINFO;
Membres
rcSource
Spécifie un rectangle de découpage qui sélectionne la partie du signal vidéo actif à utiliser.
rcTarget
Spécifie un rectangle qui indique la partie de la mémoire tampon cible à utiliser.
dwBitRate
Spécifie une valeur qui indique le taux de données approximatif du flux vidéo, en bits par seconde.
dwBitErrorRate
Spécifie une valeur qui indique le taux d’erreur de données du flux vidéo, en erreurs de bits par seconde.
AvgTimePerFrame
Spécifie le temps moyen par frame en unités de 100 nanosecondes.
bmiHeader
Décrit une structure KS_BITMAPINFOHEADER qui contient des informations de couleur et de dimension sur la bitmap de l’image vidéo.
bmiColors[KS_iPALETTE_COLORS]
Tableau de structures KS_RGBQUAD qui spécifient la palette de couleurs de la vidéo. Chaque structure représente une couleur unique, qui est une combinaison de intensités rouges, vertes et bleues.
dwBitMasks[KS_iMASK_COLORS]
Tableau de valeurs DWORD qui spécifient des masques de bits de couleur vraie.
TrueColorInfo
KS_TRUECOLORINFO structure qui contient à la fois une palette de couleurs et un tableau de masques de bits de couleur.
Remarques
Cette structure ne doit pas être utilisée, sauf si le biSize membre du membre KS_BITMAPINFOHEADER a la valeur sizeof(KS_BITMAPINFOHEADER).
Un filtre source peut demander que le filtre récepteur ne prenne qu’une section de la vidéo en fournissant des valeurs qui définissent efficacement un rectangle de découpage dans le rcSource membre. Toutefois, si le filtre récepteur ne vérifie pas le rectangle de découpage sur la connexion, le filtre récepteur affiche simplement toutes les vidéos, ignorant efficacement les informations de découpage transmises du filtre source au filtre récepteur.
Dans l’idéal, un filtre récepteur vérifie rcSource et si le filtre récepteur ne prend pas en charge l’extraction d’images et que le rectangle n’est pas vide, il rejette la connexion. Un filtre doit utiliser la fonction Win32 SetRectEmpty pour réinitialiser un rectangle à tous les zéros (et IsRectEmpty pour vérifier ultérieurement le rectangle).
Le rcTarget membre spécifie le rectangle de destination de la vidéo. La plupart des filtres sources définissent ce membre sur tous les zéros. Un filtre en aval peut demander que la vidéo soit placée dans une zone particulière des mémoires tampons qu’elle fournit. Dans ce cas, il appelle la fonction Win32 QueryAccept avec une cible vide.
Exigences
Exigence | Valeur |
---|---|
d’en-tête | ksmedia.h (include Ksmedia.h) |