Hi, On 26 Aug 2010, Agostino De Matteis wrote: >I don't know if this could help, but it worked for me :-)
thanks for helping out with these. I don't think the fixes are yet in mergeable state (more below), but I'm not yet quite sure either what the real fixes would be... ;) Let's take a closer look: >This could be a first problem, you didn't define a STUN server, however >it tries to use it. That's done on purpose. The intent is that if your service provider (running your home domain) has a STUN server, that will be used automatically. So one would only need to specificy a STUN server address explicitly in the case where a non-default server should be used (in normal case you'd just pass your SIP address and password and that's it). Of course in real-life, service providers do not deploy STUN in this fashion and one often/always needs to specify a separate STUN server. >I fixed it in ssc_sip.c changing the code to: > >if (res_impl) { > g_object_set(G_OBJECT(res_impl), "stun-server", conf->ssc_stun_server, >NULL); > if(conf->ssc_stun_server){ > g_object_set(G_OBJECT(res_impl), "stun-domain", userdomain, NULL); > } else { > g_object_set(G_OBJECT(res_impl), "stun-domain", NULL, NULL); > } >} So this is basicly not quite the real fix yet, but I agree that it might be useful to have a option to completely disable STUN in case it causes trouble. Currently there's no such option (as you've described). Patches are welcome! >In the file ssc_media_gst_utils.c the function >ssc_media_create_audio_sink near line 205 checks only if the string alsa >is in the longname, so for it AlsaSPDIFSink and AlsaSink are the same: > >if(strstr(klass_tags, "Sink") && strstr(klass_tags, "Audio") && > strstr(gst_element_factory_get_longname(factory), type)){ > res = gst_element_factory_create(factory, "audiosink"); > break; >} > >I fixed it in a quick and dirty way like this (I'll have to think for a >better way though :-)): Ouch, this is a bit nasty. The sofsip-cli gstreamer implementation is supposed to be really scaled down so it serves as an example, but issues like these do not really help the serving-as-an-example-business. I wonder if the easiest solution is to have the user specify gstreamer sink and source (for audio play/record) explicitly. So you could use ALSA sinks, Pulseaudio, or something else on other platforms... Trying to be clever about these can get really hairy (I mean it's not impossible that someone wants the VoIP downlink over SPDIF), and certainly a job for more complete implementations (see farsight2 and telepathy-farsight for reference how this really should be done with gstreamer). If someone has the energy/time, it would be interesting to add a simple farsight2 backend to sofsip-cli. The APIs have now stabilized and as Empathy is used quite widely, many people will anyways have farsight2 already installed on their machines. Br, -- Kai Vehmanen ------------------------------------------------------------------------------ Start uncovering the many advantages of virtual appliances and start using them to simplify application deployment and accelerate your shift to cloud computing. http://p.sf.net/sfu/novell-sfdev2dev _______________________________________________ Sofia-sip-devel mailing list Sofia-sip-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/sofia-sip-devel