Episode missing when scheduled over HTSP
|Found in version:||2.13||Affected Versions:|
- I'm using "XBMC" and the "HTSP Tvheadend PVR"-Addon as the frontend in the latest Git-Version.
- I'm using "HTS Tvheadend 2.13~git20120305.0664329-ppa1~precise" as the backend.
- I have imported an EPG from a valid XMLTV file into tvheadend, which contains "episode-num" information either in "onscreen" and "xmltv_ns" format.
- Episode-Informationen is displayed right in the "Episode"-Column in "tvheadend".
- When I manually schedule a recording over the web administration interface, it's "Episode" is displayed in the "Recorder Schedule" in tvheadend.
If I schedule the same show over HTSP with XBMC the show get's scheduled too, but the "Episode" is displayed blank in the "Recorder Schedule".
When the show is recorded, it's missing the episode-number in the filename too.
#1 Updated by Mario Schmidt about 1 year ago
I'm very proud to tell you, that i fixed that myself.
The problem is by-design. "tvheadend" will not search it's own epg and add information when it is triggered over htsp, with a start-time, title, channel-number for a scheduling. Correct me if i'm wrong, but a HTSP-addon designer could use "EPG-Event-IDs" to schedule a recording and that would solve the above problem. But currently this isn't the case with the "HTSP TVHeadend PVR"-Addon.
The following changes too htsp.c fix the problem, by researching in the tvheadend epg, and adding episode-information if found to the dvr-entry:
// invalid channel
if ((channel = channel_find_by_identifier(iChannelId)) == NULL)
return htsp_error("Channel does not exist");
// #1006: add additional informationen from matching epg entry
epg_episode_t *ee = NULL;
if ((e = epg_event_find_by_time(channel, iStartTime)))
ee = &e->e_episode;
// get the optional attributes
if (htsmsg_get_u32(in, "priority", &iPriority))
iPriority = DVR_PRIO_NORMAL;
if ((strDescription = htsmsg_get_str(in, "description")) == NULL)
strDescription = "";
if ((strCreator = htsmsg_get_str(in, "creator")) NULL || strcmp(strCreator, "") 0)
strCreator = htsp->htsp_username ? htsp->htsp_username : "anonymous";
// create the dvr entry
de = dvr_entry_create(dvr_config_name, channel, iStartTime, iStopTime, strTitle, strDescription, strCreator, NULL, ee, 0, iPriority);
#2 Updated by Adam Sutton 10 months ago
- Category set to EPG
- Status changed from New to Fixed
EPG code has been re-written, but also you're right I intend to bug Lars to get XBMC client to record using event ids (now that it should work properly).
If the problem still exists with new code though please re-submit.