struttura KS_VIDEOINFO (ksmedia.h)
La struttura KS_VIDEOINFO descrive le informazioni di bitmap e colore per un flusso video.
Sintassi
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;
Membri
rcSource
Specifica un rettangolo di ritaglio che seleziona la parte del segnale video attivo da usare.
rcTarget
Specifica un rettangolo che indica quale parte del buffer di destinazione utilizzare.
dwBitRate
Specifica un valore che indica la velocità di dati approssimativa del flusso video, in bit al secondo.
dwBitErrorRate
Specifica un valore che indica la frequenza di errore dei dati del flusso video, in bit errori al secondo.
AvgTimePerFrame
Specifica il tempo medio per fotogramma in unità da 100 nanosecondi.
bmiHeader
Descrive una struttura KS_BITMAPINFOHEADER che contiene informazioni sul colore e sulla dimensione relative alla bitmap dell'immagine video.
bmiColors[KS_iPALETTE_COLORS]
Matrice di strutture KS_RGBQUAD che specifica la tavolozza dei colori del video. Ogni struttura rappresenta un singolo colore, ovvero una combinazione di intensità rossa, verde e blu.
dwBitMasks[KS_iMASK_COLORS]
Matrice di valori DWORD che specificano maschera di bit true-color.
TrueColorInfo
KS_TRUECOLORINFO struttura che contiene sia una tavolozza dei colori che una matrice di maschera di bit di colore.
Osservazioni
Questa struttura non deve essere utilizzata a meno che il membro biSize del membro KS_BITMAPINFOHEADER sia impostato su sizeof(KS_BITMAPINFOHEADER).
Un filtro di origine può richiedere che il filtro sink prenda solo una sezione del video fornendo valori che definiscono in modo efficace un rettangolo di ritaglio nel membro rcSource. Tuttavia, se il filtro sink non verifica la presenza del rettangolo di ritaglio sulla connessione, il filtro sink esegue semplicemente il rendering di tutto il video, ignorando in modo efficace eventuali informazioni di ritaglio passate dal filtro di origine al filtro sink.
Idealmente, un filtro sink controlla rcSource e se il filtro sink non supporta l'estrazione di immagini e il rettangolo non è vuoto, rifiuta la connessione. Un filtro deve usare la funzione Win32 SetRectEmpty per reimpostare un rettangolo su tutti gli zeri (e IsRectEmpty per controllare successivamente il rettangolo).
Il membro rcTarget specifica il rettangolo di destinazione per il video. La maggior parte dei filtri di origine imposta questo membro su tutti gli zeri. Un filtro downstream può richiedere che il video venga inserito in una determinata area dei buffer forniti. In questo caso, chiama la funzione Win32 QueryAccept con una destinazione non vuota.
Fabbisogno
Requisito | Valore |
---|---|
intestazione | ksmedia.h (include Ksmedia.h) |