Ignore:
Timestamp:
Jun 22, 2006 6:44:11 PM (18 years ago)
Author:
bennylp
Message:

Fixed RTCP statistic returning fraction lost instead of total lost

File:
1 edited

Legend:

Unmodified
Added
Removed
  • pjproject/trunk/pjmedia/src/pjmedia/rtcp.c

    r455 r537  
    208208    } 
    209209     
    210     if (seq_st.status.flag.dup) 
     210    if (seq_st.status.flag.dup) { 
    211211        sess->stat.rx.dup++; 
    212     if (seq_st.status.flag.outorder) 
     212        TRACE_((sess->name, "Duplicate packet detected")); 
     213    } 
     214 
     215    if (seq_st.status.flag.outorder) { 
    213216        sess->stat.rx.reorder++; 
     217        TRACE_((sess->name, "Out-of-order packet detected")); 
     218    } 
    214219 
    215220    if (seq_st.status.flag.bad) { 
    216221        sess->stat.rx.discard++; 
     222        TRACE_((sess->name, "Bad packet discarded")); 
    217223        return; 
    218224    } 
     
    234240         */ 
    235241        sess->stat.rx.loss += (seq_st.diff - 1); 
     242        TRACE_((sess->name, "%d packet(s) lost", seq_st.diff - 1)); 
    236243 
    237244        /* Update loss period stat */ 
     
    542549    /* Total lost. */ 
    543550    expected = pj_ntohl(rtcp_pkt->rr.last_seq) - sess->seq_ctrl.base_seq; 
     551 
     552    /* This is bug: total lost already calculated on each incoming RTP! 
    544553    if (expected >= sess->received) 
    545554        sess->stat.rx.loss = expected - sess->received; 
    546555    else 
    547556        sess->stat.rx.loss = 0; 
     557    */ 
    548558 
    549559    rtcp_pkt->rr.total_lost_2 = (sess->stat.rx.loss >> 16) & 0xFF; 
Note: See TracChangeset for help on using the changeset viewer.