Tvheadend

From Official Kodi Wiki
Revision as of 00:25, 28 January 2014 by Ned Scott (talk | contribs) (Ned Scott moved page PVR backend/Tvheadend to Tvheadend PVR)
Jump to navigation Jump to search
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.

PVR/Contents Tvheadend is a TV streaming server for Linux supporting DVB-S, DVB-S2, DVB-C, DVB-T, ATSC, IPTV, and Analog video (V4L) as input sources and can be used as a PVR backend of XBMC. Version 3.4 and up also include support for timeshifting.


Preinstalled options

The following XBMC/OS distributions come with Tvheadend already installed, or easily installed as an option. These are great one-stop solutions that can greatly simplify the installation of the backend, as well as various other benefits unique to those distros.

  • OpenELEC - In addition to coming with Tvheadend software and a Tvheadend XBMC PVR add-on, OpenELEC has both current XBMC v12 builds (with native PVR support) as well as special XBMC v11 PVR builds.

Installing Tvheadend

Basic
Most Debian and Ubuntu installations can take advantage of the standard APT installation methods for getting Tvheadend installed, either using a GUI package manager, or from the command line using "apt-get install tvheadend". The install procedure normally creates a user named "hts", which is the user Tvheadend will run as. You should check that the "hts" user has sufficient permissions to your tuner (usually /dev/dvb/adapter0/frontend0). Running the command "sudo adduser hts video" should be sufficient.
For more info, see: https://tvheadend.org/projects/tvheadend/wiki/Download
Raspberry Pi
The easiest way to get Tvheadend on the Raspberry Pi is to use OpenELEC or Raspbmc. You can also use the Arch Linux ARM instructions below if you are using Arch Linux ARM on the R-Pi.
Arch Linux ARM (Pogoplug, Dockstar, etc)
See: PVR/Backend/Tvheadend/ALARM
Synology NAS
You can install Tvheadend from the Syno Community repo through the DiskStation Manager: http://www.synocommunity.com/repository

Tvheadend quick start guide

Note: This is just the most basic steps needed to get a signal from your PVR backend to XBMC. This guide probably doesn't include everything you will want to do, like name channels, get the electronic programming guide (EPG/TV guide) set up, remove channels, etc.
For help with those features see #Additional guides and links.
1. Make sure Tvheadend is up and running (see here for details: https://tvheadend.org/projects/tvheadend/wiki/Install_and_initial_setup )
2. All configuration is done in a web browser. If you are on the same machine that Tvheadend is installed then point your browser to http://localhost:9981 . If you are on a different machine than Tvheadend, then point your browser to http://IP.ADDRESS.GOES.HERE:9981 , where IP.ADDRESS.GOES.HERE = the IP address of the machine that Tvheadend is installed on. For example: http://192.168.0.3:9981
3.
Tvheadend1.png
  1. Click on the Configuration tab
  2. Click on the TV Adapters tab
  3. Click on the arrow for the drop-down menu
  4. Select your TV tuner adapter

If your tuner hardware is not detected or is having issues, check http://linuxtv.org for driver support.

4.
Tvheadend2.png
You will see a window like this. Now you will want to click on "Add DVB Network by location".
5.
Tvheadend3.png
  1. From the menus select your location and the type of signal you are trying to receive. In this example we're using a generic list for QAM, a US signal for cable TV.
  2. Then click "Add DVB Network" at the bottom.
6.
Tvheadend4.png
Wait for the number under "Muxes awaiting initial scan" to reach zero. If the number under "Services" is also zero, then that means Tvheadend has not picked up any channels. You may need to check your hardware or if you've selected the right signal type (step 5), or even your tuner driver (see http://linuxtv.org for driver support).

It might be possible that the firmware can't be found. Check dmesg for messages like the following:

[ 3931.964710] xc5000: waiting for firmware upload (dvb-fe-xc5000c-4.1.30.7.fw)...
[ 3931.970217] xc5000: Upload failed. (file not found?)

In this case, the Hauppauge WinTV-HVR-950Q tuner can't locate the firmware. You should download the desired firmware (the 950Q firmware can be found at http://www.kernellabs.com/firmware/xc5000/) and place in the correct directory (for Ubuntu this is /lib/firmware/). You should then see this message in dmesg:

[ 4791.147048] xc5000: firmware read 16497 bytes.
[ 4791.147049] xc5000: firmware uploading...
[ 4794.976020] xc5000: firmware upload complete...
7.
Tvheadend5.png
Click on "Map DVB services to channels". You should now be able to pick up TV channels in XBMC once you configure the Tvheadend add-on configuration in the next section, "#Connecting XBMC to Tvheadend".

Connecting XBMC to Tvheadend

Template:PVR repo notice

  1. Go to Settings -> Add-ons -> Enabled add-ons -> PVR Clients and select the Tvheadend add-on
  2. Select "Configure"
  3. By default, you should only need to fill in Tvheadend hostname or IP address.


Tvheadend HTSP Client.settings.png
Tvheadend hostname or IP address
The hostname or IP address of the server where Tvheadend is installed. If on the same machine then 'localhost' can be used.
HTTP port
The default for Tvheadend is 9981 but this will need updating if you have changed it in the Tvheadend settings.
HTSP port
The default for Tvheadend is 9982 but this will need updating if you have changed it in the Tvheadend settings.
Username
If you have configured Tvheadend to require a username then enter it here. This can be blank.
Password
If you have configured Tvheadend to require a password then enter it here. This can be blank.
Connect timeout in seconds
The default is 10 seconds however this can be lowered if you want XBMC to timeout connections to the Tvheadend backend quicker.
Response timeout in seconds
The default is 5 seconds however this can be lowered if you want XBMC to timeout requests to the Tvheadend backend quicker.



Next step: Configuring XBMC


Additional guides and links