locked
Should I use IMFSequencerSource? RRS feed

  • Question

  • Hi,

     

    I want to initialise multiple cameras and multiple videos and then switch between them.  I thought the IMFSequencerSource would be a good idea however in the sample docs (http://msdn.microsoft.com/en-us/library/bb970580%28v=VS.85%29.aspx) it says:

     

    "This sample was removed in the Windows SDK for Windows 7. The recommended way to implement a playlist in Windows 7 is to use the IMFPMediaPlayer interface."

     

    But when I visit that IMFPMediaPlayer page it says that it's deprecated...  Also I dont' think it's what I need as I need to build quite a complex graph with audio and video mixers, display and wmv encoding.

     

    Should I use IMFSequencerSource or is there a better way to switch between multiple sources?  I heard that I could modify the topology dynamically which sounds ideal but when I tested this in TopoEdit it didn't let me leave any nodes disconnected.

     

    Thanks!

    -Andrew

    Monday, June 14, 2010 9:39 AM

Answers

  • Well, that certainly is confusing.  I will see what can be done to update the docs.

    There's nothing wrong with using the sequencer source.  The MFPlay API was recommended because the sequencer source is quite complex and it is a lot more work to get a playlist application up and running using the sequencer source.  MFPlay makes it a lot easier to do a basic playlist.

    The sequencer source has logic to do seamless transitions between playlist elements, so for smooth playback it is a good choice for transitioning between different sources.  You can also just create a new or modified topology and set it on the media session.  The TopoEdit issue you are hitting is due to an MF bug when disconnecting an output; the output remains active even though there is nothing on the other end, and that causes problems.  It works to just create a new topology node and connect it whichever way you like, though.

    Thursday, June 17, 2010 9:31 PM

All replies

  •  I am not an expert, however there are some points in what Andrew wrote that worth emphasizing : 

     1. Obviously, the IMFPMediaPlayer cannot be both deprecated and recommended. There must be some mistake with the sample docs, and anyway, the IMFSequenceSource is not deprecated. So why not to use it ?

    2. There is no other component in the sample docs that switches between multiple sources. So the only alternative to using the  IMFSequenceSource while using MF would be to write a custom component.

    Monday, June 14, 2010 9:10 PM
  • Well, that certainly is confusing.  I will see what can be done to update the docs.

    There's nothing wrong with using the sequencer source.  The MFPlay API was recommended because the sequencer source is quite complex and it is a lot more work to get a playlist application up and running using the sequencer source.  MFPlay makes it a lot easier to do a basic playlist.

    The sequencer source has logic to do seamless transitions between playlist elements, so for smooth playback it is a good choice for transitioning between different sources.  You can also just create a new or modified topology and set it on the media session.  The TopoEdit issue you are hitting is due to an MF bug when disconnecting an output; the output remains active even though there is nothing on the other end, and that causes problems.  It works to just create a new topology node and connect it whichever way you like, though.

    Thursday, June 17, 2010 9:31 PM