This tab is used to configure the Electronic Program Guide (EPG) grabbing
capabilities. Tvheadend supports a variety of different EPG grabbing
mechanisms. These fall into 3 broad categories, within which there are a
variety of specific grabber implementations.
Grabber Types
- Over-the-Air (OTA) - These grabbers receive EPG data directly from the
DVB network. This is often the easiest way to get up and running and does
provide timely updates should scheduling change. However, the information
isn't always as rich as some of the other grabbers.
- Internal - These are grabbers which can be internally initiated from
within Tvheadend using a very simple scheduler. These are typically
Internet-based services. This can be a quick way to get richer EPG data
where you don't have decent OTA support.
- External - These provide the option to run grabber scripts externally and
to send data into Tvheadend via Unix domain sockets. It provides the ability
to run more complex configurations using things like cronjob's, script
chains, etc.
Grabber Modules
- EIT - This is a DVB standards compatible EIT grabber. Typically it
will retrieve now/next information, though on some networks there may be more
extensive data published.
- Freesat/view - This is an extended version of EIT that is used by the
Free-to-air DVB providers in the UK. It includes additional information such
as series links and episode identifiers.
- OpenTV - This is a proprietary OTA EPG grabber. It's known to be used on
the SKY networks, but others may use it. You need two configuration files to
define settings for your particular network, if you don't see yours listed
please visit IRC #hts for help.
- XMLTV - This is am Internet-based suite of scripts, for more information
about XMLTV please visit http://www.xmltv.org.
To make use of the internal XMLTV grabber you typically require the xmltv-utils
package to be installed. If you install new grabbers you will need to
restart Tvheadend to pick these up as they're loaded at startup. If you see
no XMLTV grabbers listed then most probably XMLTV is not properly installed
and in the PATH.
- PyEPG - This is another Internet-based scraper. It currently only
supports the Atlas UK system (for which you need a key), but it does provide
a very rich EPG data set. For more information see
http://github.com/adamsutton/PyEPG.
Cron multi-line config text areas
The cron lines looks like:
# * * * * * command to execute
# ┬ ┬ ┬ ┬ ┬
# │ │ │ │ │
# │ │ │ │ │
# │ │ │ │ └───── day of week (0 - 6) (0 to 6 are Sunday to Saturday, or use names; 7 is Sunday, the same as 0)
# │ │ │ └────────── month (1 - 12)
# │ │ └─────────────── day of month (1 - 31)
# │ └──────────────────── hour (0 - 23)
# └───────────────────────── min (0 - 59)
- Cron special characters
- Asterisk ( * )
- The asterisk indicates that the cron expression matches for all values
of the field. E.g., using an asterisk in the 4th field (month)
indicates every month.
- Slash ( / )
- Slashes describe increments of ranges. For example 3-59/15 in the
1st field (minutes) indicate the third minute of the hour and every
15 minutes thereafter. The form "*/..." is equivalent to the form
"first-last/...", that is, an increment over the largest possible
range of the field.
- Comma ( , )
- Commas are used to separate items of a list. For example, using
"MON,WED,FRI" in the 5th field (day of week) means Mondays,
Wednesdays and Fridays.
- Hyphen ( - )
- Hyphens define ranges. For example, 2000-2010 indicates every year
between 2000 and 2010 AD, inclusive.
- Number-sign ( # )
- Number-sign defines a start of a comment. The rest of line is
ignored behind this character.
Configuration options
General Config
- Update channel name
- Automatically update channel names using information provided
by the enabled EPG providers.
- Update channel number
- Automatically update channel numbers using information provided
by the enabled EPG providers.
- Update channel icon
- Automatically update channel icons using information provided
by the enabled EPG providers.
- Periodic save EPG to disk Interval
- Writes the current in-memory EPG database to disk every x Hours
(user defined), so should a crash/unexpected shutdown occur EPG
data is saved periodically to the database (Re-read on
next startup)
Set to 0 to disable.
Internal Grabber
- Module:
- Select which internal grabber to use.
- Cron multi-line
- Multiple lines of the cron time specification.
Over-the-air Grabbers
- Force initial EPG scan at startup
- ... no comment
- Cron multi-line
- Multiple lines of the cron time specification.
- EPG scan timeout in seconds
- The multiplex (mux) is tuned for this amount of time at maximum. If EPG data
are completed before this limit, the mux is released sooner.
- Checkbox list
- Checkbox list to enable/disable available modules.
By default all grabbers should be enabled.
External interfaces
Checkbox list to enable/disable available modules. The path field
contains the absolute path of the unix domain socket into which EPG
data can be sent.`
To send data to the socket use the command "netcat -u SOCKET_PATH".
Note: for some systems the netcat flags can vary so please consult the
man page.
Notes
To apply any changes please use the [Save configuration button]
XMLTV/PyEPG - if you are using the internal versions of these modules then
you must first configure them externally as Tvheadend provides
no support for this. Nor does it provide the ability to pass command line
options (for this use the external interface).