locked
IMFSequencerSource for Live-Streams without duration? RRS feed

  • Question

  • hi there,

    i´m currently evaluating methods how i can implement playlists with live video sources that stream realtime videos over the wire. creating several topologies manually and calling SetTopology on the session based on some timer works quite well, however, i wonder if i could use the IMFSequencerSource to fulfill this task.

    to me, it looks like the sequencer source is designed for playback of files that have a specific duration and so on. right now i dont know if its possible to skip to another segment if the segment duration is unknown (as the sources duration can actually be considered as indefinite). 

    is there something to sequence live streams or do i have to write something like this on my own?

    thanks

    j.

    Tuesday, July 27, 2010 8:08 AM

Answers

  • We use the sequencer source to handle audio and video capture streams -- that's essentially what is created under the hood when calling MFCreateAggregateSource.  The sequencer source depends on sending the right events at the right time (particularly, MEEndOfStream), not on any static content duration.

    That said, I do not think the sequencer source is the right solution for your design.  The sequencer source essentially does two things:

    (1) Aggregates multiple media sources so that more than one media source can be hosted in the media session.

    (2) Performs preroll and smooth transitions between playlist elements.

    Though the source aggregation might be useful to you if you ever plan to do audio with the video streams, I do not think the sequencer will do much for the transitions between elements.  Since the sources are live they cannot really be prerolled for smooth transitions.  As long as calling SetTopology directly for each playlist element works, I would avoid the complexity of the sequencer source.

    Thursday, August 26, 2010 1:28 AM