DESCRIPTION:
This page describes on how to setup a "softcam" so you can watch Digital Video on your budget card.
The softcam can also be used to read subscription info from the smartcard from your provider by using a cardreader, or by using a cardserver running on another machine (e.g. dreambox) which provides the softcam with the needed keys to decrypt the coded signal. Unfortunately both methods seems to be illegal since cardsharing is obviously forbidden and most Digital Video providers have problems with using equipment which is not approved by them. (and obviously a home-brew system isn't) Therefore I will only describe on how to setup the softcam and freevo so you can at least view open channels on your budget card...
PREREQUISITES:
- kernel-source (best use packages provided by your distro)
- Subversion client (best use packages provided by your distro)
- Gnu C compiler (best use packages provided by your distro)
- Gnu make (best use packages provided by your distro)
- The softcam; sasc-ng
- Mplayer, the one and only player...
- Linux-tv, drivers and tools for various tv cards.
INSTALLATION:
First make sure that you have your dvb card up and working, how to get this done depends on your distribution, if the cards drivers are loaded you should have a directory /dev/dvb/adapter0 with some devices in it. If you run into problems with that please use the proper channels provided by your distro to get your card going. (mailinglists, newsgroups or forums) Make sure your ~/.mplayer directory contains an channel.conf, you can create one with:
scan /usr/share/doc/dvb-utils/examples/scan/dvb-s/Astra-19.2E > .mplayer/channels.conf
Login as root (or su/do) and chdir to /usr/src:
cd /usr/src
Download sasc-ng:
svn co http://OpenSVN.csie.org/sascng sasc-ng
Go into the sasc-ng folder and build the binairy and kernel loopback module:
cd sasc-ng make make module
Now lets start testing:
insmod dvbloopback.ko
Watch your syslog or use dmesg to check if the module is loaded, if necessary use the sasc-ng wiki, this module will create a second (virtual) dvb adapter /dev/dvb/adapter1 wich is used as decrypted adapter.
Create a directory /var/keys, this will be used for storing configuration files and keyfiles:
mkdir /var/keys
Create a key cache file in there and copy some example files:
touch /var/keys/ca.cache cp sc/PLUGINS/src/sc-src/examples/* /var/keys
Now fire up the softcam:
./sasc-ng --cam-dir /var/keys --cam-budget -j 0:1
You should now see a lot of messages running in your console, open a fresh console and test it:
mplayer -dvbin card=2 dvb://RTL2
note: The above example presumes that you have your card configured, channels scanned and a working channels.conf in your mplayer dir. If all is working and you have a picture you can try to automate things by moving the sasc-ng binairy in your path and moving the module in a proper location:
mv dvbloopback.ko /lib/modules/$YOURKERNELVERSION/misc depmod -ae mv sasc-ng /usr/bin
Now you can add entry's to your startup scripts (distribution specific) for loading everything on startup:
modprobe dvbloopback sleep 2 sasc-ng --cam-dir /var/keys --cam-budget -j 0:1 > /dev/null 2>&1
FREEVO CONFIG:
Edit local_conf.py entrys to use the second (virtal) dvb adapter:
MPLAYER_ARGS = { 'dvb' : '-vf pp=de/fd -cache 1024 -dvbin card=2' } VCR_CMD = CONF.mplayer + ' -dumpstream -dumpfile %(filename)s -dvbin card=2 "dvb://%(channel)s"'
NOTES:
First: I tested this all on the Astra satellite, if you use another find it out on your own...
Second: Make sure your card is working, use the channels of your distro for that, or the linux-tv community...
Third: Get sasc-ng working, there wiki provides enough info and googling the net for more info will do...
Forth: If you update your kernel version you will have to rebuild the loopback module...
Last: Changing your freevo config won't be a problem, if you came that far and that won't work turn to Redmond...
Have fun!
Addition:
If you want sasc-ng to read keys from your CCcam server on your dreambox youll find a hack over here: http://www.japie.deserver.nl/ftp/freevo/sasc-ng