[gst-devel] Playbin unable to play http stream

Ron McOuat rmcouat at smartt.com
Wed Feb 24 10:05:00 CET 2010


Hi Deb

I had a look at the libsoup API again and the souphttpsrc sources to 
verify some things.

http://library.gnome.org/devel/libsoup/stable/libsoup-client-howto.html

talks about various topics when using libsoup as a client. Near the 
bottom of the page is Handling Authentication which is what I added. 
However, at about 1/3 of the way down on the page is a section called 
Session features and in libsoup-gnome is a SoupProxyResolverGNOME which 
will automatically figure out the proxy if libsoup-gnome is available. I 
would presume they read environment variables to make this work. The 
httpsoupsrc element in gstreamer is a libsoup wrapper that is using the 
library to get an HTTP connection to a source device to feed the head of 
a gstreamer pipeline.

The page at the following link describes the client functionality in 
more detail

http://library.gnome.org/devel/libsoup/stable/SoupSession.html

Just as a test could you set the souphttpsrc properties "proxy" which is 
the proxy URI as well as "proxy-id" and "proxy-pw" in your gst-launch to 
see if this method of setting the proxy actually works. You might get an 
error 407 because the callback is recalled if the authentication fails 
and I didn't send again if retry was set because with a static property 
and no user dialog prompt I wouldn't have a different answer the second 
time around. If retry is set in the callback I just return because the 
API says it has already been tried once and failed, the return bubbles 
the 407 or 401 error back to the application. I have seen one report 
that said this didn't work at all for proxy authentication so there is 
that possibility although I don't see what else could be done based on 
the API description.

Using libsoup-gnome might be quite restrictive compared to the different 
system types gstreamer is available on but then again I use only Gnome 
versions of Ubuntu so have no idea how far ranging souphttpsrc is 
(Windows, OSX, etc.). It looks like it would be easy to add a property 
that enables/disables an option to the session construction to include 
the SoupProxyResolverGNOME which would integrate proxy support in a very 
transparent way. Does anyone have an objection to this presuming it can 
be made to work?

Ron






More information about the gstreamer-devel mailing list