Lost packet statistics

Jörgen Terner <[email protected]>
Newsgroups gmane.comp.gnu.ccrtp.devel
Message-ID <[email protected]>
Hi again!

Now, I'm having trouble with statistics. I call the SyncSourceLink::getCumulativeLostPackets()-method (iqueue.h). It seems, however, that the baseSeqNum used in SyncSourceLink::computeStats()-method always is zero. 

I expected the method SyncSourceLink::initSequence to be called when the first packet arrived. First, the method is never called when I run my tests (might be because of my tests i guess), secondly I expected it to initiate the baseSeqNum but it doesn't.

Now, I've added a line to IncomingDataQueue::recordReception to initiate the baseSeqNum:

----------------------------------------
...
	if ( result ) {
		// the packet is considered valid.
		srcLink.incObservedPacketCount();
		srcLink.incObservedOctetCount(pkt.getPayloadSize());
		srcLink.lastPacketTime = recvtime;
		if ( srcLink.getObservedPacketCount() == 1 ) {
			// ooops, it's the first packet from this source
			setSender(*src,true);
			srcLink.baseSeqNum = pkt.getSeqNum();  // Added by me (Jörgen)
			srcLink.setInitialDataTimestamp(pkt.getTimestamp());
		}
...
-----------------------------------------

Now, at least the number of lost packets is not HUGE but still, the number of lost packets is about twice the number of received packets. Might of course be because of the client I use in these tests. To get the statistics I stream a quicktime-file with JM Studio and I've not looked how it generate the sequence numbers...

Anyone using the statistics from ccrtp?

-Jörgen
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.