2015-09-05, 19:16
(2015-09-05, 17:49)krustyreturns Wrote: I would like to see guide entry objects get a new flag to indicate where the entry is an episode of a series. The way it is now, using the guide a user can request a series recording for a show that is not part of a series, forcing the backend to throw an error. If however the guide knows a program is not part of a series, it could make the creation of series timer not possible in the ui - an much better solution imo.
IMO this is down to the way the pvr client implements a 'repeating EPG based' timer.
Kodi core and the current PVR API doesn't have 'series' or 'episode' identifiers (stored as SeriesID / ProgramID in my mythtv backend). The problem with these fields is they are dependent on the quality of your listings source. If some channels come from EIT (over the air) and some from xmltv, you get incompatible IDs. If your EIT data is poor, you might not get SeriesID at all!
IMO however, kodi core doesn't actually need them to schedule a recording. The API provides an EPG entry, a 'title' and some options. The key information here is the 'title'.
- If you ask for a 'single' recording of 'title' the backend should record one.
- If you ask for a 'repeating' recording of 'title' the backend should record multiple instances of 'title' (subject to channel, duplicate matching, storage limitations, etc...)
If you want to record only items with a SeriesID which matches the selected EPG entry, this can be done as a separate timer type (and has been done for mythtv), but IMO, this is unnecessary as it seems unlikely that a broadcaster would show two series with the same title on the same channel :-).
If the user selects to create a repeating timer for a non-series event (such as a movie), and the backend won't support creation of a repeating timer without a seriesid (this seems strange to me, I don't know why a backend would be hamstrung like this), the addon could simply create a single timer instead.
If there isn't a backend limitation however, I don't see a problem. The user picks a 'repeating' timer type, the backend will record all 24 repeats of the movie in the next 6 weeks. Next time the user will choose a 'record once' type for a movie ;-).