Funzione MFCreateTransformActivate (mftransform.h)
Crea un oggetto di attivazione generico per le trasformazioni di Media Foundation (MFT).
Sintassi
HRESULT MFCreateTransformActivate(
[out] IMFActivate **ppActivate
);
Parametri
[out] ppActivate
Riceve un puntatore all'interfaccia FMActivate . Il chiamante deve rilasciare l'interfaccia.
Valore restituito
Se questa funzione ha esito positivo, restituisce S_OK. In caso contrario, restituisce un codice di errore HRESULT .
Commenti
La maggior parte delle applicazioni non userà questa funzione; viene usato internamente dalla funzione MFTEnumEx .
Un oggetto di attivazione è un oggetto helper che crea un altro oggetto, un po' simile a una classe factory. La funzione MFCreateTransformActivate crea un oggetto di attivazione per le reti MULTIFUNZIONE. Prima che questo oggetto di attivazione possa creare un MFT, il chiamante deve inizializzare l'oggetto di attivazione impostando uno o più attributi su di esso.
Attributo | Descrizione |
---|---|
MFT_TRANSFORM_CLSID_Attribute | Obbligatorio. Contiene il CLSID dell'MFT. L'oggetto di attivazione crea il MFT passando questo CLSID alla funzione CoCreateInstance . |
MF_TRANSFORM_CATEGORY_Attribute | Facoltativa. Specifica la categoria del MFT. |
MF_TRANSFORM_FLAGS_Attribute | Contiene vari flag che descrivono MFT. Per le MFT basate su hardware, impostare il flag di MFT_ENUM_FLAG_HARDWARE . In caso contrario, questo attributo è facoltativo. |
MFT_CODEC_MERIT_Attribute |
Facoltativa. Contiene il valore di merito di un codec hardware.
Se questo attributo è impostato e il relativo valore è maggiore di zero, l'oggetto di attivazione chiama MFGetMFTMerit per ottenere il valore di merito attendibile per MFT. Se il merito attendibile è minore del valore di questo attributo, il metodo FMActivate::ActivateObject dell'oggetto di attivazione ha esito negativo e restituisce MF_E_INVALID_CODEC_MERIT. |
MFT_ENUM_HARDWARE_URL_Attribute | Obbligatorio per le schede multifunzione basate su hardware. Specifica il collegamento simbolico per il dispositivo hardware. Il proxy del dispositivo usa questo valore per configurare MFT. |
MFT_FIELDOFUSE_UNLOCK_Attribute |
Facoltativa. Contiene un puntatore IMFFieldOfUseMFTUnlock , che può essere usato per sbloccare MFT. L'interfaccia FMFieldOfUseMFTUnlock viene usata con le unità multifunzione che hanno restrizioni di utilizzo.
Se questo attributo è impostato e l'attributo MF_TRANSFORM_FLAGS_Attribute contiene il flag di MFT_ENUM_FLAG_FIELDOFUSE , l'oggetto di attivazione chiama FMFieldOfUseMFTUnlock::Unlock quando crea MFT. Un'applicazione può anche impostare l'attributo MFT_FIELDOFUSE_UNLOCK_Attribute senza impostare il flag di MFT_ENUM_FLAG_FIELDOFUSE . In tal caso, l'applicazione deve chiamare Sblocca. |
MFT_PREFERRED_ENCODER_PROFILE |
Facoltativa. Contiene il profilo di codifica per un codificatore. Il valore di questo attributo è un puntatore FMAttributes .
Se questo attributo è impostato e il valore dell'attributo MF_TRANSFORM_CATEGORY_Attribute è MFT_CATEGORY_AUDIO_ENCODER o MFT_CATEGORY_VIDEO_ENCODER, l'oggetto di attivazione usa il profilo di codifica per configurare MFT. Per questo scopo, MFT deve esporre ICodecAPI o IPropertyStore . |
MFT_PREFERRED_OUTPUTTYPE_Attribute |
Facoltativa. Specifica il formato di output preferito per un codificatore.
Se questo attributo è impostato e il valore dell'attributo MF_TRANSFORM_CATEGORY_Attribute è MFT_CATEGORY_AUDIO_ENCODER o MFT_CATEGORY_VIDEO_ENCODER, l'oggetto di attivazione imposta questo tipo di supporto nel MFT. |
Per altre informazioni sugli oggetti di attivazione, vedere Oggetti di attivazione.
Requisiti
Client minimo supportato | Windows 7 [solo app desktop] |
Server minimo supportato | Windows Server 2008 R2 [solo app desktop] |
Piattaforma di destinazione | Windows |
Intestazione | mftransform.h |
Libreria | Mfplat.lib |
DLL | Mfplat.dll |