fprintf (stderr, "in\n");
void speex_jitter_put(SpeexJitter *jitter, char *packet, int len, int timestamp){   int i,j;   fprintf (stderr, "in\n");   /* Cleanup buffer (remove old packets that weren't played) */   for (i=0;i<SPEEX_JITTER_MAX_BUFFER_SIZE;i++)   {      if (jitter->timestamp[i]<jitter->pointer_timestamp)         jitter->len[i]=-1;   }   /*Find an empty slot in the buffer*/   for (i=0;i<SPEEX_JITTER_MAX_BUFFER_SIZE;i++)   {      if (jitter->len[i]==-1)         break;   }   if (i==SPEEX_JITTER_MAX_BUFFER_SIZE)   {      /*No place left in the buffer*/            /*skip some frame(s) */      return;   }      /* Copy packet in buffer */   if (len>SPEEX_JITTER_MAX_PACKET_SIZE)      len=SPEEX_JITTER_MAX_PACKET_SIZE;   for (j=0;j<len;j++)      jitter->buf[i][j]=packet[j];   jitter->timestamp[i]=timestamp;   jitter->len[i]=len;      /* Detect when it's time to drop frames (too much stuff in buffer) */   if (timestamp-jitter->pointer_timestamp > (jitter->buffer_size+3)*jitter->frame_time)      jitter->drop_frame = 1;   /*Detect when it's time to interpolate a frame (not wnough stuff in buffer) */   if (timestamp-jitter->pointer_timestamp < (jitter->buffer_size-3)*jitter->frame_time)      jitter->underflow_count++;   else      jitter->underflow_count=0;   if (jitter->underflow_count > 10)   {      jitter->underflow_count=0;      jitter->interp_frame = 1;   }   /* Adjust the buffer size depending on network conditions */}