* EIT off-air tables for HD in UK
@ 2016-06-14 18:31 Nick Whitehead
2016-06-15 8:10 ` Jemma Denson
0 siblings, 1 reply; 2+ messages in thread
From: Nick Whitehead @ 2016-06-14 18:31 UTC (permalink / raw)
To: linux-media
I've just started to use this to recover EIT information from the
transmitted stream (UK, freeview).
I've managed to get the tables OK, but the EIT name / description for
all HD channels is scrambled. Some research indicates these are huffman
encoded for an unclear reason.
Given the right tables, it should be possible therefore to decode them
when they appear in the linked list of descriptors in each event.
However, it appears that dvb_parse_string() called all the way down from
dvb_read_sections() converts the character sets name / description
strings so that they can no longer be decoded. If huffman encoded, I
think the first character of each is a 0x1f, followed by a 0x01 or 0x02
which probably indicates the table to use.
It seems to me therefore that the 0x1f needs to be picked up in the
switch (*src) {} at line 395 in parse_string.c, and huffman decode done
there. After the return from dvb_parse_string(), and certainly when they
appear in the EIT table, it's too late.
I am not sure if I'm right about all this as I know very little about
DVB. However it looks like that to me. Have I got this right or is
already successfully handled somewhere I haven't realised?
^ permalink raw reply [flat|nested] 2+ messages in thread
* Re: EIT off-air tables for HD in UK
2016-06-14 18:31 EIT off-air tables for HD in UK Nick Whitehead
@ 2016-06-15 8:10 ` Jemma Denson
0 siblings, 0 replies; 2+ messages in thread
From: Jemma Denson @ 2016-06-15 8:10 UTC (permalink / raw)
To: Nick Whitehead, linux-media
On 14/06/16 19:31, Nick Whitehead wrote:
> I've just started to use this to recover EIT information from the
> transmitted stream (UK, freeview).
>
> I've managed to get the tables OK, but the EIT name / description for
> all HD channels is scrambled. Some research indicates these are
> huffman encoded for an unclear reason.
>
> Given the right tables, it should be possible therefore to decode them
> when they appear in the linked list of descriptors in each event.
> However, it appears that dvb_parse_string() called all the way down
> from dvb_read_sections() converts the character sets name /
> description strings so that they can no longer be decoded. If huffman
> encoded, I think the first character of each is a 0x1f, followed by a
> 0x01 or 0x02 which probably indicates the table to use.
>
> It seems to me therefore that the 0x1f needs to be picked up in the
> switch (*src) {} at line 395 in parse_string.c, and huffman decode
> done there. After the return from dvb_parse_string(), and certainly
> when they appear in the EIT table, it's too late.
>
> I am not sure if I'm right about all this as I know very little about
> DVB. However it looks like that to me. Have I got this right or is
> already successfully handled somewhere I haven't realised?
>
>
FYI mythtv decodes the EIT successfully so is probably a good place to
start looking. The original patch to add it in is here:
https://svn.mythtv.org/trac/attachment/ticket/5365/freesat_epg.diff
AFAIK Freeview HD is done the same way as Freesat.
Jemma.
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2016-06-15 8:10 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2016-06-14 18:31 EIT off-air tables for HD in UK Nick Whitehead
2016-06-15 8:10 ` Jemma Denson
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).