Fungsi MFTRegister (mfapi.h)
Menambahkan informasi tentang transformasi Media Foundation (MFT) ke registri.
Aplikasi dapat menghitung MFT dengan memanggil fungsi MFTEnum atau MFTEnumEx .
Sintaks
HRESULT MFTRegister(
[in] CLSID clsidMFT,
[in] GUID guidCategory,
[in] LPWSTR pszName,
[in] UINT32 Flags,
[in] UINT32 cInputTypes,
[in] MFT_REGISTER_TYPE_INFO *pInputTypes,
[in] UINT32 cOutputTypes,
[in] MFT_REGISTER_TYPE_INFO *pOutputTypes,
[in] IMFAttributes *pAttributes
);
Parameter
[in] clsidMFT
CLSID dari MFT. MFT juga harus terdaftar sebagai objek COM menggunakan CLSID yang sama.
[in] guidCategory
GUID yang menentukan kategori MFT. Untuk daftar kategori MFT, lihat MFT_CATEGORY.
[in] pszName
String karakter lebar yang berisi nama MFT yang mudah diingat.
[in] Flags
Bitwise OR dari nol atau beberapa bendera berikut dari enumerasi _MFT_ENUM_FLAG :
Nilai | Makna |
---|---|
|
MFT melakukan pemrosesan asinkron dalam perangkat lunak. Lihat MFT asinkron. Bendera ini tidak berlaku untuk transformasi perangkat keras.
Membutuhkan Windows 7. |
|
Aplikasi harus membuka kunci MFT untuk menggunakannya. Lihat IMFFieldOfUseMFTUnlock.
Membutuhkan Windows 7. |
|
MFT melakukan pemrosesan data berbasis perangkat keras, menggunakan driver AVStream atau MFT proksi berbasis GPU. MFT dalam kategori ini selalu memproses data secara asinkron. Lihat MFT perangkat keras.
Catatan Bendera ini berlaku untuk codec video dan prosesor video yang melakukan pekerjaan mereka sepenuhnya di perangkat keras. Ini tidak berlaku untuk dekode perangkat lunak yang menggunakan DirectX Video Acceleration untuk membantu pendekodean.
|
|
MFT melakukan pemrosesan sinkron dalam perangkat lunak. Bendera ini tidak berlaku untuk transformasi perangkat keras. |
|
MFT dioptimalkan untuk transcoding dan tidak boleh digunakan untuk pemutaran.
Membutuhkan Windows 7. |
Mengatur Bendera ke nol setara dengan mengatur bendera MFT_ENUM_FLAG_SYNCMFT . Model pemrosesan default untuk MFTs adalah pemrosesan sinkron.
Sebelum Windows 7, parameter Bendera dicadangkan.
[in] cInputTypes
Jumlah elemen dalam array pInputTypes .
[in] pInputTypes
Penunjuk ke array struktur MFT_REGISTER_TYPE_INFO . Setiap anggota array menentukan format input yang didukung MFT. Parameter ini bisa NULL.
Parameter ini bisa NULL. Namun, jika parameter adalah NULL, MFT hanya akan dijumlahkan ketika aplikasi menentukan NULL untuk jenis input yang diinginkan.
[in] cOutputTypes
Jumlah elemen dalam array pOutputTypes .
[in] pOutputTypes
Penunjuk ke array struktur MFT_REGISTER_TYPE_INFO . Setiap anggota array menentukan format output yang didukung MFT.
Parameter ini bisa NULL. Namun, jika parameter adalah NULL, MFT hanya akan dijumlahkan ketika aplikasi menentukan NULL untuk jenis output yang diinginkan.
[in] pAttributes
Arahkan ke antarmuka IMFAttributes dari penyimpanan atribut yang berisi informasi registri tambahan. Parameter ini bisa NULL. Jika parameter non-NULL, atribut ditulis ke registri sebagai array byte. Anda dapat menggunakan fungsi MFTGetInfo untuk mengambil atribut.
Atribut berikut didefinisikan untuk parameter ini:
Nilai | Makna |
---|---|
Berisi nilai manfaat codec perangkat keras. Lihat Merit Codec. |
Nilai kembali
Jika fungsi ini berhasil, fungsi akan mengembalikan S_OK. Jika tidak, kode kesalahan HRESULT akan dikembalikan.
Keterangan
Entri registri yang dibuat oleh fungsi ini dibaca oleh fungsi berikut:
Fungsi | Deskripsi |
---|---|
MFTEnum | Menghitung MFT berdasarkan jenis dan kategori media. |
MFTEnumEx | Versi MFTEnum yang diperluas. |
MFTGetInfo | Mencari MFT by CLSID dan mengambil informasi registri. |
Fungsi ini tidak mendaftarkan CLSID MFT untuk fungsi CoCreateInstance atau CoGetClassObject .
Untuk menghapus entri dari registri, panggil MFTUnregister. Jika Anda menghapus MFT dari sistem, Anda harus selalu memanggil MFTUnregister.
Format yang diberikan dalam parameter pInputTypes dan pOutputTypes dimaksudkan untuk membantu aplikasi mencari MFTs berdasarkan format. Aplikasi dapat menggunakan fungsi MFTEnum atau MFTEnumEx untuk menghitung MFT yang cocok dengan serangkaian format tertentu.
Disarankan untuk menentukan setidaknya satu jenis input dalam pInputTypes dan satu jenis output dalam parameter pOutputTypes . Jika tidak, MFT mungkin dilewati dalam enumerasi.
Pada Windows 64-bit, versi 32-bit dari fungsi ini mendaftarkan MFT dalam simpul registri 32-bit. Untuk informasi selengkapnya, lihat Data Aplikasi 32-bit dan 64-bit di Registri.
Persyaratan
Klien minimum yang didukung | Windows Vista [hanya aplikasi desktop] |
Server minimum yang didukung | Windows Server 2008 [hanya aplikasi desktop] |
Target Platform | Windows |
Header | mfapi.h |
Pustaka | Mfplat.lib |
DLL | Mfplat.dll |