Bug. RTP seq number is reset after hold/resume.

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



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.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.pjsip.org/pipermail/pjsip_lists.pjsip.org/attachments/20091103/2a0dc0b6/attachment.html>


[Index of Archives]     [Asterisk Users]     [Asterisk App Development]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Security]     [Bugtraq]     [Linux]     [Linux OMAP]     [Linux MIPS]     [Linux API]
  Powered by Linux