From 22c56630b362d6ae54c2ec42157a6d7a8503c71f Mon Sep 17 00:00:00 2001 From: Nick Piggott Date: Mon, 5 Sep 2016 10:03:39 +0100 Subject: Update to add EPG Profile information to User Application Bytes --- src/fig/FIG0.cpp | 19 ++++++++++++++----- 1 file changed, 14 insertions(+), 5 deletions(-) (limited to 'src/fig') diff --git a/src/fig/FIG0.cpp b/src/fig/FIG0.cpp index 8393c72..8c26dff 100644 --- a/src/fig/FIG0.cpp +++ b/src/fig/FIG0.cpp @@ -950,7 +950,7 @@ FillStatus FIG0_13::fill(uint8_t *buf, size_t max_size) (*subchannel)->type == subchannel_type_t::Packet && (*componentFIG0_13)->packet.appType != 0xffff) { - const int required_size = 5+2; + const int required_size = 5+2+2; if (fig0 == NULL) { if (remaining < 2 + required_size) { @@ -980,10 +980,19 @@ FillStatus FIG0_13::fill(uint8_t *buf, size_t max_size) FIG0_13_app* app = (FIG0_13_app*)buf; app->setType((*componentFIG0_13)->packet.appType); - app->length = 0; - buf += 2; - remaining -= 2; - fig0->Length += 2; + if (app->typeLow == FIG0_13_APPTYPE_EPG) { + app->length = 2; + app->xpad = htons(0x0100); + /* xpad used to hold two bytes of EPG profile information + 01 = basic profile + 00 = list terminator */ + } + else { + app->length = 0; + } + buf += 2 + app->length; + remaining -= 2 + app->length; + fig0->Length += 2 + app->length; } } -- cgit v1.2.3