Tvheadend is a TV streaming server and recorder. Tvheadend supports DVB-S/S2, DVB-C/C2, DVB-T, ATSC, ISDB-T, IPTV, SAT>IP and HDHomeRun as input sources.
- 1 Installation
- 2 Usage
- 3 Configuration
- 4 XMLTV
- 5 Tips and tricks
- 6 Troubleshooting
- 7 = Not detecting channels when using DVB-T2 HD in Germany
Tvheadend is available from the AUR as AUR or AUR (development branch).
HDHomeRun support should be working out-of-the-box in theAUR package.
Once the service is running, configuration of Tvheadend is done through a web interface on localhost:9981.
The service should automatically generate Tvheadend username and passwords that are the same as your system. You can log in as root with your system's root password. If Tvheadend is unable to generate an username/password, one should simple login without providing credentials.
If you want to obtain schedule data from an outside source like Schedules Direct, then you should also installAUR.
Tips and tricks
Create M3U compatible playlist file
To export all channels as a M3U playlist file, one may want to use the following URL :
Use hardware video acceleration
When using hardware video acceleration.AUR it is possible to enable
Support depends on selected the codec and capabilities of the video device in use.
To enable hardware acceleration, check Hardware acceleration for a codec profile on the Codec Profiles page.
Enable VA-API support transcoding
It is possible to use VA-API for transcoding streams when using AUR, support depends on capabilities of the video device and the selected codec.
To enable VA-API create a new Codec Profile and select a codec with VAAPI on the Codec Profiles page. On the next screen check Hardware acceleration, select the correct Device Name, e.g.
i915 v1.6.0 (/dev/dri/renderD128) and click on Create.
Finally, create a Stream Profile and select the previously created Codec Profile as Video codec profile. The Audio codec profile and Subtitle codec profile depend on the user preferences and as stated support by the video device.
To test the newly created profile, you may want to use the following URL:
Use journalctl to check for Tvheadend debug info. The error tvheadend[..]: transcode: no AVHWAccel indicates the stream profile doesn't use hardware acceleration and one should adjust the codec configuration.
Use CAPMT (Linux Network DVBAPI) with OSCam
Install AUR or AUR to provide a softcam for Tvheadend.
The following settings may be used when using DVB-API as Conditional Access Client (CAs):
|Mode||OSCam net protocol (rev >= 10389)|
|IP Address (TCP mode)||localhost or 127.0.0.1 or hostname|
|CW Mode||Standard / auto|
In OSCam create a user named vdr with vdr as password and set the DVB Api configuration to use at least the following parameters:
tvheadend.service to apply the changes.
Unable to authenticate/play stream
Authentication issues can occur when using digest as Authentication type.
Change this to Both plain and digest to allow browsers/players that don't support the digest protocol.
= Not detecting channels when using DVB-T2 HD in Germany
The German broadcast of DVB-T2 HD is a deviation of the official standard inasmuch as it is using the more modern H.265 codec. Somehow, tvheadend doesn’t detect the channels automatically. You first need to run the configuration wizard, choose no pre-defined muxes, just --Generic--: auto-Default. After the search run, save and go to Configuration, DVB Inputs, Muxes. Select all listed muxes (might be on two pages, batch selection via shift key possible) and edit them from DVB-T to DVB-T2 – you need to check the Delivery system hook in the edit dialog. Then go to Network, select the DVB-T entry and click Force scan. Observe the rescan via the Muxes tab as many of the former "FAIL" results become "OK". This will get you the channels under Services which you can then select to create an actual channels list of the unencrypted TV channels.