<?xml version="1.0" encoding="utf-8"?>
<!-- synced with r27815 -->
<chapter id="tv">
<title>TV</title>

<sect1 id="tv-input" xreflabel="TV input">
<title>Ingresso TV</title>

<para>
Questa sezione tratta di come abilitare la <emphasis role="bold">
visione/acquisizione da sintonizzatori TV compatibili V4L</emphasis>. Vedi la
pagina man per una descrizione delle opzioni e i controlli da tastiera per la TV.
</para>

<!-- ********** -->

<sect2 id="tv-compilation">
<title>Compilazione</title>

<procedure>
<step><para>
  Per prima cosa, devi ricompilare. <filename>./configure</filename> rileverà
  gli header del kernel per la roba v4l e l'esistenza delle voci
  <filename>/dev/video*</filename>. Se ciò esiste, il supporto TV verrà
  compilato (guarda l'emissione di <filename>./configure</filename>).
</para></step>
<step><para>
  Assicurati che il tuo sintonizzatore funzioni con altri software TV per
  Linux, per esempio <application>XawTV</application>.
</para></step>
</procedure>
</sect2>

<!-- ********** -->

<sect2 id="tv-tips">
<title>Consigli per l'uso</title>

<para>
La lista completa delle opzioni è disponibile nella pagina di manuale.
Qui ci sono giusto alcuni consigli:

<itemizedlist>
<listitem><para>
  Usa l'opzione <option>channels</option>. Un esempio:
  <screen>-tv channels=26-MTV1,23-TV2</screen>
  Spiegazione: con questa opzione, solo i canali 26 e 23 saranno
  utilizzabili. Ci sarà un simpatico testo OSD quando cambi canale, mostrante
  il nome del canale stesso. Gli spazi nel nome di canale devono essere
  sostituiti con il carattere "_".
</para></listitem>
<listitem><para>
  Scegli una sana dimensione dell'immagine. Le dimensioni dell'immagine
  risultante dovrebbero essere divisibili per 16.
</para></listitem>
<listitem>
  <para>
  Se catturi il video con una risoluzione verticale maggiore di metà della
  risoluzione completa (per es. 288 per PAL o 240 per NTSC), allora i
  'fotogrammi' che otterrai saranno reali coppie interlacciate di campi.
  A seconda di quello che vuoi fare con il video puoi lasciarle in questa forma,
  deinterlacciarle distruttivamente, oppure spezzare le coppie in campi singoli.
  </para>
  <para>
  In caso contrario otterrai un filmato che risulta distorto durante le scene
  ad alto movimento e il controllore della frequenza probabilmente sarà
  incapace di mantenere la frequenza specificata, visto che gli artefatti
  dell'interlacciamento producono un alto numero di dettagli e quindi occupano
  molta banda. Puoi abilitare il deinterlacciamento con
  <option>-vf pp=DEINT_TYPE</option>. Solitamente <option>pp=lb</option> fa un
  buon lavoro, ma può essere oggetto di preferenze personali.
  Vedi anche gli altri algoritmi di deinterlacciamento nel manuale e provali.
  </para>
</listitem>
<listitem><para>
  Taglia via le zone morte. Quando catturi video, le zone sui bordi spesso
  sono nere o contengono del disturbo. Questo consuma un sacco di banda non
  necessaria. Per essere precisi non sono le zone nere in sé, ma quel salto tra
  il nero e la parte chiara dell'immagine video che la sprecano, ma ciò non è
  importante per adesso. Prima di iniziare l'acquisizione, imposta gli
  argomenti dell'opzione <option>crop</option> affinché tutta la porcheria ai
  margini venga tagliata via. E ancora, non dimenticarti di mantenere 'sane'
  le dimensioni dell'immagine risultante.
</para></listitem>
<listitem><para>
  Controlla il carico della CPU. Non dovrebbe oltrepassare il 90% nella
  maggior parte del tempo. Se hai un grosso buffer di cattura,
  <application>MEncoder</application> può gestire un sovraccarico per pochi
  secondi, ma non di più. E' meglio disattivare screensaver 3D OpenGL e cose
  del genere.
</para></listitem>
<listitem><para>
  Non pacioccare con il clock di sistema. <application>MEncoder</application>
  usa il clock di sistema per gestire la sincronizzazione A/V. Se tu modifichi
  il clock di sistema (specialmente all'indietro nel tempo),
  <application>MEncoder</application> resta confuso e perderai dei
  fotogrammi. Questo è un fattore importante se sei collegato alla rete e usi
  un qualche software di sincronizzazione dell'ora come NTP. Dovresti
  disabilitare NTP durante il processo di acquisizione se vuoi che la cattura
  sia affidabile.
</para></listitem>
<listitem><para>
  Non modificare <option>outfmt</option> (il formato di uscita) a meno che tu
  non sappia cosa stia facendo oppure la tua scheda/il tuo driver non supportino
  davvero quello di default (spazio colore YV12). Nelle precedenti versioni di
  <application>MPlayer</application>/<application>MEncoder</application>
  era necessario indicare il formato di uscita. Questo problema dovrebbe
  esser stato risolto nelle versioni correnti e outfmt non è più richiesto,
  e quello di default va bene la maggior parte delle volte. Per esempio, se stai
  catturando in DivX con <systemitem class="library">libavcodec</systemitem> e
  specifichi <option>outfmt=RGB24</option> per aumentare la qualità delle
  immagini acquisite, l'immagine stessa verraà comunque convertita di nuovo
  in YV12, perciò l'unica cosa che otterrai sarà spreco di CPU.
</para></listitem>
<listitem><para>
  Ci sono vari modi per la cattura dell'audio. Puoi acquisire il suono sia
  usando la tua scheda audio attraverso una connessione via cavo esterna tra la
  scheda video e il line-in, sia usando l'ADC integrato nel chip bt878.
  Nell'ultimo caso, devi caricare il driver
  <emphasis role="bold">btaudio</emphasis>. Leggi il file
  <filename>linux/Documentation/sound/btaudio</filename> (nei sorgenti del
  kernel, non di <application>MPlayer</application>) per alcune istruzioni su
  come usare tale driver.
</para></listitem>
<listitem><para>
  Se <application>MEncoder</application> non può aprire il dispositivo audio,
  assicurati che sia veramente disponibile. Ci sono alcuni problemi con sound
  server come aRts (KDE) o ESD (GNOME). Se hai una scheda audio full duplex
  (quasi tutte le schede decenti lo supportano, ad oggi), e stai usando KDE,
  prova a controllare l'opzione "full duplex" nel menu preferenze del sound
  server.
</para></listitem>
</itemizedlist>
</para>
</sect2>

<!-- ********** -->

<sect2 id="tv-examples">
<title>Esempi</title>

<informalexample><para>
Uscita fasulla, verso AAlib :)
<screen>mplayer -tv driver=dummy:width=640:height=480 -vo aa tv://</screen>
</para></informalexample>

<informalexample><para>
Ingresso da V4L standard:
<screen>
mplayer -tv driver=v4l:width=640:height=480:outfmt=i420 -vc rawi420 -vo xv tv://
</screen>
</para></informalexample>

<informalexample><para>
Un esempio più complesso. Questo fa sì che <application>MEncoder</application>
catturi l'immagine PAL completa, tagli i margini, e deinterlacci l'immagine
usando un algoritmo di sfumatura lineare. L'audio viene compresso con una
frequenza costante di 64kbps, usando il codec LAME. Questa impostazione è
utilizzabile per acquisire film.
<screen>
mencoder -tv driver=v4l:width=768:height=576 -oac mp3lame -lameopts cbr:br=64\
    -ovc lavc -lavcopts vcodec=mpeg4:vbitrate=900 \
    -vf crop=720:544:24:16,pp=lb -o <replaceable>uscita.avi</replaceable> tv://
</screen>
</para></informalexample>

<informalexample><para>
Questo in più ridimensionerà l'immagine a 384x288 e comprimerà il video
con una frequenza di 350kbps in modalità ad alta qualità. L'opzione vqmax
rilascia il quantizzatore e permette al compressore video di raggiungere
davvero una così bassa frequenza anche a spese della qualità. Questo puà
essere usato per acquisire lunghe serie TV, dove la qualità video non è
così importante.
<screen>
mencoder -tv driver=v4l:width=768:height=576 \
    -ovc lavc -lavcopts vcodec=mpeg4:vbitrate=350:vhq:vqmax=31:keyint=300 \
    -oac mp3lame -lameopts cbr:br=48 -sws 1 -o <replaceable>uscita.avi</replaceable>\
    -vf crop=720:540:24:18,pp=lb,scale=384:288 tv://
</screen>
E' anche possibile specificare dimensioni immagine inferiori nell'opzione
<option>-tv</option> e omettere il ridimensionamento software ma questo
approccio usa la massima informazione disponibile ed è un po' più
resiliente ai disturbi. I chip bt8x8 possono calcolare la media dei pixel solo
sulla direzione orizzontale a causa di una limitazione hardware.
</para></informalexample>
</sect2>
</sect1>


<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->


<sect1 id="tv-teletext">
<title>Televideo (teletext)</title>

<para>
Il televideo è attualmente disponibile solo in
<application>MPlayer</application> per i driver v4l e v4l2.
</para>

<sect2 id="tv-teletext-implementation-notes">
<title>Note sull'implementazione</title>

<para>
<application>MPlayer</application> gestisce il testo normale, la grafica e i
collegamenti per la navigazione.
Sfortunatamente, le pagine colorate non sono ancora decodificate completamente -
tutte le pagine vengono mostrate in scala di grigi.
Vengono gestite anche le pagine dei sottotitoli (conosciute anche come
'Closed Captions').
</para>

<para>
<application>MPlayer</application> inizia a memorizzare nella cache tutte le
pagine di televideo sin dall'inizio della ricezione dall'ingresso TV, perciò
non devi attendere fino a quando si carica la pagina voluta.
</para>

<para>
Nota: usare il televideo con <option>-vo xv</option> genera strani colori.
</para>
</sect2>

<sect2 id="tv-teletext-usage">
<title>Usare il televideo</title>

<para>
Per abilitare la decodifica del televideo devi specificare il dispositivo VBI da
cui ottenere i dati televideo (solitamente <filename>/dev/vbi0</filename> per
Linux). Puoi fare ciò speificando <option>tdevice</option> nel tuo file di
configurazione, come mostrato qui sotto:
<screen>tv=tdevice=/dev/vbi0</screen>
</para>

<para>
Potresti voler indicare il codice di lingua del televideo per la tua zona.
Per elencare tutti i codici di zona disponibili usa
<screen>tv=tdevice=/dev/vbi0:tlang=<replaceable>-1</replaceable></screen>
Qui c'è un esempio per il russo:
<screen>tv=tdevice=/dev/vbi0:tlang=<replaceable>33</replaceable></screen>
</para>

<para>
</para>
</sect2>

<sect2 id="tv-teletext-hotkeys">
<title>Tasti comando per il televideo</title>

<informaltable frame="all">
<tgroup cols="2">
<thead>
<row>
  <entry>Tasto</entry>
  <entry>Descrizione</entry>
</row>
</thead>
<tbody>
<row>
  <entry>X</entry>
  <entry>Abilita/disabilita il televideo</entry>
</row>
<row>
  <entry>C</entry>
  <entry>Passa attraverso le modalità di visione del televideo (opaco,
  trasparente, opaco invertito, trasparente invertito</entry>
</row>
<row>
  <entry>Sinistra/Destra</entry>
  <entry>Va alla pagina precedente/successiva del televideo</entry>
</row>
<row>
  <entry>PaginaSu/PaginaGiù</entry>
  <entry>Va alla sottopagina successiva/precedente del televideo</entry>
</row>
<row>
  <entry>cifre</entry>
  <entry>Indica il numero della pagina del televideo a cui andare</entry>
</row>
</tbody>
</tgroup>
</informaltable>
</sect2>
</sect1>

</chapter>
