Repository 32bit  Forum
Repository 64bit  Wiki

Configurare una scheda tv

Da Slacky.eu.

Scheda TV

Configurazione

Per configurare la scheda TV occorre scoprire come il sistema la riconosce.
Linux, grazie al driver bttv, riconosce un congruo numero di schede TV pci.
Oltre al tipo di scheda è importante conoscere anche il tuner e se dispone di una radio.
Ovviamente si supppone che della propria scheda si conosca la marca, il modello, il tipo di
sintonizzazione e se incorpora una scheda radio. Per testare il funzionamento come prima cosa
occorre rimuovere, qualora siano già caricati, i seguenti moduli:

  • bt878
  • bttv
  • video_buf
  • firmware_class
  • i2c_algo_bit
  • v4l2_common
  • btcx_risc
  • videodev

Per farlo si può utilizzare il comando:

root@darkstar:~$ lsmod
Module             Size Used by
ohci_hcd          34308 0
parport_pc        22852 0
parport           21056 1 parport_pc
floppy            58692 0
pcspkr             3424 0
shpchp            98660 0
snd_intel8x0     30304 0
snd_ac97_codec    93820 1 snd_intel8x0
snd_ac97_bus       2048 1 snd_ac97_codec
nvidia          4083248 12
tuner             38952 0
bttv             156240 0
video_buf         17924 1 bttv
firmware_class     8064 1 bttv
i2c_algo_bit       8968 1 bttv
v4l2_common        4864 1 bttv
btcx_risc          4104 1 bttv
tveeprom          12560 1 bttv
i2c_core          17936 4 tuner,bttv,i2c_algo_bit,tveeprom
videodev           7424 1 bttv
root@darkstar:~$ rmmod bttv video_buf firmware_class i2c_algo_bit v4l2_common btcx_risc videodev
root@darkstar:~$ rmmod tuner tveeprom i2c_core
root@darkstar:~$ lsmod
Module             Size Used by
ohci_hcd          34308 0
parport_pc        22852 0
parport           21056 1 parport_pc
floppy            58692 0
pcspkr             3424 0
shpchp            98660 0
snd_intel8x0     30304 0
snd_ac97_codec    93820 1 snd_intel8x0
snd_ac97_bus       2048 1 snd_ac97_codec
nvidia          4083248 12

Scaricare i moduli del kernel è importante per poterli caricare con i parametri corretti.
Attenzione l'ordine con cui di tenta di scaricarli è importante a causa delle dipendenze che li
legano (l'esempio proposto è ovviamente corretto).
Per verificare lo stato dei driver e le loro dipendenze si può usare il comando lsmod (sempre da
root).
Occorre ricaricare i driver con il comando:

root@darkstar:~# lsmod bttv card=<idcard> tuner=<idtuner> radio=<idradio>

I valori da utilizzare per i parametri idcard, idtuner possono essere rilevati dai file:

/usr/src/linux/Documentation/video4linux/CARDLIST.bttv
/usr/src/linux/Documentation/video4linux/CARDLIST.tuner

idradio può assumere i valori 1 o 0 qualora vi sia o meno il supporto per la radio. Per la scheda tv
kworld che utilizziamo come esempio i valori rilevabili sono idcard=78, idtuner=5 e idradio=1.

root@darkstar:~# modprobe bttv card=78 tuner=5 radio=1

Per completare i test con un utente diverso da root è sufficiente concedere i permessi di lettura e
scrittura a other sul device /dev/video0.

root@darkstar:~# ls -l /dev/video0
lrwxrwxrwx 1 root root 10 2005-04-12 20:33 /dev/video0 -> v4l/video0
root@darkstar:~# ls -l /dev/v4l/video0
crw-rw---- 1 root video 81, 0 2005-04-12 20:33 /dev/v4l/video0
root@darkstar:~# su -c "chmod 666 /dev/v4l/video0"
Password:
root@darkstar:~# ls -l /dev/v4l/video0
crw-rw-rw- 1 root video 81, 0 2005-04-12 20:33 /dev/v4l/video0

A questo punto si può provare ad usare la scheda tv con un programma come kdetv.
[1] o xawtv [2].

Salvare la configurazione

Vediamo ora come rendere permanenti le modifiche.
Come prima cosa occorre impostare i parametri da passare al kernel durante il caricamento dei
moduli bttv l'avvio del sistema. Per far ciò si può editare il file /etc/modprobe.conf aggiungendovi il
seguente blocco:

# i2c
alias char-major-89    i2c-dev
option i2c-core        i2c_debug=1
option i2c-algo-bit    bit_test=1

# bttv
alias char-major-81    videodev
alias char-major-81-0  bttv
option bttv            card=78 radio=1
optino tuner           debug=1

Oppure1 editare il file /etc/rc.d/rc.modules ed aggiungervi la seguente riga:

root@darkstar:~# vi /etc/rc.d/rc.modules
...
# Effettuo il probe della scheda tv con i parametri corretti
/sbin/modprobe bttv card=78 tuner=5 radio=1

L'ultima cosa da fare è rendere permanenti i diritti sul file /dev/v4l/video0. Ciò si ottiene agendo sui
file di configurazione dell'udev. In dettaglio modificano i permessi sui device specificati in
/etc/udev/permissions.d/udev.permissions.

root@darkstar:~# vi /etc/udev/permissions.d/udev.permissions
...
# video4linux devices
AC20050416 Modifico i permessi per consentire all'utente ale di accedere ai device
video*:root:video:0666
radio*:root:video:0666
winradio*:root:video:0666
vtx*:root:video:0666
vbi*:root:video:0666
video/*:root:video:0666
vttuner:root:video:0666
v4l/*:root:video:0666

1 In slackware 10.2 questo approccio non dava problemi mentre il precedente si.Con le versioni precedenti era
preferibile il primo approccio.



Autore: Alessandro Celli

Strumenti personali
Namespace

Varianti