Partager via


MÉTHODE IMFTopoLoader::Load (mfidl.h)

Crée une topologie entièrement chargée à partir de la topologie partielle d’entrée.

Syntaxe

HRESULT Load(
  [in]  IMFTopology *pInputTopo,
  [out] IMFTopology **ppOutputTopo,
  [in]  IMFTopology *pCurrentTopo
);

Paramètres

[in] pInputTopo

Pointeur vers l’interface IMFTopology de la topologie partielle à résoudre.

[out] ppOutputTopo

Reçoit un pointeur vers l’interface IMFTopology de la topologie terminée. L’appelant doit libérer l’interface.

[in] pCurrentTopo

Pointeur vers l’interface IMFTopology de la topologie complète précédente. Le chargeur de topologie peut réutiliser des objets de cette topologie dans la nouvelle topologie. Ce paramètre peut être NULL. Consultez la section Notes.

Valeur de retour

Cette méthode retourne un code HRESULT. Les valeurs possibles sont notamment celles figurant dans le tableau suivant.

Code de retour Description
S_OK
S_OK
MF_E_TOPO_SINK_ACTIVATES_UNSUPPORTED
Un ou plusieurs nœuds de sortie contiennent des pointeurs IMFActivate . L’appelant doit lier les nœuds de sortie aux récepteurs de média. Consultez Liaison de nœuds de sortie à des récepteurs multimédias.

Notes

Cette méthode crée toutes les transformations intermédiaires nécessaires pour terminer la topologie. Il définit également les types de média d’entrée et de sortie sur tous les objets de la topologie. Si la méthode réussit, la topologie complète est retournée dans le paramètre ppOutputTopo .

Vous pouvez utiliser le paramètre pCurrentTopo pour fournir une topologie complète qui a été précédemment chargée. Si cette topologie contient des objets nécessaires dans la nouvelle topologie, le chargeur de topologie peut les réutiliser sans les recréer. Cette mise en cache peut potentiellement accélérer le processus. Les objets de pCurrentTopo ne seront pas reconfigurés. Vous pouvez donc spécifier une topologie qui diffuse activement des données. Par exemple, pendant qu’une topologie est toujours en cours d’exécution, vous pouvez précharger la topologie suivante.

Avant d’appeler cette méthode, vous devez vous assurer que les nœuds de sortie dans la topologie partielle ont des pointeurs IMFStreamSink valides, et non des pointeurs IMFActivate . La session multimédia effectue automatiquement cette action à l’intérieur de la méthode IMFMediaSession::SetTopology . Toutefois, si vous appelez Load avant d’appeler SetTopology, vous devez lier les nœuds de sortie manuellement. Pour plus d’informations, consultez Liaison de nœuds de sortie à des récepteurs de média.

Spécifications

   
Client minimal pris en charge Windows Vista [applications de bureau uniquement]
Serveur minimal pris en charge Windows Server 2008 [applications de bureau uniquement]
Plateforme cible Windows
En-tête mfidl.h
Bibliothèque Mfuuid.lib

Voir aussi

Création de topologie avancée

IMFTopoLoader

Topologies