Wrong Jitter, DLSR and Packet Loss values for received RTCP packets

[email protected] Thu, 21 Jun 2007 12:46:28 -0700
Newsgroups gmane.comp.gnu.ccrtp.devel
Message-ID <[email protected]>
Hi,
I am trying to extract the jitter, delay and fraction of packet loss values from the received RTCP packets. I redefined the onGotSR and onGotRR packets for the same as below. But the values I am getting are wrong. Moreover both the values are not even same. I am using the ccrtp 1.5.1 version. Are there any bugs in the library for what I am trying to do? 
Thanks a lot.

// redefined from QueueRTCPManager
	void
	onGotSR(SyncSource& source, SendReport& SR, uint8 blocks)
	{
		RTPSession::onGotSR(source,SR,blocks);
		RTCPReceiverInfo RecInf(&(SR.blocks[0].rinfo));
		cout << dec
		     << "Source IP:Port: " << source.getNetworkAddress() << ":" 
		     << source.getControlTransportPort() << endl
		     << "Packet type: Sender Report" << endl
		     << "Delay: " << dec << SR.blocks[0].rinfo.dlsr << " : " 
		     << dec << RecInf.getDelayLastSR() << endl
	 	     << "Jitter: " << dec << SR.blocks[0].rinfo.jitter << " : "
		     << dec << RecInf.getJitter() << endl
		     << "Fraction Lost: " << dec << SR.blocks[0].rinfo.fractionLost << " : " 
		     << dec << RecInf.getFractionLost() << endl
		     << "Cumulative Packet Lost: " << dec << RecInf.getCumulativePacketLost()
		     << endl << endl;
	}

	// redefined from QueueRTCPManager
	void
	onGotRR(SyncSource& source, RecvReport& RR, uint8 blocks)
	{
		RTPSession::onGotRR(source,RR,blocks);
		RTCPReceiverInfo RecInf(&(RR.blocks[0].rinfo));
		cout << dec
		     << "Source IP:Port: " << source.getNetworkAddress() << ":" 
		     << source.getControlTransportPort() << endl
		     << "Packet type: Receiver Report" << endl
		     << "Delay: " << dec << RR.blocks[0].rinfo.dlsr << " : " 
		     << dec << RecInf.getDelayLastSR() << endl
	 	     << "Jitter: " << dec << RR.blocks[0].rinfo.jitter << " : "
		     << dec << RecInf.getJitter() << endl
		     << "Fraction Lost: " << dec << RR.blocks[0].rinfo.fractionLost << " : " 
		     << dec << RecInf.getFractionLost() << endl
		     << "Cumulative Packet Lost: " << dec << RecInf.getCumulativePacketLost()
		     << endl << endl;
	}