locked
Problem with MF Pipeline and lots of parallel sessions RRS feed

  • Question

  • Hi there,

    i recently encountered a big problem when it comes to rendering multiple streams in parallel. I use a custom MediaSource for live playback and a custom decoder MFT that does decoding. Everything works fine when rendering multiple streams in parallel (up to 25-30). 

    When more streams are rendered, the first 20 or so are displayed correctly, however, the other streams are hanging there and it seems as if the pipeline cannot keep up requesting and delivering samples. I switched the MFT to Async mode, but the behavior was the same.

    Also, my observations showed that is doesn´t matter whether streams are 25fps or just something like 4. Playback becomes choppy at around 30-40 streams (but does not affect the first 20 streams).

    CPU/GPU Usage isnt a problem as only about a half of the cpu is used.

    So my question is...how does the MF Pipeline react on multiple MediaSessions in the same process?

    My MediaSource uses its own WorkQueue. i also set some custom WorkQueues on the Source/Output Topology Nodes.

    Any ideas how to pinpoint this issue and work around it? Any details about how the MF Pipeline works will be helpful.

    Thanks a lot

    Joachim

    Monday, March 25, 2013 9:20 AM