Método IMFTopoLoader::Load (mfidl.h)

Cria uma topologia totalmente carregada da topologia parcial de entrada.

Sintaxe

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

Parâmetros

[in] pInputTopo

Um ponteiro para a interface IMFTopology da topologia parcial a ser resolvida.

[out] ppOutputTopo

Recebe um ponteiro para a interface IMFTopology da topologia concluída. O chamador deve liberar a interface.

[in] pCurrentTopo

Um ponteiro para a interface IMFTopology da topologia completa anterior. O carregador de topologia pode reutilize objetos dessa topologia na nova topologia. Este parâmetro pode ser NULL. Consulte Observações.

Valor retornado

O método retorna um HRESULT. Os possíveis valores incluem, mas sem limitação, aqueles na tabela a seguir.

Código de retorno Descrição
S_OK
O método foi bem-sucedido.
MF_E_TOPO_SINK_ACTIVATES_UNSUPPORTED
Um ou mais nós de saída contêm IMFActivate pointers. O chamador deve associar os nós de saída aos coletores de mídia. Consulte Associando nós de saída a coletores de mídia.

Comentários

Esse método cria transformações intermediárias necessárias para concluir a topologia. Ele também define os tipos de mídia de entrada e saída em todos os objetos na topologia. Se o método for bem-sucedido, a topologia completa será retornada no parâmetro ppOutputTopo .

Você pode usar o parâmetro pCurrentTopo para fornecer uma topologia completa que foi carregada anteriormente. Se essa topologia contiver objetos necessários na nova topologia, o carregador de topologia poderá reutilizá-los sem criá-los novamente. Esse cache pode potencialmente tornar o processo mais rápido. Os objetos de pCurrentTopo não serão reconfigurados, portanto, você pode especificar uma topologia que esteja transmitindo dados ativamente. Por exemplo, enquanto uma topologia ainda está em execução, você pode pré-carregar a próxima topologia.

Antes de chamar esse método, você deve garantir que os nós de saída na topologia parcial tenham ponteiros IMFStreamSink válidos, não IMFActivate pointers. A Sessão de Mídia executa automaticamente essa ação dentro do método IMFMediaSession::SetTopology . No entanto, se você chamar Load antes de chamar SetTopology, deverá associar os nós de saída manualmente. Para obter mais informações, consulte Associando nós de saída a coletores de mídia.

Requisitos

   
Cliente mínimo com suporte Windows Vista [somente aplicativos da área de trabalho]
Servidor mínimo com suporte Windows Server 2008 [somente aplicativos da área de trabalho]
Plataforma de Destino Windows
Cabeçalho mfidl.h
Biblioteca Mfuuid.lib

Confira também

Edifício avançado de topologia

IMFTopoLoader

Topologias