HTTP Live Streaming

HTTP Live Streaming is a technology developed by Apple for streaming video content via HTTP.

Video signals are divided into blocks of 9-10 seconds. These blocks have to be produced in different qualities and made public with a playlist. When playing a playlist, the player receives information about the available blocks and their picture and sound quality. Depending on the available network quality, the player then selects the appropriate block and the appropriate stream quality. If, during the playback, the available network quality changes, for example because one is with his mobile device in the car, the player can select independently blocks of higher or lower quality, in order not to have to interrupt the video stream.

However, streams of different quality would have to be generated simultaneously, if one wanted to watch live TV. This is probably not possible with the configuration of most VDRs, since coding the video signals in a HTTP Live-Streaming compatible format needs lots of CPU performance (depending on the desired quality).

Therefore iVDRclient offers the possibility to select the desired image and sound quality when generating streams. At home in the WLAN one can watch with high quality on the mobile device, while travelling alow upload rate of the DSL connection somewhat tarnish the fun.

The equipment of the VDR is of course also decisive for the possible quality. An older processor can already have problems with the generation of a low-quality stream, a modern and fast processor can generate several streams in high quality at the same time.

Trial will make you smart in this case.


On the VDR, vlc must be installed in a current version (at least 2.1.4).

The streams are generated using vlc. IVDRclient starts vlc on the VDR. On the input side, vlc connects to the streamdev plugin; on the output side, HTTP live streaming segments are stored in the configured directory.

IVDRclient must therefore also be considered a client for the streamdev plugin, with all its advantages and limitations. For example, streaming of ZDF will not work if another user already watches ARD and only one DVB-S card is available in the VDR.

Currently, vlc is not yet 100% compliant with the Apple standard, so when watching the stream it will only provide sound for about 10 seconds and a still image at the beginning.

Live TV in this constellation already works very well. With new versions of vlc there will certainly be further improvements.

Recording streams works in an identical way, but there may be problems if you want to jump during streaming to other playback times. If you do not want to do without this comfort, you should first produce a stream (start streaming and wait). Streams generated from recordings are stored on the VDR until the user manually deletes them via iVDRclient. So you can generate the stream in the morning and watch in the evening (if you plan well ...)

User Directories and WebServer

In most cases, the Web Server directory is used to store the stream segments:


In most Linux distributions, this directory can not be accessed by default via the web server.


Execute the following commands on your VDR to gain access to the above directory if you are using Apache2.

The first command loads the necessary Apache module:

sudo a2enmod userdir

The second command starts Apache2 (depending on installation and distribution this command may differ):

sudo /etc/init.d/apache2 reload


Execute the following commands on your VDR to gain access to the above directory if you are using lighttp:

The first command loads the necessary lighttp module:

sudo lighty-enable-mod userdir

The second command starts lighttp (depending on installation and distribution this command may differ):

sudo /etc/init.d/lighttpd reload