Compartir a través de


Creación de instancias de MFT de códec

Las transformaciones de Media Foundation (MFT) son objetos COM que implementan la interfaz IMFTransform . Un MFT es un objeto para transformar datos multimedia como parte de una canalización. Una canalización es un grafo acíclico dirigido, que consta de orígenes multimedia, transformaciones de medios y receptores de medios. Una canalización procesa los datos multimedia de streaming de forma asincrónica.

Aunque las MFT se pueden crear instancias y usarse independientemente de la infraestructura de canalización de Media Foundation, es preferible usar el marco MediaFoundation siempre que sea posible.

Puede crear un códec MFT llamando a la función CoCreateInstance . Debe pasar el identificador de clase del MFT, el identificador de interfaz de IMFTransform y un puntero a un puntero IMFTransform .

Los identificadores de clase del códec MFT se definen como constantes en el archivo de encabezado wmcodecdsp.h.

La constante del identificador de interfaz IMFTransform es IID_IMFTransform.

En el ejemplo de código siguiente se muestra cómo crear una instancia de un códec MFT:

HRESULT CreateVideoEncoderMFT(IMFTransform** ppMFT)
{
    if (ppMFT == NULL)
        return E_POINTER;

    return CoCreateInstance(CLSID_CWMV9EncMediaObject,
                            NULL,
                            CLSCTX_INPROC_SERVER, 
                            IID_IMFTransform, 
                            (void**)ppMFT);
}

Trabajar con MFT de códec