DVB-T, USB and Xine on Slackware 10.2
Hi there,
I used to use my Slackware box for "serious business" only, so far. But now I would like to add some leisure and watch TV with it. So I connected a Terrattec Cinergy T USB 2.0 DVB-T Receiver. In fact, the kernel loads the correct driver module automagically, the output of lsmod has the following lines: Code:
ciinergyT2 10756 0 Code:
There is no input plugin available to handle "Sorry, no channels.conf found". Can anyone point me to some HOW-TO explaining what exactly I need in order to get DVB-T via USB working in Slackware 10.2, and where to get the missing links, preferrably without installing hundreds of additional libraries? ;-) Thanks in advance! gargamel |
Hmm....
I am using a dvico dvb-t pci card and it took me awhile to sort it all out but maybe I can get you pointed in the right direction with my notes from installation on my current slack-10.2. I find Kaffeine suits my needs for dvb viewing. It uses xine and will configure xine as required and makes the set up pianless as long as you have dvb modules and devices right Note that I am running a 2.6.13 kernel and udev. ################################################# 11. CONFIGURING FOR DVB CARD I've run lspci and lsmod as root to check and see that my dvb card is recognised and that the correct modules hae been loaded. Everything looks OK but I need to make some changes in /etc/udev if I want the correct devices set up in /dev/dvb/adaptor0. I don't understand all of the whys about what I'm going to do but it is necessary and it worked in my current workstation. Udev is fairly new and maybe it will get simpler with time. This script has to be copied into /etc/udev/scripts: #!/bin/sh /bin/echo $1 | /bin/sed -e 's,dvb\([0-9]\)\.\([^0-9]*\)\([0-9]\),dvb/adapter\1/\2\3,' #end of script Previously I would also have to add this to /etc/udev/rules.d/udev.rules: # dvb devices KERNEL="dvb*", PROGRAM="/etc/udev/scripts/dvb.sh %k", NAME="%c" but when I take a look I find that in slack-10.2 this line is already in udev.rules: # dvb devices KERNEL="dvb*", PROGRAM="/etc/udev/scripts/dvb.sh %k", NAME="%c", GROUP="video", MODE="0660" This seems to be doing the same thing plus setting some permissions. In slack-10.1 /etc/udev there was a subdirectory /etc/udev/permissions.d which is not here in 10.2 so I'm thinking that there has been some changes since when I had to add # DVB devices dvb/*:$root:video:0660 dvb:$root:video:0660 dvb/adapter*:$root:video:0660 to /etc/udev/permissions.d/udev.permissions and I think I'll leave everything as it is now with the exception of copying in the missing dvb.sh and I'll see if I get the correct devices created at the next boot. On reboot I now have a /dev/dvb/adapter0. There are four devices in adapter0 which is what I should have and the permissions are as per the dvb line in udev rules: rick@rick:~$ ls -l /dev/dvb/adapter0/ total 0 crw-rw---- 1 root video 212, 4 2005-09-17 20:33 demux0 crw-rw---- 1 root video 212, 5 2005-09-17 20:33 dvr0 crw-rw---- 1 root video 212, 3 2005-09-17 20:33 frontend0 crw-rw---- 1 root video 212, 7 2005-09-17 20:33 net0 so its quite clear that I'll have to make rick a member of the group video if I'm going to access my dvb related devices. I'll be lazy and do it in kuser but since I need to make the chnges as root I'll do the following: [Alt F2] will open up a little window in KDE which will allow me to type in the command [[kdesu kuser]. After I hit Enter I will be prompted for the root password and after entering that kuser will open up allowing me to make changes as root. The alternative to this would be to change the permissions do everyone can access the devices by chnaginging the settings in /etc/udev/rules.d as follows: # dvb devices KERNEL="dvb*", PROGRAM="/etc/udev/scripts/dvb.sh %k", NAME="%c", GROUP="video", MODE="0666" where MODE has been changed from 066 to 666. ################################################# 12. SETTING UP KAFFEINE FOR DIGITAL TV Now that I know everything is in order for accessing/using my dvb card I'll setup Kaffeine for viewing digital TV programs. Kaffeine is also a good dvd viewer and has plugins for viwing other video type files as well. It comes with dvbscan files for allot of cities. To quote: "Kaffeine uses dvbscan data files to find channels from you DVB network. They are expected to be in : ~/.kde/share/apps/kaffeine/dvb-s ~/.kde/share/apps/kaffeine/dvb-t ~/.kde/share/apps/kaffeine/dvb-c If these dirs are missing, Kaffeine tries to download a daily updated archive from http://hftom.free.fr/kaxtv/dvbdata.tar.gz, and extract it. If that fails, Kaffeine search for the installed archive in $KDEDIR/share/apps/kaffeine." The most recent is kaffeine-0.7.1 and I'll download the source and compile with ./configure, make and checkinstall which will create a slackpack. In slack-10.1 I could not get checkinstall to work right even though I followed Pat's instructions but checkinstall works fine this time around. I hope this helps |
Thanks for your detailed description.
Unfortunately I was so far still unable to get it running: The URL http://hftom.free.fr/kaxtv/dvbdata.tar.gz gives HTTP error 404, and I think there is a difference between USB and PCI. Similar, but apparently not the same. But your tip to take a look at the udev setup seems to make sense --- thank you! Is anyone watching TV via DVB-T on Slackware with a USB receiver? gargamel |
I just hit that url in your post and have no problem in konqueror or when I paste it into firefox. Maybe you tried it on a bad day.
Setting up dvb-t was a pain at first because it is relatively new, there is not much documentation, the few lists available when I was trying seemed more for driver hackers, and I had to compile my own kernel modules after patching the source. My fault for grabbing something that was bleeding edge but I learned. Being that it's usb I probably can't be of any more help. I found that I have to have a /dev/dvb directory with contents as follows: rick@rick:~$ ls /dev/dvb adapter0/ adapter1/ adapter2/ adapter3/ rick@rick:~$ ls /dev/dvb/adapter0 audio0 ca0 demux0 dvr0 frontend0 net0 osd0 video0 That is at least what kaffeine is looking for and as long as I have my udev set up correctly it all works. Sorry I can't help more with usb side of things but here's a little more general stuff. I can copy my channels config into ~/.xine and if everything else is OK I will be tunning in to the first station listed. Top left button in xine control interface is Playlist which will give you selection options for all channles in the config file. The dvbdata.tar.gz file has dvb-t frequency listings for some cities but that is enough to give you something to scan with. I had a channels.conf for melbourn off the net when I first started playing with xine so I didn't have to scan one up. Kaffeine does it's own scan from the melbourne frequencies in the dvb-t tarball. Under "media" in xine configuration i have /dev/v4l/video0 listed as the video device. |
Thanks a lot for your support.
I have it working now. As it seems my problem was a filename typo -- instead of dvb.sh I stored dvb-t.sh. However, it now works with Kaffeine, but not yet with Xine. Wenn I click on the DVB button in the XINE UI controls, I still get an error message, that there is no plugin to handle input dvb://<some_TV_station>. I don't quite get it, why Kaffeine works and Xine doesn't, although Kaffeine actually *uses* Xine. But this is certainly a secondary problem --- the main thing is that I can watch TV on Slackware and even record stuff. Thanks again, your hints were very useful! gargamel |
Glad to hear you have it all sorted out
|
Quote:
|
Finally, I found out the reason why Xine wouldn't work.
First of all, it really needs a file ~/.xine/channels.conf, as suspected. That file must be in the right format. If don't find a suitable file for download you have to create one. You can use the program scan (or dvbscan) to create a channels.conf for Xine, as described here: http://www.johannes-bauer.com/dvbt/ However, scan doesn't do frequency tuning, and it needs an inital, not necessarily complete channel list file. So you'll have to do two things first: i) Use Kaffeine's channel search to create the initial input file for scan. ii) Use the very helpful script dvbt-scanaid as described at the URL given above. You can also download that script from there. Rename the resulting file to channels.conf and copy it to ~/.xine. You are almost there, but in Slackware 10.2 you'll still get the error message that Xine doesn't find a plugin to handle input of type dvb://zdf. Now, Xine is right. It is unable to find other plugins for too a simple reason: The PATH environment variable doesn't include the plugins directory! Open a shell (as a non-privileged user, who should be a member of group video) and type $export PATH=$PATH:/usr/lib/xine And, voila, you can watch TV with Xine, as well as with Xine. In fact, I regard the missing path a minor bug in Slackware. When the xine packages are installed that path should include the plugins. But I also conclude that I need to trust error messages in Slackware a little more. In the end it turned out that Xine told me that it was unable to find a suitable plugin, because it was unable to find that plugin. For no other reason. ;-) Thanks once more for your hints and tips that really helped me to sort this out! gargamel |
baffled
What baffles me is why, if any individual user can spend ten minutes typing in some scripts to get DVB working, why the people who build the distros have not already done it!
That after all is the whole point of building a distro - setting up the various script files that tie all the bits and pieces together. I have tried so many distros and none of them seems to support DVB out of the box. When you consider that one of these distro gurus could fix it up inside half an hour, and that they seem to release new distros on a regular basis, whats stopping them? DVB has been around foir a long time. |
Agreed.
With two additions: (1) SuSE supports DVB out of the box. (2) In Slackware it wasn't *overly* difficult to get Kaffeeine working. But this program is not included with Slackware by standard. In fact I regard this and the missing modprobe line for my Tekram DC-395U SCSI controller as minor bugs in Slackware. Inconsistencies that can easily be fixed, and are therefore unnecessary. Apart from this I still like Slackware, and I think that Pat V. is doing a great job. gargamel |
easily fixed
Quote:
As regards your comment about easily fixed - this depends on whether you have the information. It might take only 20 seconds to type a line of two into a script file, but might take weeks to track which script file and what lines. Everything is easy when you KNOW how - its getting the knowledge thats the hard part. Often when you do track down a forum post that suggests a solution, it is for a distro you dont use. I still think all these distros is going to hinder Linux adoption and progress. It makes everything so much more complex. And what does it really matter where you put the script files? Why does every distro have to put them in a different place. |
I am trying to get xine to work on slackware 10.2 - recently upgraded. I have a nova-t card that I have failed to get working for over a year, but I thought I'd try again. It seems to work great, BUT...
The xine screen stays blank. Using xine --verbose=3 (say) I can see that there is an input stream, but no output on the display :( I downloaded a channels.conf for Crystal Palace, which should work for my location. Any ideas? |
I can only recommend that you read the instructions at the URLs in my post above. Things that proved to be very important.
(1) Your channels.conf has to be in the right format, which is different for Kaffeine and Xine! To use Xine you need a channels.conf in Xine format. (2) Your user has to be a member of group video. (3) udev must create the right device. It's all documented at the spots I pointed to in my post above. Good luck! gargamel |
Quote:
Quote:
Quote:
On the other hand, some diversification is necessary and healthy for the market, as a whole. It's good to have a choice. Distros have to be different from each other. But some standardisation is necessary, and in fact being worked on. I like to compare the situation with car driving: We don't want a situation where all people have to drive the same car. We want a choice, here. But we should be able to use the same streets and the same sorts of fuel with all these different cars. gargamel |
Thanks Gargamel,
I've got it working now. The channels.conf looked the right format, but didn't work. I downloaded the linuxtv stuff and used the scan utility to generate a new channels.conf. Result! Now I need to work out how to record stuff. Thanks for the pointers. Bob |
All times are GMT -5. The time now is 12:35 PM. |