Bagikan melalui


Struktur MFVideoAlphaBitmapParams (evr9.h)

Menentukan bagaimana alpha-blend video renderer (EVR) yang disempurnakan memadukan bitmap dengan video.

Sintaks

typedef struct MFVideoAlphaBitmapParams {
  DWORD                 dwFlags;
  COLORREF              clrSrcKey;
  RECT                  rcSrc;
  MFVideoNormalizedRect nrcDest;
  FLOAT                 fAlpha;
  DWORD                 dwFilterMode;
} MFVideoAlphaBitmapParams;

Anggota

dwFlags

Bitwise ATAU dari satu atau beberapa bendera dari enumerasi MFVideoAlphaBitmapFlags . Bendera ini menunjukkan anggota struktur lain mana yang berisi informasi yang valid.

clrSrcKey

Kunci warna sumber. Anggota ini digunakan jika anggota dwFlags berisi bendera MFVideoAlphaBitmap_SrcColorKey. Piksel apa pun dalam bitmap yang cocok dengan kunci warna dirender sebagai piksel transparan.

Anda tidak dapat menentukan kunci warna jika Anda memadukan permukaan Direct3D dengan alfa per piksel (D3DFMT_A8R8G8B8).

rcSrc

Persegi panjang sumber. Persegi panjang sumber mendefinisikan wilayah bitmap yang dipadukan alfa dengan video. Persegi panjang sumber diberikan dalam piksel dan relatif terhadap bitmap asli.

Jika Anda melakukan alpha-blending bitmap GDI, Anda harus mengisi struktur ini saat memanggil IMFVideoMixerBitmap::SetAlphaBitmap.

Jika Anda melakukan alpha-blending permukaan Direct3D dan anggota dwFlags berisi bendera MFVideoAlphaBitmap_EntireDDS, anggota rcSrc diabaikan. Jika bendera tidak ada, Anda harus mengisi anggota rcSrc .

Setelah mengatur bitmap initiali, Anda dapat memperbarui persegi panjang sumber dengan memanggil IMFVideoMixerBitmap::UpdateAlphaBitmapParameters. Untuk memperbarui persegi sumber, atur bendera MFVideoAlphaBitmap_SrcColorKey di anggota dwFlags .

Persegi panjang sumber tidak boleh persegi panjang kosong, dan tidak boleh melebihi batas bitmap.

nrcDest

Persegi panjang tujuan. Persegi panjang tujuan mendefinisikan wilayah gambar video yang dikomposisikan yang menerima bitmap alpha-blended. Persegi panjang tujuan ditentukan sebagai persegi panjang yang dinormalisasi menggunakan struktur MFVideoNormalizedRect .

Anggota ini digunakan jika anggota dwFlags berisi bendera MFVideoAlphaBitmap_DestRect. Jika tidak, persegi panjang tujuan default adalah {0, 0, 1, 1}.

fAlpha

Nilai penpaduan alfa. Anggota ini digunakan jika anggota dwFlags berisi bendera MFVideoAlphaBitmap_Alpha. Jika tidak, nilai defaultnya adalah 1,0 (buram). Rentang yang valid adalah 0,0 hingga 1,0, inklusif.

Nilai ini diterapkan ke seluruh gambar bitmap. Untuk membuat wilayah transparan, gunakan anggota clrSrcKey atau gunakan permukaan DirectDraw dengan alfa per piksel.

dwFilterMode

Mode pemfilteran Direct3D untuk digunakan saat melakukan operasi alpha-blend. Tentukan mode filter sebagai nilai D3DTEXTUREFILTERTYPE. Untuk informasi selengkapnya, lihat dokumentasi Direct3D.

Anggota ini digunakan jika anggota dwFlags berisi bendera MFVideoAlphaBitmap_FilterMode. Jika tidak, nilai defaultnya adalah D3DTEXF_POINT.

Pemfilteran titik sangat berguna untuk gambar yang berisi teks dan tidak akan direntangkan.

Persyaratan

   
Klien minimum yang didukung Windows Vista [hanya aplikasi desktop]
Server minimum yang didukung Windows Server 2008 [hanya aplikasi desktop]
Header evr9.h

Lihat juga

Perender Video yang Disempurnakan

IMFVideoMixerBitmap::UpdateAlphaBitmapParameters

MFVideoAlphaBitmap

Struktur Yayasan Media