I think I've done a little step over. Instead to connect the source node to both the output nodes, I added a tee node and I connected the source node to it and then the tee node to both the output nodes. Now the playback start without errors but it is visible only in the first window. This is the AddBranchToPartialTopology method with the tee node: protected void AddBranchToPartialTopology( IMFTopology pTopology, IMFPresentationDescriptor pSourcePD, int iStream ) { MFError throwonhr; TRACE("CPlayer::AddBranchToPartialTopology");...
I think I've done a little step over. Instead to connect the source node to both the output nodes, I added a tee node and I connected the source node to it and then the tee node to both the output nodes. Now the playback start without errors but it is visible only in the first window. This is the AddBranchToPartialTopology method with the tee node: protected void AddBranchToPartialTopology( IMFTopology pTopology, IMFPresentationDescriptor pSourcePD, int iStream ) { MFError throwonhr; TRACE("CPlayer::AddBranchToPartialTopology");...
I tried another way by modify AddBranchToPartialTopology and CreateOutputNode methods: protected void AddBranchToPartialTopology( IMFTopology pTopology, IMFPresentationDescriptor pSourcePD, int iStream ) { MFError throwonhr; TRACE("CPlayer::AddBranchToPartialTopology"); Debug.Assert(pTopology != null); IMFStreamDescriptor pSourceSD = null; IMFTopologyNode pSourceNode = null; IMFTopologyNode pOutputNode = null; IMFTopologyNode pOutputNode2 = null; bool fSelected = false; try { // Get the stream descriptor...
I'm at my very first experience with Media Foundation and I'm trying to modify the Basic Playback sample to show the video in two different window at the same time. In shorts, I've added a second output node to the topology. The second output node is created by using the handle of the second window. This is the constructor of the CPlayer class with the handler for the second window: public CPlayer(IntPtr hVideo, IntPtr hVideo2, IntPtr hEvent) { TRACE(("CPlayer::CPlayer")); Debug.Assert(hVideo !=...
I'm at my very first experience with Media Foundation and I'm trying to modify the Basic Playback sample to show the video in two different window at the same time. In shorts, I've added a second output node to the topology. The second output node is created by using the handle of the second window. This is the constructor of the CPlayer class with the handler for the second window: public CPlayer(IntPtr hVideo, IntPtr hVideo2, IntPtr hEvent) { TRACE(("CPlayer::CPlayer")); Debug.Assert(hVideo !=...
Thank you very much for your clear explanation. I've no reason to prefer ffdshow...
I've uninstalled ffdshow and then installed LAV Filters (downloaded here:https://github.com/Nevcairiel/LAVFilters/releases/tag/0.67)....
Hi all, I'm at my very first steps with DirectShow and I'm doing some tests. In the...