]> git.ipfire.org Git - thirdparty/tvheadend.git/commitdiff
HTSP server: add errors field to packet statistics
authorJaroslav Kysela <perex@perex.cz>
Wed, 18 Feb 2015 18:50:27 +0000 (19:50 +0100)
committerJaroslav Kysela <perex@perex.cz>
Wed, 18 Feb 2015 18:50:27 +0000 (19:50 +0100)
src/htsp_server.c

index 1b5247609f1b1e21641a02d8abc02b59e3f9a492..ca1b1a446467089afec7900dbe42fdbba3b17a52 100644 (file)
@@ -209,6 +209,8 @@ typedef struct htsp_subscription {
 
   int hs_first;
 
+  uint32_t hs_data_errors;
+
 } htsp_subscription_t;
 
 
@@ -3234,8 +3236,11 @@ htsp_stream_deliver(htsp_subscription_t *hs, th_pkt_t *pkt)
   int qlen = hs->hs_q.hmq_payload;
   size_t payloadlen;
 
-  if(pkt->pkt_payload == NULL)
+  if (pkt->pkt_err)
+    hs->hs_data_errors += pkt->pkt_err;
+  if(pkt->pkt_payload == NULL) {
     return;
+  }
 
   if(!htsp_is_stream_enabled(hs, pkt->pkt_componentindex)) {
     pkt_ref_dec(pkt);
@@ -3295,6 +3300,8 @@ htsp_stream_deliver(htsp_subscription_t *hs, th_pkt_t *pkt)
     htsmsg_add_u32(m, "subscriptionId", hs->hs_sid);
     htsmsg_add_u32(m, "packets", hs->hs_q.hmq_length);
     htsmsg_add_u32(m, "bytes", hs->hs_q.hmq_payload);
+    if (hs->hs_data_errors)
+      htsmsg_add_u32(m, "errors", hs->hs_data_errors);
 
     /**
      * Figure out real time queue delay