[mythtv-commits] Ticket #11914: EIT/EPG improvements for DVB-C
MythTV
noreply at mythtv.org
Fri Oct 18 14:11:10 UTC 2013
#11914: EIT/EPG improvements for DVB-C
---------------------------------+---------------------------------
Reporter: klaas.de.waal@… | Owner: dekarl
Type: Patch - Bug Fix | Status: new
Priority: minor | Milestone: unknown
Component: MythTV - EIT | Version: 0.27-fixes
Severity: medium | Keywords: EIT EPG DVB-C Ziggo
Ticket locked: 0 |
---------------------------------+---------------------------------
The EPG of MythTV is not correct for the DVB-C signal from provider Ziggo
in The Netherlands.
The EIT/EPG data from the DVB-C signal is like this:
- There is a EPG data for up to 3 or 4 days ahead
- If there is no program data yet there are dummy program entries with the
title "Zender verstrekt geen informatie" ("Broadcaster does not provide
information") or with other titles that convey a similar message.
- For 1 to 3 days ahead there are program entries with
title/starttime/endtime.
- For 1 day ahead, at least 24 hours, all program entries have also a
subtitle and a description.
Processing the received EIT entries and updating the EPG is implemented in
libs/libmythtv/programdata.cpp.
In this implementation each new entry is compared with what is already in
the database and based on the result of the comparison the new entry can
be:
- inserted in the database
- used to update an existing entry, complete or partially
- or completely discarded!
The result is that quite often the MythTV Guide shows for today the dummy
entries that were broadcasted three days ago instead of the actual
programs.
My TV does not have any EPG memory and only starts collecting EPG data
after it is switched on. It always has a correct and complete EPG within
30 to 60 seconds.
This suggests to me that all comparisons and selective updating that is in
the current implementation is not correct, at least not for my DVB-C
signal.
I have greatly simplified the code in programdata.cpp so that it always
accepts all new program entries and that it deletes everything in the
database that conflicts with the new data.
With this code the MythTV EPG shows exactly the same programs as my TV.
The file programdata.cpp is attached.
In order to test this I have added a lot of debug output. This can be
enabled like this:
$ mythbackend --loglevel debug -v eit.
The new log output looks like this:
{{{
2013-10-18 04:02:21.932963 D EIT: update chanid 1008 2013-10-18T11:15:00Z
'Ranger dierenjournaal vanuit Emmen'
2013-10-18 04:02:21.936359 D EIT: update chanid 1008 2013-10-18T11:20:00Z
'Ultimate Spider-man'
2013-10-18 04:02:21.939324 D EIT: delete chanid 1901 2013-10-21T00:03:00Z
'Zender verstrekt geen informatie'
2013-10-18 04:02:21.941013 D EIT: insert chanid 1901 2013-10-21T00:03:00Z
'NOS Tekst tv'
2013-10-18 04:02:21.954900 D EIT: update chanid 1311 2013-10-18T12:31:00Z
'Doctor Cheezy'
2013-10-18 04:02:21.967634 D EIT: update chanid 1311 2013-10-18T12:57:00Z
'SpangaS'
2013-10-18 04:02:22.380320 D EIT: update chanid 1311 2013-10-18T13:17:00Z
'Het Klokhuis'
}}}
Note that I have only tested this with my local DVB-C signal.
N.B. The Ziggo DVB-C signal is also discussed in ticket #10136, although
the subject of that ticket is the "duplicate key entry" messages caused by
a bug in the current implementation of programdata.cpp.
--
Ticket URL: <http://code.mythtv.org/trac/ticket/11914>
MythTV <http://www.mythtv.org>
MythTV Media Center
More information about the mythtv-commits
mailing list