DirectShow
(1)
Filter.While
(1)
Riseoftheants
(1)
Streamsource
(1)
Timestamps
(1)
Getstate
(1)
Mvpnews
(1)
Ifthe
(1)

Sending user input while in buffering in rtsp streamsource filter

Asked By Anoop R.K
14-Nov-09 07:53 AM
Dear all..,

I am designing a rtsp stream source filter.While designing a filter i
am facing a couple of challenges

While we are in buffering(after sending EC_STARVATION to filter grah
manager),or in other words after sending EC_STARVATION to the filter
graph  manager,transition is not completed from pause to run(as i am
sending VFW_S_STATE_INTERMEDIATE from getstate()).
At this time iam not able to take any user input from mediaplayer
(neither pause or stop is called from filter graph manager).So that i
cannot stop the current buffering that is.


Is there a way to get pasue or stop while in buffering.


Thanks
Anoop

From: "Anoop R.

Alessandro Angeli replied to Anoop R.K
14-Nov-09 03:03 PM
From: "Anoop R.K"


Instead of notifying EC_STARVATION and returning
VFW_S_STATE_INTERMEDIATE, simply return VFW_S_CANT_CUE. That
way, the graph will transition to paused (and then to
running) without waiting for you. If you do that, be sure to
not deliver samples while paused but only when running.

A real-time network streaming source is the same as a live
capture source:

http://msdn.microsoft.com/en-us/library/dd377472.aspx
http://msdn.microsoft.com/en-us/library/dd390645.aspx


--
// Alessandro Angeli
// MVP :: DirectShow / MediaFoundation
// mvpnews at riseoftheants dot com
// http://www.riseoftheants.com/mmx/faq.htm

wrote:t.com/en-us/library/dd390645.aspxHI..

Anoop R.K replied to Alessandro Angeli
15-Nov-09 03:06 PM
t.com/en-us/library/dd390645.aspx


HI..,
The problem is if i directly send  VFW_S_CANT_CUE with out gathering
enough data, the filter will go to run(in this case we will not have
enough data to render).

Thanks
Anoop

You can suspend delivery in your filter until you are ready, even ifthe graph

Geraint Davies replied to Anoop R.K
16-Nov-09 04:57 AM
You can suspend delivery in your filter until you are ready, even if
the graph is running. Once you restart, you adjust all your timestamps
to the current stream time plus a latency.
Post Question To EggHeadCafe