Hi,
I've managed to solve the problem. One cycle in the while loop of SingleThreadRTPSession::run() was taking nearly 60 milliseconds and therefore every 1 of 2 packets become expired. I saw that setCancel method (which calls Thread::sleep(1)) made the thread sleep much more than 1 millisecond. When I changed Thread::yield() method to sleep(0) in commoncpp\src\thread.cpp (line 1198) my problem was solved. Sincerely, Eren From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Eren AYKOC Sent: Wednesday, November 12, 2008 6:56 PM To: ccrtp-devel@gnu.org Subject: [Ccrtp-devel] 1/2 of packets are droped Hi, I'm trying to build an application using ccRTP (1.6.2) and I'm having some problems. My application is a SIP IVR application and right now I'm using PCMU payload. In my -Thread and TimerPort derived- thread class's run() method, my application is sending -30ms long (240 bytes)- audio packets to destination and nearly for the half of the packets, my -SingleThreadRTPSession derived- socket class's onExpireSend method is triggered. When I sniff the network with Wireshark for UDP packets I don't see the dropped ones and the sound is distorted on the destination side. My code is nearly the same as the demo application audiotx.cpp except the audio source mechanism. In the mailing list archives I've found a similar problem (http://lists.gnu.org/archive/html/ccrtp-devel/2003-03/msg00000.html) but the patch for this bug is already in my copy of ccRTP library. I'm using MS Visual Studio 6.0 (sp6) on a Windows XP Prof (sp3) machine. I'd be glad if you may help me. Sincerely, Eren AYKOC
_______________________________________________ Ccrtp-devel mailing list Ccrtp-devel@gnu.org http://lists.gnu.org/mailman/listinfo/ccrtp-devel