MythTV will, unless you tell it otherwise, try to record each episode of a show only once. To do so, MythTV compares showings in the listings that match recording rules to information about previously-recorded episodes (watched, unwatched, or deleted) of the program, checking for duplicates. The primary mechanism for duplicate matching is comparing program IDs, and there are four "fallback" methods.
The program ID is the definitive identifier of an episode. If the current episode described in the listings and any previously-recorded episode both have a matching program ID, MythTV will not record the new showing--regardless of the duplicate-matching method specified by the recording rule, and regardless of the values of subtitle and description.
If either the current episode described in the listings or the previously-recorded episode (or both) are missing a program ID, duplicate matching will be performed according to the duplicate-matching method specified by the recording rule.
If the subtitle of the new episode and any previously-recorded episode match exactly, MythTV will not record the new showing.
If the description of the new episode and any previously-recorded episode match exactly, MythTV will not record the new showing.
Subtitle and Description
If both the subtitle and description of the new episode and any previously-recorded episode match exactly, MythTV will not record the new showing.
Subtitle then Description
The scheduler will compare the subtitles of the new episode with any recorded(watched,unwatched or deleted) episode and if they match exactly then it will check the description and only if the descriptions are also identical then it will not record the new showing.
Q. I chose the duplicate check method 'Subtitle and Description,' and a set of episodes have the same subtitle and description, yet I still get duplicates.
A. All of those episodes also have a programid, and when episodes have a programid, the duplicate check method is irrelevant. Only the programid is used for comparison because the programid is the definitive identifier of an episode.
Q. But all of the episodes have the same programid.
A. True, but all three episodes have a SH*0000 programid -- the Schedules Direct programid used for generic episodes -- meaning which episode is airing is unknown. Rather than ignore this episode -- just because the listings provider wasn't given information on which episode was airing -- MythTV will record it.
The scheduler gives special treatment to any generic episodes (always recording them in case they're new). Schedules Direct/TMS data uses programid's of the form SH (for show) followed by some digits identifying the program (title) and ending with 4 zeros (meaning unknown episode). If you want MythTV to skip recording generic episodes, you need to explicitly set the recording rule to "Exclude Generic Episodes."