rtpulpfdecdec: only put recovered packet back into storage if not recovered from...
authorMathieu Duponchelle <mathieu@centricular.com>
Wed, 6 Mar 2019 17:40:12 +0000 (17:40 +0000)
committerTim-Philipp Müller <tim@centricular.com>
Wed, 6 Mar 2019 19:40:10 +0000 (19:40 +0000)
gst/rtp/gstrtpulpfecdec.c

index 59c09fb..4a73b6d 100644 (file)
@@ -434,8 +434,12 @@ gst_rtp_ulpfec_dec_handle_packet_loss (GstRtpUlpFecDec * self, guint16 seqnum,
         break;
       }
 
-      rtp_storage_put_recovered_packet (self->storage,
-          recovered_buffer, recovered_pt, self->caps_ssrc, recovered_seq);
+      if (!self->lost_packet_from_storage) {
+        rtp_storage_put_recovered_packet (self->storage,
+            recovered_buffer, recovered_pt, self->caps_ssrc, recovered_seq);
+      } else {
+        gst_buffer_unref (recovered_buffer);
+      }
     }
 
     gst_rtp_ulpfec_dec_stop (self);