(Grazie a William Burrow per questa sezione.)
Se non ve la sentite di aprire il vostro computer, assicuratevi di aver letto questo HOWTO per intero e di aver preso nota delle caratteristiche tecniche della vostra scheda, come il tipo di sintonizzatore ed il modello dei chip. Successivamente potrete affidarvi ad una persona in grado di installare la vostra scheda per voi.
Altrimenti aprite il vostro computer ed installate la scheda in uno slot libero. Possibilmente lo slot dovrebbe supportare il PCI bus transfer ed il PCI bus mastering. Consultate il manuale della scheda madre per ulteriori informazioni.
Per quanto riguarda il suono, esistono diversi modi per collegare la vostra scheda di acquisizione video alla vostra scheda sonora. Un metodo consiste nel collegare internamente i due dispositivi attraverso il cavetto audio del CD-ROM, che dovrà essere inserito nell'ingresso della scheda video, la quale dovrà essere a sua volta collegata alla scheda sonora o ad un sintonizzatore. Un altro modo consiste nel connettere esternamente i due dispositivi, utilizzando un cavetto dotato di due jack da 1/8 di pollice. Questo cavo andrà inserito nell'uscita esterna della vostra scheda TV e nell'ingresso esterno della vostra scheda audio. Se non vi interessano questi tipi di collegamento potrete sempre collegare delle casse all'uscita della vostra scheda TV. Alcune schede basate su chip bt878 non sono dotate di connettori audio, in quanto utilizzano il bus PCI per trasferire i dati audio. Attualmente non vi sono supporti per questa tecnologia.
Per verificare se la scheda funziona correttamente sarà necessaria una sorgente video. Molte schede supportano ingressi Composite Video, S-Video e RF. Normalmente esiste un connettore per ogni tipo di ingresso.
Il vostro kernel deve essere configurato correttamente per supportare la vostra scheda. Molte distribuzioni recenti sono già dotate di tutti i moduli necessari precompilati, così se trovate i moduli videodev.o, bttv.o e tuner.o sotto /lib/modules/2.x.x/misc, dovreste essere pronti per provare.
Se non li trovate, dovrete ricompilare il kernel con
CONFIG_VIDEO_DEV
e
CONFIG_VIDEO_BT848
abilitati, meglio se come moduli. Se avete dubbi per quanto riguarda la compilazione del kernel date un'occhiata al Linux Kernel HOWTO ( http://www.linuxdoc.org/HOWTO/Kernel-HOWTO.html).
Se intendete utilizzare i pacchetti della serie 0.6.x, dovrete prima scaricare il file in formato tar da Internet. Per scomprimerlo eseguite il seguente comando
tar -xvzf bttv-0.6.x.tar.gz
poi entrate nella directory appena creata. Se non siete root dovrete lanciare 'su' poi potrete digitare
make
nella directory principale per creare i driver. Dopo aver compilato i moduli potrete lanciare
make install
per installarli. In fine, digitate
/sbin/depmod -a
per aggiornare le dipendenze dei moduli.
/dev
La prossima cosa da verificare è l'esistenza dei file di dispositivo sotto /dev. Digitate ls /dev/video*; ls /dev/radio* per vedere se i file esistano già. Se non è così dovrete crearli. Tutti i file di dispositivo di cui abbiamo bisogno hanno 81 come major number, mentre il minor number dipende dal dispositivo specifico (video, radio, ecc.). Per informazioni relative alla programmazione consultate le Video4Linux API ( http://roadrunner.swansea.uk.linux.org/v4lapi.shtml).
Nella directory dei driver del pacchetto bttv esiste uno script chiamato MAKEDEV che creerà i dispositivi automaticamente. Se possedete solo una scheda TV potrete creare i dispositivi anche a mano. Entrate come root e digitate:
mknod /dev/video0 c 81 0
chmod 666 /dev/video0
ln -s /dev/video0 /dev/video
mknod /dev/radio0 c 81 64
chmod 666 /dev/radio0
ln -s /dev/radio0 /dev/radio
Esistono anche dispositivi videotext e VBI che hanno bisogno di un device file (attualmente sono ancora molto pochi). Digitate:
mknod /dev/vtx0 c 81 192
chmod 666 /dev/vtx0
ln -s /dev/vtx0 /dev/vtx
mknod /dev/vbi0 c 81 224
chmod 666 /dev/vbi0
ln -s /dev/vbi0 /dev/vbi
Il driver bttv offre molti moduli diversi, ognuno dei quali è dotato di molte opzioni differenti. Per far funzionare correttamente il driver sarà quindi necessario provare i moduli con le relative opzioni finché tutto non funzionerà a dovere. Siccome esiste una remota possibilità di mandare in crash il vostro sistema vi consiglio di digitare
sync; sleep 1; sync
per scaricare i buffer sul disco prima di procedere. Successivamente potrete lanciare insmod come root per provare a caricare i moduli. I primi due moduli solitamente non danno problemi, in quanto non necessitano di opzioni:
insmod videodev
insmod i2c
Ora siete pronti per caricare il driver bttv:
modprobe bttv
Di default, il modulo bttv tenterà di rilevare il modello della vostra scheda. Date un'occhiata a /var/log/messages per vedere se è stata rilevata. Se il modulo non ha rilevato automaticamente la vostra scheda, potrete aggiungere l'opzione card=n all'ultimo comando, dove n sta per il tipo di scheda elencato di seguito (i tipi dal 0 al 19 sono quelli supportati dai driver del kernel, quelli dal 20 al 27 appartengono invece al pacchetto bttv-0.6.4h). Se la vostra scheda è dotata di funzionalità radio potrete aggiungere l'opzione radio=1 per attivarle.
card=n tipo di scheda 0: Auto-Detect 1: Miro 2: Hauppauge (old bt848 boards) 3: STB 4: Intel 5: Diamond 6: AVerMedia 7: MATRIX Vision MV-Delta 8: FlyVideo 9: TurboTV 10: Hauppauge (new bt878 boards) 11: MIRO PCTV pro 12: Terratec/Vobis TV-Boostar 13: Newer Hauppauge WinCam (bt878) 14: MAXI TV Video PCI2 15: Terratec TerraTV+ 16: Aimslab VHX 17: PXC200 18: AVermedia98 19: FlyVideo98 (newer FlyVideo cards) 20: Zoltrix TV-Max 21: iProTV 22: ADS Technologies Channel Surfer TV 23: Pixelview PlayTV (bt878) 24: Leadtek WinView 601 25: AVEC Intercapture 26: LifeView FlyKit w/o Tuner 27: Intel Create and Share PCI
Poi caricate il modulo del sintonizzatore, con
modprobe tuner type=n
Probabilmente dovrete guardare direttamente sulla vostra scheda TV per scoprire il tipo di sintonizzatore di cui è dotata. Alcune schede (Miro e Hauppauge) permettono il rilevamento automatico del sintonizzatore, ma a volte sarà necessario specificarlo ugualmente. Il sintonizzatore dovrebbe riportare la marca, inoltre potrete osservare sui cristalli (piccoli cilindretti di alluminio) sei si tratta di un sintonizzatore PAL o NTSC. Per i PAL i cristalli sono marchiati 28.xxxMHz (dove xxx sono 3 numeri), gli NTSC invece riportano 35.xxxMHz. Una volta identificato il sintonizzatore potrete scegliere il valore appropriato dalla seguente tabella (i tipi 8 e 9 sono inclusi solo nel pacchetto bttv-0.6.4h):
type=n Tipi di sintonizzatore: 0: Temic PAL tuner 1: Philips PAL_I tuner 2: Philips NTSC tuner 3: Philips SECAM tuner 4: no tuner 5: Philips PAL tuner 6: Temic NTSC tuner 7: Temic PAL tuner 8: Alps TSBH1 NTSC tuner 9: Alps TSBE1 PAL tuner
Infine, inserite i moduli per il sonoro. Probabilmente dovrete verificare nuovamente il tipo di chip sonoro della vostra scheda. Ricordate che i driver per TEA6300, TDA8425, TDA9855 e DPL3518 sono inclusi solo nel pacchetto 0.6.4h e mancano dalla distribuzione del kernel versione 2.2.14.
modprobe msp3400 o tea3600 o tda8425 o tda9855 o dpl3518 (guardate l'appendice per i dettagli)
Finalmente potrete lanciare la vostra applicazione preferita per vedere se tutto funziona correttamente. Se non riuscite a cambiare canale probabilmente non avete caricato il modulo del sintonizzatore (tuner). Se invece non sentite alcun suono probabilmente ci sono dei problemi con il modulo audio, oppure avete il canale audio settato su mute.
Una volta che avete imparato quali moduli e quali opzioni vi servono, potrete automatizzare il loro caricamento editando il file /etc/conf.modules. Così facendo i moduli verranno caricati automaticamente ogniqualvolta un programma ne abbia bisogno. La mia configurazione è la seguente:
# TV alias char-major-81 bttv pre-install bttv modprobe -k tuner; modprobe -k msp3400 options bttv radio=1 card=3 options tuner type=2
Assicuratevi di modificare questa configurazione in base ai moduli e alle opzioni della vostra scheda (ricordate anche di rilanciare /sbin/depmod -a per aggiornare le dipendenze dei moduli).