rtpdump
rtpdump copied to clipboard
sequence number wrapping around
In codecs/amr.go HandleRtpPacket:
if packet.SequenceNumber <= amr.lastSeq { return nil, errors.New("Ignore out of sequence") }
However this check should consider the sequence number wrapping around. The sequence number is a 16bit unsigned number and its initial value (the sequence number of the first RTP packet) is random.
I see that lastSeq is never set, it is always 0. So, the above check is always false. When lastSeq will be set, the sequence number wrapping around should be considered.