]> git.ipfire.org Git - thirdparty/tvheadend.git/commit
Fixed and cleanup the "PSIP: ATSC Grabber" module (Fixes #5610)
authorNorm Raden <norm.raden+github@gmail.com>
Tue, 10 May 2022 18:00:30 +0000 (14:00 -0400)
committerFlole998 <Flole998@users.noreply.github.com>
Sun, 28 Aug 2022 08:20:01 +0000 (10:20 +0200)
commit1fa49afbca482999a3d32d8da73b01963efe3ff1
treeb6571affffb84704661c26e9352de98f6a54dace
parent1c65e8b0f03384a5ca5b5fc7635ecad4fd85b415
Fixed and cleanup the "PSIP: ATSC Grabber" module (Fixes #5610)

 - Bumped up limit on number of supported EIT/ETT tables from 5 to 256 (this is the max number of EIT/ETT tables in the ATSC specification)
 - Remove table type 4 as a valid ETT table, there is no support for this table here and table type 4 doesn't supply any EPG data--just long names for channels/services, etc.
 - Removed the very rapid toggling between mpegts_table_{add,destroy}(...) calls on EIT/ETT tables that caused continuous enabling/disabling of EIT and ETT PIDs.
 - Added an 'ETM Location' check to EIT table handling to ensure that an event's extra text is cleared in the EPG database if there is no matching ETT.
 - Removed epg_broadcast_change_finish(...) because it was erasing the extra text field in EPG database when updating title in EPG database (in EIT handler).
 - Added the ability for receiving ETT tables with the same version ID.  ETT tables use the same version ID for long runs of event IDs and 'Extra text's.
 - Fix bug in retrieving the number of tables EIT/ETT tables listed in the MGT table.

 - Removed the psip_{find,remove,add}_desc(...) functions (and supporting code) that stored ETT extra texts before
   there was a matching EIT event and then would try to match up the ETT extra texts when the EIT event showed up.
   However, the psip_*_desc(..) functions didn't keep track of the channel and would match up the ETT 'Extra text' with the wrong EIT event.

 - Removed some non-functional code.
 - Removed old commented out test code.

 - Added placeholder support for 'stop' and 'done' functions of this module for future development.

The "Over-the-air: PSIP: ATSC Grabber" module now quickly and correctly populates 'Title', 'Extra text', 'Start time', 'End time', 'Duration', etc... fields in the EPG Database.
src/epggrab/module/psip.c