Funzione MFTRegister (mfapi.h)
Aggiunge informazioni su una trasformazione Media Foundation (MFT) al Registro di sistema.
Le applicazioni possono enumerare MFT chiamando la funzione MFTEnum o MFTEnumEx .
Sintassi
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
);
Parametri
[in] clsidMFT
CLSID del MFT. Il MFT deve anche essere registrato come oggetto COM utilizzando lo stesso CLSID.
[in] guidCategory
GUID che specifica la categoria del MFT. Per un elenco delle categorie MFT, vedere MFT_CATEGORY.
[in] pszName
Stringa di caratteri wide che contiene il nome descrittivo di MFT.
[in] Flags
OR bit per bit pari a zero o più dei flag seguenti dell'enumerazione _MFT_ENUM_FLAG:
Valore | Significato |
---|---|
|
MFT esegue l'elaborazione asincrona nel software. Vedere MFT asincroni. Questo flag non si applica alle trasformazioni hardware.
Richiede Windows 7. |
|
L'applicazione deve sbloccare il MFT per usarlo. Vedere IMFFieldOfUseMFTUnlock.
Richiede Windows 7. |
|
MFT esegue l'elaborazione dati basata su hardware, usando il driver AVStream o un proxy basato su GPU MFT. Le MFP in questa categoria elaborano sempre i dati in modo asincrono. Vedere Mft hardware.
Nota Questo flag si applica ai codec video e ai processori video che eseguono interamente il loro lavoro nell'hardware. Non si applica ai decodificatori software che usano l'accelerazione video DirectX per facilitare la decodifica.
|
|
MFT esegue l'elaborazione sincrona nel software. Questo flag non si applica alle trasformazioni hardware. |
|
MFT è ottimizzato per la transcodifica e non deve essere usato per la riproduzione.
Richiede Windows 7. |
L'impostazione di Flag su zero equivale all'impostazione del flag MFT_ENUM_FLAG_SYNCMFT . Il modello di elaborazione predefinito per le MFP è l'elaborazione sincrona.
Prima di Windows 7, il parametro Flags era riservato.
[in] cInputTypes
Numero di elementi nella matrice pInputTypes .
[in] pInputTypes
Puntatore a una matrice di strutture MFT_REGISTER_TYPE_INFO . Ogni membro della matrice specifica un formato di input supportato da MFT. Questo parametro può essere NULL.
Questo parametro può essere NULL. Tuttavia, se il parametro è NULL, MFT verrà enumerato solo quando un'applicazione specifica NULL per il tipo di input desiderato.
[in] cOutputTypes
Numero di elementi nella matrice pOutputTypes .
[in] pOutputTypes
Puntatore a una matrice di strutture MFT_REGISTER_TYPE_INFO . Ogni membro della matrice definisce un formato di output supportato da MFT.
Questo parametro può essere NULL. Tuttavia, se il parametro è NULL, MFT verrà enumerato solo quando un'applicazione specifica NULL per il tipo di output desiderato.
[in] pAttributes
Puntatore all'interfaccia IMFAttributes di un archivio attributi che contiene informazioni aggiuntive sul Registro di sistema. Questo parametro può essere NULL. Se il parametro è diverso da NULL, gli attributi vengono scritti nel Registro di sistema come matrice di byte. È possibile usare la funzione MFTGetInfo per recuperare gli attributi.
Per questo parametro viene definito l'attributo seguente:
Valore | Significato |
---|---|
Contiene il valore di merito di un codec hardware. Vedere Codec Merit. |
Valore restituito
Se questa funzione ha esito positivo, restituisce S_OK. In caso contrario, restituisce un codice di errore HRESULT .
Commenti
Le voci del Registro di sistema create da questa funzione vengono lette dalle funzioni seguenti:
Funzione | Descrizione |
---|---|
MFTEnum | Enumera le MFC in base al tipo di supporto e alla categoria. |
MFTEnumEx | Versione estesa di MFTEnum. |
MFTGetInfo | Cerca un MFT da CLSID e recupera le informazioni del Registro di sistema. |
Questa funzione non registra il CLSID di MFT per le funzioni CoCreateInstance o CoGetClassObject .
Per rimuovere le voci dal Registro di sistema, chiamare MFTUnregister. Se si rimuove un MFT dal sistema, è sempre necessario chiamare MFTUnregister.
I formati specificati nei parametri pInputTypes e pOutputTypes sono progettati per aiutare le applicazioni a cercare le MFP in base al formato. Le applicazioni possono usare le funzioni MFTEnum o MFTEnumEx per enumerare le MFTEnum che corrispondono a un determinato set di formati.
È consigliabile specificare almeno un tipo di input in pInputTypes e un tipo di output nel parametro pOutputTypes . In caso contrario, l'oggetto MFT potrebbe essere ignorato nell'enumerazione .
In Windows a 64 bit, la versione a 32 bit di questa funzione registra il MFT nel nodo a 32 bit del Registro di sistema. Per altre informazioni, vedere Dati applicazione a 32 bit e a 64 bit nel Registro di sistema.
Requisiti
Client minimo supportato | Windows Vista [solo app desktop] |
Server minimo supportato | Windows Server 2008 [solo app desktop] |
Piattaforma di destinazione | Windows |
Intestazione | mfapi.h |
Libreria | Mfplat.lib |
DLL | Mfplat.dll |