rtpsession: remember last sent RB values.
authorWim Taymans <wim.taymans@collabora.co.uk>
Thu, 23 Dec 2010 12:52:57 +0000 (13:52 +0100)
committerWim Taymans <wim.taymans@collabora.co.uk>
Thu, 23 Dec 2010 12:58:30 +0000 (13:58 +0100)
gst/rtpmanager/rtpsession.c
gst/rtpmanager/rtpsource.h

index 83d763a..2698f3c 100644 (file)
@@ -2357,6 +2357,15 @@ session_report_blocks (const gchar * key, RTPSource * source, ReportData * data)
       rtp_source_get_new_rb (source, data->current_time, &fractionlost,
           &packetslost, &exthighestseq, &jitter, &lsr, &dlsr);
 
+      /* store last generated RR packet */
+      source->last_rr.is_valid = TRUE;
+      source->last_rr.fractionlost = fractionlost;
+      source->last_rr.packetslost = packetslost;
+      source->last_rr.exthighestseq = exthighestseq;
+      source->last_rr.jitter = jitter;
+      source->last_rr.lsr = lsr;
+      source->last_rr.dlsr = dlsr;
+
       /* packet is not yet filled, add report block for this source. */
       gst_rtcp_packet_add_rb (packet, source->ssrc, fractionlost, packetslost,
           exthighestseq, jitter, lsr, dlsr);
index 54a86ac..94c22b3 100644 (file)
@@ -167,6 +167,7 @@ struct _RTPSource {
   gpointer           user_data;
 
   RTPSourceStats stats;
+  RTPReceiverReport last_rr;
 
   GList         *conflicting_addresses;
 };