Opened 11 years ago
Closed 10 years ago
#12121 closed Bug Report - General (Fixed)
Wrongly assumes movie.title is unique - skips following recordings
Reported by: | Owned by: | Karl Egly | |
---|---|---|---|
Priority: | minor | Milestone: | 0.27.1 |
Component: | MythTV - Mythfilldatabase | Version: | 0.27-fixes |
Severity: | medium | Keywords: | xmltv |
Cc: | Ticket locked: | no |
Description
Today I noticed again that MythTV no longer lists a series for recording. I think this is related to <http://www.mythtv.org/wiki/Duplicate_matching>.
I'm using epgdata.com in Germany. The series in question is "Tatort", a German crime scene series produced by different broadcasting stations in German. Perhaps because of that it's listed as "movie" and not as series: 20140426_201404181655_de_qy.xml
<data> <d1>56902101</d1><!-- tvshow_id: unique for this episode --> <d10>100</d10><!-- category:movie --> <d19>Tatort</d19><!-- title: equal for all episodes --> <d20>Hochzeitsnacht</d20><!-- subtitle: different for all episodes --> <d26>843</d26><!-- sequence number -->
This is converted by tv_grab_eu_epgdata into
<programme start="20140421023500 +0200" stop="20140421040500 +0200" channel="ard.de"> <title>Tatort</title> <sub-title>Hochzeitsnacht</sub-title> <category>movie</category> <category>Krimi</category> <episode-num system="onscreen">843</episode-num>
When this is processed by mythfilldatabase/xmltvparser.cpp:
510 if (ProgramInfo::kCategoryMovie == pginfo->categoryType) 511 programid = "MV"; ... 523 QString seriesid = QString::number(ELFHash(pginfo->title.toUtf8())); 524 pginfo->seriesId = seriesid; 525 programid.append(seriesid); ... 556 if (ProgramInfo::kCategoryMovie != pginfo->categoryType) 557 programid.clear();
Here the code assumes that the title of a movie can be used as a unique identifier for detecting duplicates and does not clear the programid. As such it is always used, which prevent recording any subsequent episodes.
That code is there since 347ea031 Oscar Carlsson 2005-01-30 23:25:12.
I think the condition in line 556 should be removed: programid looks like an optimization too me to identify unique programs, It it isn't set, MythTV will fall back to what-ever the user has configured in the recording rule to use (title, title+subtitle, title+subtitle+description). But setting programid to a wrong (not-unique) value actually breaks things.
Sadly the XMLTV XML format has no way to pass the "tvshow_id" to MythTV as a programid.
Changing tv_grab_eu_epgdata to put all movies with a sequence_id>=1 into the "series" category instead of the "movie" category also doesn't work, as movies with sequels also use sequence_id>=1; e.g. "Terminator 2" has sequence_id=2.
Change History (3)
comment:1 Changed 11 years ago by
Milestone: | unknown → 0.27.1 |
---|---|
Owner: | changed from stuartm to Karl Egly |
Status: | new → accepted |
comment:2 Changed 11 years ago by
Status: | accepted → infoneeded |
---|
comment:3 Changed 10 years ago by
Resolution: | → Fixed |
---|---|
Status: | infoneeded → closed |
No reply in 3 months. Likely fixed by [1023a65e883f]
I think I fixed this in fixes/0.27 in early January, see [e2acf0d940009b2b240d52e9b53a123e1309a134]. Please update and retest.