Función MFCreateTransformActivate (mftransform.h)
Crea un objeto de activación genérico para las transformaciones (MFT) de Media Foundation.
Sintaxis
HRESULT MFCreateTransformActivate(
[out] IMFActivate **ppActivate
);
Parámetros
[out] ppActivate
Recibe un puntero a la interfaz IMFActivate . El autor de la llamada debe liberar la interfaz .
Valor devuelto
Si esta función se realiza correctamente, devuelve S_OK. De lo contrario, devuelve un código de error de HRESULT.
Comentarios
La mayoría de las aplicaciones no usarán esta función; la función MFTEnumEx la usa internamente.
Un objeto de activación es un objeto auxiliar que crea otro objeto, algo similar a un generador de clases. La función MFCreateTransformActivate crea un objeto de activación para las MFT. Para que este objeto de activación pueda crear un MFT, el autor de la llamada debe inicializar el objeto de activación estableciendo uno o varios atributos en él.
Atributo | Descripción |
---|---|
MFT_TRANSFORM_CLSID_Attribute | Necesario. Contiene el CLSID del MFT. El objeto de activación crea el MFT pasando este CLSID a la función CoCreateInstance . |
MF_TRANSFORM_CATEGORY_Attribute | Opcional. Especifica la categoría del MFT. |
MF_TRANSFORM_FLAGS_Attribute | Contiene varias marcas que describen el MFT. En el caso de las MFP basadas en hardware, establezca la marca MFT_ENUM_FLAG_HARDWARE . De lo contrario, este atributo es opcional. |
MFT_CODEC_MERIT_Attribute |
Opcional. Contiene el valor de mérito de un códec de hardware.
Si se establece este atributo y su valor es mayor que cero, el objeto de activación llama a MFGetMFTMerit para obtener el valor de mérito de confianza para MFT. Si el mérito de confianza es menor que el valor de este atributo, se produce un error en el método IMFActivate::ActivateObject del objeto de activación y devuelve MF_E_INVALID_CODEC_MERIT. |
MFT_ENUM_HARDWARE_URL_Attribute | Se requiere para las MFT basadas en hardware. Especifica el vínculo simbólico para el dispositivo de hardware. El proxy de dispositivo usa este valor para configurar MFT. |
MFT_FIELDOFUSE_UNLOCK_Attribute |
Opcional. Contiene un puntero IMFFieldOfUseMFTUnlock , que se puede usar para desbloquear el MFT. La interfaz IMFFieldOfUseMFTUnlock se usa con MFP que tienen restricciones de uso.
Si se establece este atributo y el atributo MF_TRANSFORM_FLAGS_Attribute contiene la marca MFT_ENUM_FLAG_FIELDOFUSE , el objeto de activación llama a IMFFieldOfUseMFTUnlock::Unlock cuando crea el MFT. Una aplicación también puede establecer el atributo MFT_FIELDOFUSE_UNLOCK_Attribute sin establecer la marca MFT_ENUM_FLAG_FIELDOFUSE . En ese caso, la aplicación debe llamar a Unlock. |
MFT_PREFERRED_ENCODER_PROFILE |
Opcional. Contiene el perfil de codificación de un codificador. El valor de este atributo es un puntero IMFAttributes .
Si se establece este atributo y el valor del atributo MF_TRANSFORM_CATEGORY_Attribute es MFT_CATEGORY_AUDIO_ENCODER o MFT_CATEGORY_VIDEO_ENCODER, el objeto de activación usa el perfil de codificación para configurar el MFT. El MFT debe exponer ICodecAPI o IPropertyStore para este fin. |
MFT_PREFERRED_OUTPUTTYPE_Attribute |
Opcional. Especifica el formato de salida preferido para un codificador.
Si este conjunto de atributos y el valor del atributo MF_TRANSFORM_CATEGORY_Attribute es MFT_CATEGORY_AUDIO_ENCODER o MFT_CATEGORY_VIDEO_ENCODER, el objeto de activación establece este tipo de medio en el MFT. |
Para obtener más información sobre los objetos de activación, vea Objetos de activación.
Requisitos
Cliente mínimo compatible | Windows 7 [solo aplicaciones de escritorio] |
Servidor mínimo compatible | Windows Server 2008 R2 [solo aplicaciones de escritorio] |
Plataforma de destino | Windows |
Encabezado | mftransform.h |
Library | Mfplat.lib |
Archivo DLL | Mfplat.dll |