Modified xmltv2vdr.pl

A hacked version of xmltv2vdr.pl is available.

It contains the following changes:

  1. Import event "sub-title" if present in the xml data. This is the second title, NOT to be confused with subtitles - i.e. what you see in yellow under the blue title in VDR if using the skin ST:TNG Panels.
  2. Append additional data attributes to the description, i.e. date, director(s), actor(s), presenter(s) category/ies, country/ies, original languages, rating(s), duration, aspect ratio, premiere/repeat, stereo.

    Ideally, this should consider the xmltv data domain; for now I've only worked on what is actually in the UK and Italian feeds.... i18n internationalization support is provided for data element labels. The rest is "to do".

    -> Currently, only English, Italian, French and a rough stab at German have been done. If you don't get labels in your output, you need to translate the labels you see in the i18n section. Labels DO NOT default to English. If you don't like the German labels, they can be changed....

  3. Description "Info not available" is now parameterized for each language code. Inspired by a Finnish patch which supports a command line override of the default text. See the i18n section....
  4. Add an error check for data which is missing an event stop date (Italy, Spain, others?). Some xmltv data streams only contain a starting time. Previously, xmltv2vdr would blissfully process the file - but the data didn't appear in VDR....

    Now, the end time will be set to 30 min from the start time. A warning "reminds" the user to run xmltv's tv_sort on the input xml file.

    tv_sort calculates the ending time based on the starting time of the next event for a channel. Since the last event for a channel won't have an ending time, even if tv_sort is used, a fictitious 30 stop time is better than nothing. Eventually, a note should be added to the description... to do.

    Even with tv_sort, there will still be a few events (the last one for each channel) without end times, thus the 30 minute work around.

    After I did this, I discovered that there was a patch against 1.05 to build tv_sort functionality into xmltv2vdr. If someone wants to add it in to this version, fine by me.

  5. Add an option -n to import data without erasing the existing epg.data. This is useful if you are importing EPG data from multiple sources at different times and/or don't want to lose scanned epg data. WARNING: you risk "duplicate" entries in your EPG data if the program times and names are not exact matches.
  6. Add radio channels support (added RID if not 0)
  7. Create channel ID as specified by vdr 1.3.15+. Specifically, the frequency is used ONLY if nid and tid are 0. I also include parsing out provider name etc. I suspect this may not be backwardly compatible, but I haven't tested this. Should you need pre- 1.3.15 logic, there are indications as to what to change in the code.
  8. Additional html conversion:

Use / Testing

  1. remember that options must precede the file specifications:

    /xmltv2vdr.pl [options] -c -x

  2. you may need to use the -t option, i.e. -t 900, if you encounter time out problems importing large data files
  3. Options

    I only tested the t, n, c and x options. In particular, I may have broken the l (description verbosity) option, as I'm not sure how it worked. If someone could look at this.... and possibly fix it...

  4. Non DVB-S channel definition. I only tested DVB-S, not DVB-C or T. If you find problems, do they exist in the current version?
  5. I'm not a perl programmer - I was driven to "hack" these changes as I wanted to search rich epg data. Any code clean-up / improvement is more than welcome.
Home · Contattaci · Mappa e Ricerca nel sito · Tasti di scelta rapida ‹k› · Su ‹j›