This looks like the jitter buffer bug ( http://trac.pjsip.org/repos/ticket/762), and should have been fixed in 1.2. (Sorry for the late reply btw) thanks Benny On Sun, Apr 26, 2009 at 10:14 AM, Maarten Sander <info at privateer-software.nl > wrote: > Hi, > > I've got some more info, and it looks like I've found the code that > caused these issues. Still don't know why this is happening though, and > would really appreciate some help with this! > > > As the subject says, it looks like as if PJSUA-LIB enters an infite loop > > when calling pjsua_call_make_call() after receiving a 480 Temporary > > Unavailable response from the carrier. CPU usage is 100% in this case. > > When I send a CANCEL before the carrier has a chance to return the 480, > > everything is allright. > > This turned out not to be true, the problem (often) occurs after sending > a CANCEL as well. > > I wanted the application to bind to different (customizable) IPs and > ports, so I've modified UDP transport config when calling > pjsua_transport_create(): > > // UDP transport > { > pjsua_transport_config_default(&udpTransportConfig); > udpTransportConfig.port = 5060; // from config > udpTransportConfig.public_addr = pj_str("10.10.10.70"); // from config > udpTransportConfig.bound_addr = pj_str("10.10.10.70"); // from config > > pj_status_t status = pjsua_transport_create(PJSIP_TRANSPORT_UDP, > &udpTransportConfig, NULL); > > if (status != PJ_SUCCESS) { > return; // error > } > } > > This works as expected, but the RTP IP and ports were still the > defaults, so I've also added the following code to the initialization (a > bit simplified): > > // RTP transport (breaks things) > { > pjsua_transport_config_default(&rtpTransportConfig); > > rtpTransportConfig.port = 4000; // from config > rtpTransportConfig.public_addr = pj_str("10.10.10.70"); // from config > rtpTransportConfig.bound_addr = pj_str("10.10.10.70"); // from config > > pj_status_t status = pjsua_media_transports_create(&rtpTransportConfig); > > if (status != PJ_SUCCESS) { > return; // error > } > } > > This works as expected for successful calls, but seems also the root of > my problems. If I remove this, everything works OK, but I lose the > ability to change the IPs and ports. > > What am I doing wrong? Is this the right way to customize the RTP > transport? > > Why does the above even seem to work? I'm just creating a transport > using pjsua_media_transports_create(), but not doing anything with it. > Shouldn't I remove the existing RTP transport? OTOH, this is how the > PJSUA demo app seems to do it... > > Regards, > > Maarten > > P.S. I forgot the mention last time, but I'm using PJSIP 1.0.2. > > -- > Privateer Software Development (www.privateer-software.nl) > * web usability, web accessibility, web development > * cross-platform software development > > _______________________________________________ > Visit our blog: http://blog.pjsip.org > > pjsip mailing list > pjsip at lists.pjsip.org > http://lists.pjsip.org/mailman/listinfo/pjsip_lists.pjsip.org > -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.pjsip.org/pipermail/pjsip_lists.pjsip.org/attachments/20090513/73deada7/attachment.html>