so do @GMFBridge no DirectShow
enter code here
Tenho que parar e começarVideo Renderer Filter dinamicamente. Isso não é possível com a Arquitetura de exibição direta "normal" sem criar um novo gráfico. Mas com o GMFBridge parece que é possível.
Mas não consigo descobrir como usá-lo. (Sim, li o jornal emhttp: //www.gdcl.co.uk/gmfbridge/index.ht )
Meu gráfico é:
SourceFilter ---> MyCustomTransformFilter ---> Video Rendrer Filter
Então GMFBridge se encaixa onde?
i) I can devide my graph two pieces
[ Source Filter + MyCustomFilter ] + Video Rendere
ii) Then how to add my filters to graph, and stop start Video Rendrere without
affecting the rest of my grapg using GMFBridge?
Atualizar
Obrigado Wimmel
Eu apenas confuso ... Deixe-me esclarecer o que eu entendo
i) Eu tenho um gráfico único no início
(SingleGraph) SourceFilter ---> MyCustomTransformFilter ---> Video Rendrer Filter
ii) Para usar o GMFBridge, divido meu gráfico único em dois gráficos separados
First Graph : SourceFilter ---> MyCustomTransformFilter --> GMFBridgeSinkFilter
Second Graph : GMFBridgeSourceFilter ---> Video Renderer Filter
Well, GMFBridgeSinkFilter e GMFBridgeSourceFilter? o que eles são? o tipo de classe?
iii)Em seguida, crio uma intenção de IGMFBridgeControllerPtr e faço a inicialização necessária ...
IGMFBridgeControllerPtr bridgeController = ......
.....
bridgeController->AddStream(true, eUncompressed, true);
bridgeController->AddStream(false, eUncompressed, true);
iv)Bridge Controller adicione um filtro coletor ao gráfico de origem e conecte-o:
bridgeController->InsertSinkFilter(sourceGraph, sourceGraphSinkFilter);
O que são s sourceGraph, sourceGraphSinkFilter?
// now connect it like this:
// SourceFilter ---> MyCustomTransformFilter ---> SourceGraphSinkFilter
Você quer dizer conectar programaticamente esses filtros no gráfico de origem?
iv) No segundo gráfico, deixe o controlador adicionar um filtro de origem e conectá-lo ao renderizador:
bridgeController->InsertSourceFilter(sinkFilter, renderGraph, renderGraphSourceFilter);
Novamente o que são sinkFilter, renderGraphSourceFilter etc?
// now connect it like this:
// RenderGraphSourceFilter ---> Video Renderer Filter
AndVocê quer dizer conectar programaticamente esses filtros no gráfico de origem?