[Live-devel] Newbie with a DirectShow headache
John Orr
john.orr at scala.com
Thu Oct 7 12:12:00 PDT 2010
Iain,
I played with that same rtspdirectshow sourceforge project a few months
back while trying to get my feet wet on live555 and apply it to
DirectShow. That project is certainly not cooked all the way. It been
a while, but I think the author there struggled with parsing out proper
media characteristics for video (like width and height). If I recall
correctly, they hard coded width and height on their video out pin.
The author there apparently borrowed some parts from the RTSP client
code from VLC. The code in the wrapper's live.cpp module is obviously a
modified version of vlc/modules/demux/live555.cpp. FWIW, in
vlc/modules/access/rtsp/access.c, you also see some similar code.
That code doesn't implement a formal live555 "sink" object, which would
be more in line with recommendations you'll find on this list:
http://www.live555.com/liveMedia/faq.html#control-flow
http://lists.live555.com/pipermail/live-devel/2010-June/012199.html
I did come across a better open source directshow source filter that
uses a sink object:
http://videoprocessing.sourceforge.net/
There are a handful of DirectShow filters in there, one is an
rtspsourcefilter built on live555. I think at the moment it's audio
only, but adding other media types shouldn't be that hard. I found this
code quite a bit better than the other project although it does have
other flaws. I recall that I hit some multithreading issues in some
edge cases while starting and shutting down.
--Johno
More information about the live-devel
mailing list