Condividi tramite


Funzione GetBitmapFormatSize

[La funzionalità associata a questa pagina, DirectShow, è una funzionalità legacy. È stata sostituita da MediaPlayer, IMFMediaEngine e Audio/Video Capture in Media Foundation. Queste funzionalità sono state ottimizzate per Windows 10 e Windows 11. Microsoft consiglia vivamente che il nuovo codice usi MediaPlayer, IMFMediaEngine e Audio/Video Capture in Media Foundation invece di DirectShow, quando possibile. Microsoft suggerisce che il codice esistente che usa le API legacy venga riscritto per usare le nuove API, se possibile.

La GetBitmapFormatSize funzione calcola le dimensioni necessarie per una struttura VIDEOINFO che può contenere una struttura BITMAPINFOHEADER specificata.

Sintassi

LONG GetBitmapFormatSize(
   const BITMAPINFOHEADER *pHeader
);

Parametri

pHeader

Puntatore a una struttura BITMAPINFOHEADER .

Valore restituito

Restituisce le dimensioni, in byte.

Commenti

Una struttura BITMAPINFOHEADER può essere seguita da maschere di colori o voci di tavolozza, quindi può essere difficile determinare il numero di byte necessari per costruire una struttura VIDEOINFO da una struttura BITMAPINFOHEADER esistente.

Per copiare una struttura BITMAPINFOHEADER in una struttura VIDEOINFO , utilizzare la macro HEADER , che calcola l'offset corretto.

Esempio

LONG size = GetBitmapFormatSize(&bmi);

VIDEOINFO *pVi = static_cast<VIDEOINFO*>(CoTaskMemAlloc(size));

if (pVi != NULL)
{
    CopyMemory(HEADER(pVi), &bmi, sizeof(BITMAPINFOHEADER));
}

Requisiti

Requisito Valore
Intestazione
Wxutil.h (include Streams.h)
Libreria
Strmbase.lib (build retail);
Strmbasd.lib (build di debug)

Vedi anche

Funzioni video e immagini