1

I have one mp4 Capture application , that continuously capture graph for 30 min (or some dynamic value) , i need the capture accuracy very high tso that do not loss a freq. of data.

For that we decided to make 2 capture graph , run the first graph first , then after 30 min make 2nd graph , run it and and then stop first graph , so we do not loose any data.

in simple manner we do not able to create second graph as first graph is running and resources are in use (almost this is the reason for our logic not working i guess)

i was surfing for it and found the GMFBridge , which i guess can be useful in our case, i am thinking of to make process as below

Source Graph

Video Source --> XCodec Filter --> Infinite tee --> GMF Bridge Sink Filter (multile as per tee)-->

Audio Source --> ACM Wrapper --> MonoGraph AAC Encodec --> Infinite Tee (multile as per tee)--> GMF Bridge Sink Filter -->

First Graph

  --> GMF Source Filter -->  GDCL Mux --> Filter Writer

Second Graph

  --> GMF Source Filter -->  GDCL Mux --> Filter Writer

Now using GMFBridge we'll make the source to use only once and make duplicates of it using Infinite Pin Tee Filter , and make application that conncets Source Graph to First Graph and Source Graph to Second Graph .

And first run combination of Source Graph to First Graph and after 30 mins run combination of Source Graph to First Graph and then stop that graph.

I wonder that is my understanding is proper?? can i achieve this using GMFbridge. and also i need simple code for GMFBridge other than provided on their sample application.

Please help on this.

Thanks

meghana
  • 907
  • 1
  • 20
  • 45

1 Answers1

1

You would only add one GMF Bridge Sink Filter to the source graph. If you need multiple streams, you can configure the bridge to have multiple streams. But it does not make sense to put a Infinite tee in it just because you need it twice.

what you do is:

  • start the source graph.
  • start the first graph
  • connect the source with the first graph
  • start the second graph
  • (after 30 minutes) connect the source graph with the second graph
  • stop the first graph
  • ...

This way you won't lose any samples, the first 30 minutes all samples go to the first graph. From the moment you switch, all samples go to the second graph.

wimh
  • 15,072
  • 6
  • 47
  • 98
  • Thanks @Wimmel for your reply, i had put infinite tee bcoz i thought of to connect both `source graph to first graph` and `source graph to second graph` at the same place and time, but as if you suggested do not loose any data then i'll try to that first , but i want not to loose data of a few milliseconds also... is this possible?? and also i saw the GMF bridge code but did not get how to integrate that in my code(what should be added in my application to work GMFBridge in my application)?? , can you suggest me on this?? – meghana May 31 '12 at 05:41
  • As far as I know, you will not lose any data if you use it that way. This is exactly one of the usecases for GMFBridge. See also [this](http://stackoverflow.com/a/6096766/33499) reply, where I explain how to use GMFBridge, but there is also some good documentation included in the GMFBridge download. I don't know if it is possible to use two bridges in a single graph to connect to two graphs at the same time. But you can modify the sourcecode if required. – wimh May 31 '12 at 07:58
  • hi @Wimmel , i was trying for making one simple GMFBridge application , but when i bridge 2 greaphs its giving me error : A subscription cannot be stored unless its event class already exists any idea?? why such error is coming?? – meghana May 31 '12 at 14:59