Opened 11 years ago
Last modified 7 years ago
#11739 closed Bug Report - General
EIT over the air program guide title description mismatch FIXED/SOLVED — at Initial Version
Reported by: | Owned by: | ||
---|---|---|---|
Priority: | minor | Milestone: | 0.28 |
Component: | MythTV - ATSC | Version: | Master Head |
Severity: | medium | Keywords: | EIT title description |
Cc: | Stuart Auchterlonie | Ticket locked: | no |
Description
Summary: Eliminating two lines of code from
EITHelper::ProcessEvents (void)
eliminates 99% of Mythtv generated
title/description mismatches in the over the air program guide
- eitList_lock.unlock();
- eitList_lock.lock();
I believe the use of QMutexLocker in function
uint EITHelper::ProcessEvents (void)
as currently implemented is incorrect, allowing a threaded CPU to run concurrent processing of events (individual program listings). For a given channel, this allows descriptions from other programs to be associated with the wrong program title.
libs/libmythtv/programdata.cpp For the same program listing as one previously processed, tests the length of new program description against the current stored description, replacing old with new if new is longer. I had a case where a long incorrect description was not replaced by a subsequent, shorter correct description. Possible fix in the patch.
The patch is against the master branch: commit 619d87bdc8a (Aug 8, 2013)
My fix for ticket 11476 is also in the patch as it stabilized use of the EIT scanner for me.
sha1sum /data/wrkbin/computer/libmythtv.patch 922fb3eedc55c65de7b97328a7c5215d37b13060
Anyone testing the patch should be vigilant in examination before applying. Code changes (ignoring logging) are few enough to be made manually. Place the patch in the mythtv/libs/libmythtv directory and apply:
patch -Np1 < libmythtv.patch
With this patch installed, my EIT scanner does not unnecessarily abort. Event/program information taken from the broadcast data stream correctly populates the Mythtv program guide. Titles and descriptions match. I am very happy with the results and (until proven otherwise) consider this issue fixed/solved/closed. I have even installed custom recording rules based on description for the first time. Note that I do not believe these .cpp files have been altered in some time and a clean patch is perhaps likely on older 'master' branches or even 0.26 and 0.26/fixes.
patch for <tv_rec programdata eitscanner eithelper>.cpp