Re: tv-tuner на базе saa7134
On Sat, 20 Nov 2004 21:04:45 +0300
Ruslan N. Gogunsci wrote:
> Hello debian-russian,
>
> Есть тв-тюнер Behold TV 403 FM на базе saa7134 и есть Debian Sarge
> с ядром 2.6.8-1-k7(из дистрибутива). Пытаюсь их подружить, пока что
> удалось только заставить tvtime находить все каналы и проигрыват
> звук, но видео не показыват( только синий экран, при этом со звуком
> все ок). На сайте производителя тюнера говориться, что они сами не
> пишут драйвера, а используют родные от филипса. Не подскажите на
> основание чего надо выбирать параметры card и tuner? Или придется
> методом научного тыка перебирать все возмолжные комбинации?
> tvtime пробоал как из sarge так и собранный из unstable посредством
> dpkg-packagebuild.
> Текущие насторойки: card=1, tuner=5
У меня Genius какой-то-там на аналогичном чипе. Работает как
LifeView FlyVIDEO3000 (card=2, tuner=5) При этом и card и tuner
ловится автоматом.
...
В свое время, когда пытался завести Pinnacle PCTV Pro (который построен
на bttv и по идее должен был поддерживаться v4l), которая оказалась
новой ревизии и вч-блок был новый (который не поддерживается v4l). Я
написал наколенный скрипт, который перебирал варианты карта+тюнер+pll в
заданном диапазоне. Потом переписал для saa7134. Скрипт во вложении.
IMHO, лучше запускать чистые X-ы с одним xterm'ом и уж в нем запускать
скан. Использует sudo.
#!/bin/bash
# ÓËÒÉÐÔ ÄÌÑ ÐÏÓÌÅÄÏ×ÁÔÅÌØÎÏÊ ÐÒÏ×ÅÒËÉ ×ÓÅÈ ÔÀÎÅÒÏ× ÎÁ saa7134
#× ÓÌÕÞÁÅ, ÅÓÌÉ ÚÁÈÏÞÅÔØÓÑ ÐÅÒÅÂÉÒÁÔØ bttv ÎÕÖÎÏ ÐÅÒÅÐÉÓÁÔØ ÆÕÎËÃÉÉ rmkmod É inskmod.
#ÎÅÂÏÌØÛÏÊ ËÏÍÍÅÎÔÁÒÉÊ:
#1) ðÅÒÅÂÏÒ ÐÏ ÔÉÐÁÍ tv-ËÁÒÔ ×ÅÄÅÔÓÑ ÐÏ ÓÐÉÓËÕ, ÕËÚÁÎÎÏÍÕ × ÐÅÒÅÍÅÎÎÏÊ CARDLIST
#2) ðÅÒÅÂÏÒ ÐÏ ÔÉÐÁÍ ÷þ-ÂÌÏËÁ ×ÅÄÅÔÓÑ ÏÔ 0 ÄÏ MAXTUNER
#3) ðÅÒÅÂÏÒ ÐÏ ÔÉÐÁÍ PLL ×ÅÄÅÔÓÑ ÐÏ ÐÅÒÅÍÅÎÎÏÊ PLLLIST
#3) äÌÑ ÎÁÄÅÖÎÏÓÔÉ, LOGN ÐÏÓÌÅÄÎÉÈ ÓÔÒÏË ÉÚ ÌÏÇÁ ÚÁÐÏÍÉÎÁÅÔÓÑ.
#4) äÌÑ ÏÐÒÅÄÅÌÅÎÉÑ ÐÏÄÏÛÅÌ\ÎÅ ÐÏÄÏÛÅÌ ÉÓÐÏÌØÚÕÅÔÓÑ tvscan
CARD=0
CARDLIST="0 1 2"
PLLLIST="0 1 2"
TUNER=0
MAXTUNER=42
LOGN=26
TVSCAN=`which tvscan`
rmkmod ()
{
sudo rmmod saa7134
sudo rmmod tuner
sudo rmmod video_buf
sudo rmmod v4l2_common
sudo rmmod v4l1_compat
sudo rmmod videodev
sudo rmmod ir_common
}
inskmod ()
{
sudo modprobe saa7134 card=$1 tuner=$2 pll=$3
}
if [ -x $SCANTV ]
then
echo "Start"
else
echo "Can't find scantv"
exit 1
fi
for CARD in $CARDLIST # ÃÉËÌ ÐÏ ÔÉÐÁÍ ËÁÒÔ
do
echo -n "!"
TUNER=0
while [ $TUNER -lt $MAXTUNER ] # ÃÉËÌ ÐÏ ÔÀÎÅÒÁÍ
do
echo -n ":"
for PLL in $PLLLIST
do
rmkmod
inskmod $CARD $TUNER $PLL
tail -n "$LOGN" /var/log/messages >"$CARD-$TUNER-$PLL.log"
$SCANTV -n SECAM -f europe-east - 1>/dev/null 2>"$CARD-$TUNER-$PLL.scan"
N=`cat "$CARD-$TUNER-$PLL.scan" | grep -i "channel" | awk '{print $2}'`
if [ $N -bg 0 ]
then
echo
echo "Catched: card=$CARD, tuner=$TUNER, pll=$PLL matches: $N"
fi
echo -n "."
done
TUNER=$(($TUNER + 1 ))
done
echo
done
echo "Exit"
rmkmod
Reply to: