Linux-DVB‎ > ‎


FreetuxTv is a  GPL Television Viewer for Linux. It uses the gtk toolkit and utilizes vlc as playback engine. It's primary focus is on watching webstreams but it can be also used to watch DVB , or utilize it as a streaming client for vdr-streamdev in the local LAN


Freetuxtv is available via the ubuntu "universe" repository.

sudo apt-get update && sudo apt-get dist-upgrade
sudo apt-get install vlc vlc-data vlc-plugin-pulse x264 freetuxtv

If it's outdated or if you want to test a development build read on ;)

Since FreetuxTv depends on vlc, get the latest vlc binary packages as above and install the build dependencies: 

sudo apt-get install vlc libvlc-dev vlc-data vlc-plugin-pulse x264 subversion build-essential
sudo apt-get build-dep freetuxtv

get freetuxtv source ( svn checkout)
cd $HOME
svn checkout freetuxtv
cd freetux
./ --prefix=/usr
make && cd ..
sudo checkinstall -D --install=yes --fstrans=no --pakdir "freetuxtv" --pkgname freetuxtv --backup=no --deldoc=yes --deldesc=yes --delspec=yes --default --pkgversion "0.6.6~svn$(LC_ALL=C svn info 2> /dev/null | grep Revision | cut -d' ' -f2)"

After the install completed start it with

Add a playlist for DVB Channels

At the first run freetuxtv will synchronize the list of online tv channels. Depending on your connection speed this might take some time so be patient.

Freetux channels.m3u example


Scan the Sattelite:
scan your channels (szap format) using scan or w_scan 

w_scan -fs -s S13E0 -X -R 0 -O 0 -E 0 |tee channels.conf

and use this script to generate your channels list m3u

# Place header in playlist file
echo "#EXTM3U" > $PLAYLIST
# Read the dvbutils channel file
echo "please wait whilst $SOURCEFILE is parsed"
cat $SOURCEFILE | while read LINE
# Parse the channel name, frequency, symbol rate, service ID, and polarity
  CHANNELNAME=$(echo "$LINE" | sed 's/\:.*$//')
  CHANNELFREQ=$(echo $LINE | sed 's/\:/+/1' | sed 's/.*+//' | sed 's/\:.*//' | sed 's/$/000/')
  CHANNELSYMBRATE=$(echo $LINE | sed 's/\:/+/4' | sed 's/.*+//' | sed 's/\:.*//' | sed 's/$/000/')
  CHANNELSERVICEID=$(echo "$LINE" | sed 's/^.*\://')
  CHANNELPOLARITY=$(echo "$LINE" | sed 's/\:/+/2' | sed 's/.*+//' | sed 's/\:.*//')
# echo the channel information into the correctly formatted playlist
  echo "#EXTVLCOPT:dvb-adapter=0" >> $PLAYLIST
  echo "#EXTVLCOPT:dvb-frequency=$CHANNELFREQ" >> $PLAYLIST
if [ z$CHANNELPOLARITY == zh ]; then
   echo "#EXTVLCOPT:dvb-voltage=18" >> $PLAYLIST
   echo "#EXTVLCOPT:dvb-voltage=13" >> $PLAYLIST
   echo "dvb://" >> $PLAYLIST
echo "$PLAYLIST created"
echo "to play type:"
echo "vlc $PLAYLIST"

copy and paste script content in text file named
and make it executable

chmod +x

now, generate your channels like:

./ channels.conf channels.m3u

next, open Freetuxtv, and go to channles/add group


and go to "Custum channels group" tab, put your channles group name and "playlist URI" exp: /home/jim/channels.m3u and "add"


Add VDR-streamdev Channels playlist

i use freetux mainly as a desktop frontend for vdr (via streamdev plugin). To import your vdr channels go to the streamdev webfrontend (usually this is http://<vdr-ip>:3000/ ) , choose TS mode and click on the playlist link that will generate a "channels.m3u" file. Save this to your hd.

In Freetuxtv click on Channels - Add a Group - Custom Channels Group

Group's Name: VDR
Playlist's URI: /home/jim/Downloads/channels.m3u

Click on the add button & enjoy your VDR Channels in Freetuxtv