Compilación avanzada de topología

En esta sección se describen algunas técnicas avanzadas para crear topologías. Puede usar estas técnicas si desea tener más control sobre las topologías que envía a la sesión multimedia.

Dado que estas técnicas están pensadas para escenarios que van más allá de la funcionalidad proporcionada por el cargador de topología estándar, muchos de los detalles dependerán de los requisitos concretos de la aplicación. Por lo tanto, esta sección se organiza de forma flexible en torno a subtareas más pequeñas, en lugar de escenarios completos de un extremo a otro.

La aplicación de reproducción típica sigue estos pasos:

  1. La aplicación compila una topología parcial y la pone en cola en la sesión multimedia.
  2. La sesión multimedia invoca al cargador de topologías para resolver la topología.

Si desea ir más allá de las funcionalidades del cargador de topologías, hay tres enfoques generales:

  • Cree una topología completa. Al poner en cola la topología en la sesión multimedia, llame a IMFMediaSession::SetTopology con la marca MFSESSION_SETTOPOLOGY_NORESOLUTION. Esta marca impide que la sesión multimedia intente resolver la topología.

  • Invoque directamente el cargador de topologías para resolver la topología. A continuación, puede modificar la topología completa antes de ponerla en cola en la sesión multimedia.

  • Implemente un cargador de topología personalizado. Con este enfoque, pone en cola una topología parcial, pero la sesión multimedia invoca el cargador personalizado en lugar de la implementación estándar de Media Foundation. Una de las ventajas de este enfoque es que puede realizar la compilación de topología personalizada dentro del entorno protegido. (Sin embargo, en ese caso, el cargador de topología debe ser un componente de confianza. Para obtener más información, vea Ruta de acceso multimedia protegida).

Esta sección contiene los temas siguientes.

Tema Descripción
Cargadores de topología personalizados Cómo proporcionar una implementación personalizada de IMFTopoLoader para la sesión multimedia.
Enlazar nodos de salida a receptores multimedia Cómo preparar los nodos de salida en una topología si usa el cargador de topologías fuera de la sesión multimedia.
Adición de un descodificador a una topología Cómo seleccionar un descodificador manualmente y agregarlo a una topología.

 

Topologías