atribut MF_SA_D3D_AWARE
Menentukan apakah transformasi Media Foundation (MFT) mendukung DirectX Video Acceleration (DXVA). Atribut ini hanya berlaku untuk MFTs video.
Jenis Data
BOOL disimpan sebagai UINT32
Keterangan
Untuk mengkueri atribut ini, panggil IMFTransform::GetAttributes untuk mendapatkan penyimpanan atribut global MFT. Jika GetAttributes berhasil, hubungi IMFAttributes::GetUINT32.
Atribut ini memberi tahu klien apakah MFT dapat menggunakan video Direct3D 9:
- Jika atribut bukan nol, klien dapat memberi MFT penunjuk ke antarmuka IDirect3DDeviceManager9 sebelum streaming dimulai. Untuk melakukannya, klien mengirim pesan MFT_MESSAGE_SET_D3D_MANAGER ke MFT. Klien tidak diharuskan untuk mengirim pesan ini.
- Jika atribut ini nol (FALSE), MFT tidak mendukung video Direct3D 9, dan klien tidak boleh mengirim pesan MFT_MESSAGE_SET_D3D_MANAGER ke MFT.
Nilai default atribut ini adalah FALSE. Perlakukan atribut ini sebagai baca-saja. Jangan ubah nilai; MFT akan mengabaikan perubahan apa pun pada nilai.
Untuk informasi selengkapnya tentang menerapkan atribut ini dalam MFT kustom, lihat MFTs Direct3D-Aware.
Konstanta GUID untuk atribut ini diekspor dari mfuuid.lib.
Contoh
Kode berikut menguji apakah MFT mendukung DXVA.
// Returns TRUE is an MFT supports DirectX Video Acceleration.
BOOL IsTransformD3DAware(IMFTransform *pMFT)
{
BOOL bD3DAware = FALSE;
IMFAttributes *pAttributes = NULL;
HRESULT hr = pMFT->GetAttributes(&pAttributes);
if (SUCCEEDED(hr))
{
bD3DAware = MFGetAttributeUINT32(pAttributes, MF_SA_D3D_AWARE, FALSE);
pAttributes->Release();
}
return bD3DAware;
}
Persyaratan
Persyaratan | Nilai |
---|---|
Klien minimum yang didukung |
Windows Vista [aplikasi desktop | Aplikasi UWP] |
Server minimum yang didukung |
Windows Server 2008 [aplikasi desktop | Aplikasi UWP] |
Header |
|
Lihat juga