TerraTec Cinergy 400TV mobile
- Cardbus interface
- SAA7135HL chip
- ALPS TSZE1 tuner
- TV, Composite, and S-Video inputs
How to make it work
As of 220.127.116.11, the stable Linux kernel hasn't got the necessary code patched in. Although it will detect the card automatically, it won't work. If you use a developer kernel or some distro kernel, it might work.
As a quick test, insert your card and have a look at dmesg output. You should see all of the following:
- The card is detected as Terratec Cinergy 400 mobile (card=47).
- A tuner chip is found at 0xC0, tuner type is set to 12 (Alps TSBE5).
- TDA9885/6/7 is found at 0x84.
After inserting the card, lsmod should tell you that saa7134, tuner, and tda9887 modules have been loaded automatically.
If any of the above is missing, you'll have to update/hack/patch your kernel. The easiest way to update a 2.6.11 kernel is to use this patch from linux.bytesex.org.
The CVS version hosted at linuxtv.org also has all necessary patches. Just checkout the video4linux tree into an empty folder in your home directory, cd to that folder and type "make" and then (as root) "make install". Note that you work with development versions now, there's always a possibility that it won't work or doesn't even compile.
See this page for more details.
You should have the following parameters in your /etc/modprobe.conf:
options saa7134 oss=1 dsp_nr=1 mixer_nr=1 oss_rate=32000 i2c_debug=1 options tda9887 qss=1 port1=0 port2=0
This will create a dsp1 and mixer1 device for sound.
You should get a clean picture with any decent TV application, e.g. xawtv or tvtime. However, most applications are not able to get the sound right (If anybody knows why that is, your contribution is highly welcome...)
The best application to watch TV at the moment is mplayer. You could for example use a command like this (the following part is quoted from a posting by Uros Vampl on the v4l mailing list):
mplayer -vo xv -ao alsa \ -tv driver=v4l2: \ device=/dev/video0: \ width=720:height=576: \ normid=1:chanlist=europe-west: \ immediatemode=0:adevice=/dev/dsp1:amode=1: \ channels=<list_of_channels> \ -vf crop=690:552,pp=li -aspect 4/3 tv://
An explanation of all the options:
- driver=v4l2: Use the v4l2 driver.
- device=/dev/video0: The /dev device for the tuner.
- width=720 and height=576: The size of the video.
- normid=1: Set the TV norm. See the console output of MPlayer for a list of available norms.
- chanlist=europe-west: Set the frequency range where MPlayer will look for channels.
- immediatemode=0: Use adevice instead of a loop cable to the sound card.
- adevice=/dev/dsp1: The audio device created by passing oss=1 to the saa7134 module.
- amode=1: Use stereo sound. Other options: 0 - mono, 2 - language1, 3 - language2
- channels=<list>: The list of channels is in the form of <chan1>-<chan1_name>,<chan2>-<chan2_name>, etc. For example:
Video filters (-vf)
- crop=690:552: Crop away the garbage that is usually at the edges of a tv picture.
- pp=li: Linear interpolation deinterlacer. It has very little CPU usage, while producing an acceptable picture. Look at the MPlayer manpage for other deinterlacers. A very good deinterlacer for example is kerndeint.
- -aspect 4/3: Sets the correct aspect ratio of the picture.
The default keys for switching channels are 'h' and 'k'. If you don't specify a channels list, mplayer will switch through all channels in the frequency range specified by the chanlist option.
Sound does not work right away, you need to switch the mixer to line1, for example with umix:
umix -d /dev/mixer1 line1 R
While tvtime cannot handle sound, you can use sox. Just start tvtime and then sox, like this:
sox -t ossdsp -w -c2 -r 32000 /dev/sound/dsp1 -t ossdsp /dev/sound/dsp
Works with mtt and alevt. mtt works out of the box, for alevt a patch is needed, which is available here.
There is a detailed summary about this card here.