Creating Topologies

This section describes some of the general procedures for creating a topology.

The general steps for creating a topology are as follows:

  1. Create a new topology object by calling MFCreateTopology. This function returns a pointer to the topology's IMFTopology interface.

  2. Initially, the topology does not contain any nodes. To create nodes for the topology, call MFCreateTopologyNode. This function returns a pointer to the node's IMFTopologyNode interface. You must specify the node type when you create the node:

    • Source node.

    • Transform node.

    • Output node.

    • Tee node.

  3. Initialize each node. The initialization process depends on the node type, as described in the topics that follow.

  4. Add each node to the topology by calling IMFTopology::AddNode.

  5. Connect the nodes. To connect a node, call IMFTopologyNode::ConnectOutput on the upstream node, and pass in a pointer to the downstream node.

The following topics give the specific steps for each node type.

Creating Source Nodes How to create a source node.
Creating Transform Nodes How to create a transform node.
Creating Output Nodes How to create an output node.


Related topics