Skip to content
tunip edited this page Feb 27, 2017 · 6 revisions

TODO - Document the setup

Each part is running in a own docker container.

Misc Details:

  • TVHeadend Version: 4.1-2447
  • Octo DVB-S Tuner Digital Devices Max S8
  • Picons for Channel Logos
  • WebGrab++ for EPG data, including episode images etc

TVHeadned Setup

DVB Inputs / TV adapters
TODO

DVB Inputs / Networks
TODO

DVB Inputs / Muxes
TODO

DVB Inputs / Services
TODO

General / Base / Picon
Channel icon name scheme: No scheme
Picon path: file:///data/picons
Picon name scheme: Standard

Picons Setup

Set size, style and background for the logos.

build-input/backgrounds.conf

# Tvheadend
264x198;264x198;light;transparent

Syntax:
<resolution>;<resolution-padding>;<logotype>;<background>

Connect to the Tvheadend server and fetch the channel list (only create picons for usesd channels)

build-input/tvheadend.serverconf

# hostname or ip address of tvheadend server (default: "localhost")
TVH_HOST="localhost"
# port of tvheadend API (default: 9981)
TVH_PORT="9981"
# tvheadend user name
TVH_USER=""
# tvheadend password of above user
TVH_PASS=""

Updating the channel logos:

1-build-servicelist.sh srp
2-build-picons.sh srp

WebGrab++ Setup

WebGrab++.config.xml

<?xml version="1.0"?>
<settings>
  <!-- http://webgrabplus.com/node/30 -->
  <filename>/data/guide.xml</filename>
  <mode>m,n</mode>
  <postprocess run="n" grab="y">mdb</postprocess>
  <proxy>automatic</proxy>
  <user-agent>Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; WOW64; Trident/5.0; yie9)</user-agent>
  <logging>off</logging>
  <retry time-out="5">4</retry>
  <skip>noskip</skip>
  <timespan>7</timespan>
  <update></update>

  <!-- http://webgrabplus.com/node/94 -->
  <channel update="i" site="tvspielfilm.de" site_id="ARD" xmltv_id="Das Erste HD">Das Erste HD</channel>
  <channel update="i" site="tvspielfilm.de" site_id="ZDF" xmltv_id="ZDF HD">ZDF HD</channel>
  <channel update="i" site="tvspielfilm.de" site_id="RTL" xmltv_id="RTL HD">RTL HD</channel>
  <channel update="i" site="tvspielfilm.de" site_id="RTL2" xmltv_id="RTLII HD">RTLII HD</channel>
  <channel update="i" site="tvspielfilm.de" site_id="PRO7" xmltv_id="ProSieben HD">ProSieben HD</channel>
  <channel update="i" site="tvspielfilm.de" site_id="SAT1" xmltv_id="SAT.1 HD">SAT.1 HD</channel>
  <channel update="i" site="tvspielfilm.de" site_id="K1" xmltv_id="kabel eins HD">kabel eins HD</channel>
  <channel update="i" site="tvspielfilm.de" site_id="VOX" xmltv_id="VOX HD">VOX HD</channel>
  <channel update="i" site="tvspielfilm.de" site_id="SIXX" xmltv_id="SIXX HD">SIXX HD</channel>
  <channel update="i" site="tvspielfilm.de" site_id="TELE5" xmltv_id="TELE 5 HD">TELE 5 HD</channel>
  <channel update="i" site="tvspielfilm.de" site_id="SUPER" xmltv_id="SUPER RTL HD">SUPER RTL HD</channel>
  <channel update="i" site="tvspielfilm.de" site_id="DISNE" xmltv_id="Disney Channel HD">Disney Channel HD</channel>
  <channel update="i" site="tvspielfilm.de" site_id="NICK" xmltv_id="NICKELODEON HD">NICKELODEON HD</channel>
  <channel update="i" site="tvspielfilm.de" site_id="SAT1G" xmltv_id="SAT.1 Gold HD">SAT.1 Gold HD</channel>
  <channel update="i" site="tvspielfilm.de" site_id="PRO7M" xmltv_id="Pro7 MAXX HD">Pro7 MAXX HD</channel>
  <channel update="i" site="tvspielfilm.de" site_id="RTL-N" xmltv_id="RTLNITRO HD">RTLNITRO HD</channel>
  <channel update="i" site="tvspielfilm.de" site_id="DMAX" xmltv_id="DMAX HD">DMAX HD</channel>
  <channel update="i" site="tvspielfilm.de" site_id="TLC" xmltv_id="TLC HD">TLC HD</channel>
  <channel update="i" site="tvspielfilm.de" site_id="MTV" xmltv_id="MTV HD">MTV HD</channel>
  <channel update="i" site="tvspielfilm.de" site_id="DMC" xmltv_id="Deluxe Music HD">Deluxe Music HD</channel>
  <channel update="i" site="tvspielfilm.de" site_id="NTV" xmltv_id="n-tv HD">n-tv HD</channel>
  <channel update="i" site="tvspielfilm.de" site_id="N24" xmltv_id="N24 HD">N24 HD</channel>
  <channel update="i" site="tvspielfilm.de" site_id="EURO" xmltv_id="Eurosport 1 HD">Eurosport 1 HD</channel>
  <channel update="i" site="tvspielfilm.de" site_id="SPORT" xmltv_id="SPORT1 HD">SPORT1 HD</channel>
  <channel update="i" site="tvspielfilm.de" site_id="ZEE-1" xmltv_id="Zee One HD">Zee One HD</channel>
  <channel update="i" site="tvspielfilm.de" site_id="3SAT" xmltv_id="3sat HD">3sat HD</channel>
  <channel update="i" site="tvspielfilm.de" site_id="ARTE" xmltv_id="arte HD">arte HD</channel>
  <channel update="i" site="tvspielfilm.de" site_id="SERVU" xmltv_id="ServusTV HD Deutschland">ServusTV HD Deutschland</channel>
  <channel update="i" site="tvspielfilm.de" site_id="ORF1" xmltv_id="ORF1 HD">ORF1 HD</channel>
  <channel update="i" site="tvspielfilm.de" site_id="ORF2" xmltv_id="ORF2W HD">ORF2W HD</channel>
  <channel update="i" site="tvspielfilm.de" site_id="ORF3" xmltv_id="ORF III HD">ORF III HD</channel>
  <channel update="i" site="tvspielfilm.de" site_id="ORFSP" xmltv_id="ORF SPORT+ HD">ORF SPORT+ HD</channel>
  <channel update="i" site="tvspielfilm.de" site_id="ATV" xmltv_id="ATV HD">ATV HD</channel>
  <channel update="i" site="tvspielfilm.de" site_id="KIKA" xmltv_id="KiKA HD">KiKA HD</channel>
  <channel update="i" site="tvspielfilm.de" site_id="TAG24" xmltv_id="tagesschau24 HD">tagesschau24 HD</channel>
  <channel update="i" site="tvspielfilm.de" site_id="PHOEN" xmltv_id="PHOENIX HD">PHOENIX HD</channel>
  <channel update="i" site="tvspielfilm.de" site_id="FES" xmltv_id="ONE HD">ONE HD</channel>
  <channel update="i" site="tvspielfilm.de" site_id="ZINFO" xmltv_id="ZDFinfo HD">ZDFinfo HD</channel>
  <channel update="i" site="tvspielfilm.de" site_id="2NEO" xmltv_id="zdf_neo HD">zdf_neo HD</channel>
  <channel update="i" site="tvspielfilm.de" site_id="BR" xmltv_id="BR Fernsehen Süd HD">BR Fernsehen Süd HD</channel>
  <channel update="i" site="tvspielfilm.de" site_id="HR" xmltv_id="hr-fernsehen HD">hr-fernsehen HD</channel>
  <channel update="i" site="tvspielfilm.de" site_id="MDR-TH" xmltv_id="MDR Thüringen HD">MDR Thüringen HD</channel>
  <channel update="i" site="tvspielfilm.de" site_id="NDR-HH" xmltv_id="NDR FS HH HD">NDR FS HH HD</channel>
  <channel update="i" site="tvspielfilm.de" site_id="RBB-B" xmltv_id="rbb Berlin HD">rbb Berlin HD</channel>
  <channel update="i" site="tvspielfilm.de" site_id="SWRBW" xmltv_id="SWR BW HD">SWR BW HD</channel>
  <channel update="i" site="tvspielfilm.de" site_id="WDR-K" xmltv_id="WDR HD Köln">WDR HD Köln</channel>
  <channel update="i" site="tvspielfilm.de" site_id="SNHD" xmltv_id="Sky Sport News HD">Sky Sport News HD</channel>

</settings>

ini/tvspielfilm.de.ini

**------------------------------------------------------------------------------------------------
* @header_start
* WebGrab+Plus ini for grabbing EPG data from TvGuide websites
* @Site: live.tvspielfilm.de
* @MinSWversion: V1.57
* @Revision 2 - [18/11/2016] tunip
*   - added season/episode information
* @Revision 1 - [11/11/2016] tunip
*   - change index start time
*   - improved scraping of title
*   - channel file creation added
*   - set timezone to UTC
* @Revision 0 - [11/10/2016] tunip
*   - creation
* @Remarks:
* @header_end
**------------------------------------------------------------------------------------------------
site {url=tvspielfilm.de|timezone=UTC|maxdays=7|cultureinfo=de-DE|charset=UTF-8|titlematchfactor=90}
site {episodesystem=xmltv_ns}
*
url_index {url|http://live.tvspielfilm.de/static/broadcast/list/|channel|/|urldate|}
url_index.headers {customheader=Accept-Encoding=gzip,deflate}
*
urldate.format {datestring|yyyy-MM-dd}
*
index_showsplit.scrub {multi|"hexId"|||}
index_showsplit.modify {cleanup}
*
index_start.scrub {regex||"timestart":(\d{10})||}
index_stop.scrub {single|"timeend"|:|,|"}
index_title.scrub {single|"title":"||"|"}
index_title.modify {addstart("")|Nicht Gesetzt}
index_subtitle.scrub {single|"episodeTitle":"||"|"}
index_subtitle.scrub {single|"subline":"||"|"}
index_description.scrub {single|"text":"|||","}
index_description.modify {replace|","|.}
index_description.modify {addstart("")|Keine Programminformation verfügbar}
index_director.scrub {single|"director":"||"|"}
index_actor.scrub {multi|"actors":|":"|"}|]}
index_category.scrub {single|"genre":"||"|"}
index_country.scrub {single|"country":"||"|"}
index_country.modify {remove|\}
index_productiondate.scrub {single|"year":|||}}
index_showicon.scrub {single|"images"|"size4":"|"|}}
index_showicon.modify {remove|\}
index_rating.scrub {single|"fsk"|:|,|"}
*
index_temp_3.scrub {single|"seasonNumber":"||"|"}
index_temp_3.modify {clear(> "10000")}
index_temp_3.modify {addstart(not "")|S}
index_temp_4.scrub {single|"episodeNumber":"||"|"}
index_temp_4.modify {clear(> "1000")}
index_temp_4.modify {remove(not "")|\}
index_temp_4.modify {substring(not "" type=regex)|"^(\d+)(?:/\d+)?$"} *removes the episdoe total../xx
index_temp_4.modify {addstart(not "")|E}
index_episode.modify {addstart(pattern="S'S1'E'E1'/'Et1'""S'S1'E'E1'""S'S1'""E'E1'")|'index_temp_3''index_temp_4'}
*
** for future use.
*index_temp_5.scrub {single|"isLive":|||}
*index_temp_6.scrub {single|"isNew":|||}
*index_temp_7.scrub {single|"isTipOfTheDay":|||}
*index_temp_8.scrub {single|"isTopTop":|||}
*index_temp_9.scrub {single|"conclusion":"|||","}
*
**  _  _  _  _  _  _  _  _  _  _  _  _  _  _  _  _  _  _  _  _  _  _  _  _  _  _  _  _  _  _  _  _
**      #####  CHANNEL FILE CREATION (only to create the xxx-channel.xml file)
**
** @auto_xml_channel_start
*url_index {url|https://live.tvspielfilm.de/static/content/channel-list/livetv}
*index_site_id.scrub {multi|"id":"||"|"}
*index_site_channel.scrub {multi|"name":"||"|"}
** @auto_xml_channel_end

Updating the EPG:

mono WebGrab+Plus.exe /config
Clone this wiki locally