Hi Nikolay, Just fixed this bug in SVN trunk r2996. Thanks for such detail report! BR, nanang On Tue, Nov 3, 2009 at 9:52 PM, Nikolay Popok <nikolay.popok at gmail.com> wrote: > Hi guys. I used search, but didnt find anything about this. > I'm using pjproject 1.4.5. Looks like after remote side makes hold/resume, > local sequence number for rtp packets is reset. I've investigated the > problem a little bit. > In pjsua_media.c : > > static void stop_media_session(pjsua_call_id call_id) > { > ?... > > ??? if (pjmedia_session_get_stream_stat(call->session, 0, &stat) > ??? ??? == PJ_SUCCESS) > ??? { > ??? ??? /* Save RTP timestamp & sequence, so when media session is > ??? ???? * restarted, those values will be restored as the initial > ??? ???? * RTP timestamp & sequence of the new media session. So in > ??? ???? * the same call session, RTP timestamp and sequence are > ??? ???? * guaranteed to be contigue. > ??? ???? */ > ??? ??? call->rtp_tx_seq_ts_set = 1 | (1 << 1); > ??? ??? call->rtp_tx_seq = stat.rtp_tx_last_seq; > ??? ??? call->rtp_tx_ts = stat.rtp_tx_last_ts; > ??? } > > > If remote side makes hold, this code is called twice. First time everyting > is ok, but second time stat.rtp_tx_last_seq == 0. So after resume next > sequence of rtp packet will be 0 too. > > > _______________________________________________ > 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 > >