sushil verma wrote:

I don't know if this could help, but it worked for me :-)

 > Tried an incoming call using sofsip_cli. No rtp going out. Call is 
established and active. Following are the logs. Any solution?
[...]
 > ** (<unknown>:4559): DEBUG: farsight_netsocket_stun_map
 > ** (<unknown>:4559): DEBUG: server:(null) domain:134.177.144.34.
 > UA: answering to the offer received from "Sushil Kumar" 
<sip:3...@scs500.us.nortel.com>;tag=1fcd30d7
 > sofsip> ** (<unknown>:4559): DEBUG: cb_stun_state: stun_error (8)
 > ** (<unknown>:4559): DEBUG: cb_stun_state: error in communication 
with the STUN server

This could be a first problem, you didn't define a STUN server, however 
it tries to use it.

In file ssc_sip.c, function priv_create_ssc_media, around line 300:

if (res_impl) {
  g_object_set(G_OBJECT(res_impl), "stun-server", conf->ssc_stun_server, 
NULL);
  g_object_set(G_OBJECT(res_impl), "stun-domain", userdomain, NULL);
}

If you don't define conf->ssc_stun_server then it's NULL, but userdomain 
is never NULL, so in ssc_media_gst.c, function priv_setup_rtpelements, 
near line 470:

    if (self->sm_stun_server || self->sm_stun_domain) {
       self->sm_netsocket = NULL;
       netsocket_type = FARSIGHT_NETSOCKET_STUN_TYPE;
       netsocket = g_object_new (netsocket_type,
                 "sockfd", pri_sockfd,
                 "aux-sockfd", aux_sockfd,
                 "server", self->sm_stun_server,
                 "domain", self->sm_stun_domain,
                 NULL);
[...]

It always uses STUN.

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);
  }
}

You can fix it in ssc_media_gst.c if you prefer.

 > ** (<unknown>:4559): DEBUG: priv_cb_ready
 > ** Message: Created audio sink of type 'ALSA' for playback.
 >
 > (<unknown>:4559): GLib-GObject-WARNING **: IA__g_object_set_valist: 
object class `AlsaSPDIFSink' has no property named `latency-time'
 >
 > (<unknown>:4559): GLib-GObject-WARNING **: IA__g_object_set_valist: 
object class `AlsaSPDIFSink' has no property named `buffer-time'

This one could be a second problem. It looks for the gst element 
alsasink but the first one that it finds is AlsaSPDIFSink but it's the 
wrong one.

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 :-)):

if (strstr(klass_tags, "Sink") && strstr(klass_tags, "Audio")){
  if(strstr(gst_element_factory_get_longname(factory), type) &&
     !strstr(gst_element_factory_get_longname(factory), "S/PDIF ALSA") ){
       res = gst_element_factory_create(factory, "audiosink");
       break;
  }
}

 > priv_cb_pipeline_bus: Error: Internal GStreamer error: negotiation 
problem. Please file a bug at 
http://bugzilla.gnome.org/enter_bug.cgi?product=GStreamer.

Never had this error, so I don't know how to deal with it.

Hope this helps.

Regards,

Agostino

------------------------------------------------------------------------------
Sell apps to millions through the Intel(R) Atom(Tm) Developer Program
Be part of this innovative community and reach millions of netbook users 
worldwide. Take advantage of special opportunities to increase revenue and 
speed time-to-market. Join now, and jumpstart your future.
http://p.sf.net/sfu/intel-atom-d2d
_______________________________________________
Sofia-sip-devel mailing list
Sofia-sip-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/sofia-sip-devel

Reply via email to