<br>Hello,<br><br>I&#39;m trying to investigate streaming performance when an 8-bit RTP sequence number is used.<br><br>After sequence number 255 is first reached, the sequence number does wrap round to zero as expected, but all packets thereafter are incorrectly detected as lost.<br>
<br>These are some of the modifications I made in RTPSource.cpp:<br><br>void RTPReceptionStats<br>::noteIncomingPacket(u_int8_t seqNum, ....) {<br><br>......<br><br>  // Check whether the new sequence number is the highest yet seen:<br>
  unsigned oldSeqNum = (fHighestExtSeqNumReceived&amp;0xFF);<br> if (seqNumLT((u_int8_t)oldSeqNum, seqNum)) {<br>    // This packet was not an old packet received out of order, so check it:<br>    unsigned seqNumCycle = (fHighestExtSeqNumReceived&amp;0xFF00);<br>
    unsigned seqNumDifference = (unsigned)((int)seqNum-(int)oldSeqNum);<br>    if (seqNumDifference &gt;= 0x80) {<br>      // The sequence number wrapped around, so start a new cycle:<br>      seqNumCycle += 0x100;<br><br>
.........<br><br>}<br><br>but I still get this sort of QoS statistics:<br><br>Started playing session<br>Receiving streamed data (for up to 60.000000 seconds)...<br>begin_QOS_statistics<br>server_availability    100<br>stream_availability    100<br>
subsession    video/MPV<br>num_packets_received    22470<br><i><b>num_packets_lost    4294944950</b></i><br>elapsed_measurement_time    60.004700<br>kBytes_received_total    22560.912000<br>measurement_sampling_interval_ms    1000<br>
kbits_per_second_min    2757.835416<br>kbits_per_second_ave    3007.885982<br>kbits_per_second_max    3166.214214<br><i><b>packet_loss_percentage_min    -109.677419</b></i><br>packet_loss_percentage_ave    0.000000<br>packet_loss_percentage_max    0.000000<br>
inter_packet_gap_ms_min    0.004000<br>inter_packet_gap_ms_ave    2.668810<br>inter_packet_gap_ms_max    78.687000<br>subsession    audio/MPA<br>num_packets_received    1241<br><i><b>num_packets_lost    4294966235</b></i><br>
elapsed_measurement_time    60.004700<br>kBytes_received_total    1434.596000<br>measurement_sampling_interval_ms    1000<br>kbits_per_second_min    101.252014<br>kbits_per_second_ave    191.264484<br>kbits_per_second_max    204.068205<br>
<b><i>packet_loss_percentage_min    -566.666667</i></b><br>packet_loss_percentage_ave    0.000000<br>packet_loss_percentage_max    0.000000<br>inter_packet_gap_ms_min    0.013000<br>inter_packet_gap_ms_ave    48.322089<br>
inter_packet_gap_ms_max    685.016000<br>end_QOS_statistics<br><br>    <br>How can I achieve wraparound at sequence number 255 without mis-detection thereafter as lost packets?<br><br>Thanks,<br>Josephine<br><br>