Linux tips and tricks: differenze tra le versioni

Contenuto cancellato Contenuto aggiunto
Nimrod (discussione | contributi)
Riga 682:
Un chipset molto noto e diffuso che effettua questo tipo di digitalizzazione è lo Z36065 (che ha avuto anche molti derivati), prodotto da ZORAN: una scheda di acquisizione video equipaggiato con questo chipset funziona quasi certamente con Linux, e poiché non coinvolge la CPU del sistema su cui è installata, può essere usata anche su computer datati. Su questi, il problema può essere l'eccessiva lentezza dell'hard disk, ma soprattutto le sue dimensioni, perché la digitalizzazione di un'ora di video analogico, in condizioni normali, richiede circa 20G di disco liberi.
 
La home page di MJPEGtools è http://mjpeg.sourceforge.net/, ma pure importante è la pagina del progetto su SourceForge, http://sourceforge.net/projects/mjpeg/. Da quest'ultima è possibile scaricare i sorgenti e diversi pacchetti precompilati, ma la maggior parte delle distribuzioni include un apposito pacchetto nei repository standard.
...
 
=== Panoramica ===
 
Prima di vedere in dettaglio tutti i comandi della suite MJPEGtools, è utile mostrarli all'opera in una situazione magari non tanto realistica, ma semplice.
 
==== lavrec ====
 
''lavrec'' è il comando della suite MJPEGtools che interagisce con il chipset Zoran al fine di acquisire dalla sorgente analogica una sequenza di immagini JPEG organizzate in un unico file. Come già accennato, questo file non è un filmato compresso, ma solo un modo per tenere insieme un certo numero (di solito cospicuo) di immagini compresse. Il formato del file di output può essere AVI o QuickTime, e questo può indurre appunto a confonderlo con un filmato compresso: in realtà, questi due formati sono solo dei contenitori di oggetti multimediali, compressi o no.
 
''lavrec'' è normalmente in grado di impostare automaticamente molti parametri che altrimenti devono essere impostati tramite opportune opzioni. Ad esempio, è in grado di capire se il segnale analogico arriva da una sorgente video composita piuttosto che da una sorgente S-Video. Può capire se si tratta di un filmato in NTSC o PAL, e riconoscere le dimensioni del singolo frame (cioè della singola immagine).
 
Pertanto, la prima cosa da fare è senz'altro provare a eseguirlo con il minimo possibile di opzioni e vedere se funziona.:
 
# lavrec -d 1 filmato.avi
 
In questo caso, sarà creato un file in formato AVI, in cui ogni singola immagine JPEG avrà qualità del 50%, l'audio sarà prelevato dalla presa ''line-in'' della scheda audio, e la registrazione avrà termine quando non ci sarà più spazio su disco, oppure quando l'utente darà il segnale CTRL-C sulla console. L'opzione ''-d 1'' indica la cosidetta ''decimazione'' del filmato, un divisore che determina quale porzione di ciascuna immagine catturata sarà effettivamente utilizzata. Un divisore 1, ovviamente, significa che sarà utilizzata l'intera immagine. All'inizio, può essere prudente usare questo valore, anche se molto dispendioso in termini di memoria di massa.
 
Nei primi approcci all'uso di ''lavrec'', un'altra opzione utile è ''-t'', che richiede un numero intero come argomento: questo argomento rappresenta il numero di secondi di filmato da digitalizzare.
 
==== lav2yuv ====
 
Il file AVI appena ottenuto non è di solito visibile con un lettore DVD da banco. Molti player software, come MPlayer e Xine, sono in grado di mostrare questo genere di filmati, ed è anzi opportuno dare almeno un'occhiata al risultato prima di procedere, per avere un'idea della sua qualità.
 
Per poter comprimere il filmato secondo qualche codec, sia esso MPEG 1, 2 o altro, si deve prima convertire il filmato nel formato YUV, appunto con il comando ''lav2yuv'':
 
# lav2yuv filmato.avi > filmato.yuv
 
La sigla YUV indica una codifica per le immagini a colori introdotto agli albori della trasmissione televisiva a colori per consentire agli apparecchi in bianco e nero di mostrare comunque le trasmissioni. Per maggiori dettagli si veda l'articolo http://en.wikipedia.org/wiki/YUV. Qui ci limitiamo a dire che, a differenza della codifica RGB, che definisce la luminosità di ognuno dei tre colori fondamentali, la codifica YUV usa un canale per la luminosità (indicato proprio con ''Y'', che viene usato da un apparecchio in bianco e nero senza problemi) e due canali per la differenza di luminosità rispetto al canale Y. Di solito i due colori sono il rosso e il blu, ma ci sono altre possibilità, e per ciascun tipo specifico di codifica esistono formule per il passaggio da RGB a YUV e viceversa.
 
La particolare codifica YUV creata da ''lav2yuv'' è nota come '''Y'CbCr''': la ''C'' sta per ''crominanza'', mentre ''b'' ed ''r'', ovviamente, indicano i colori blu e rosso. È una codifica molto diffusa.
 
==== Filtri YUV ====
 
Il file filmato.yuv può essere rielaborato con vari comandi della suite, quasi tutti operanti come filtri. Ad esempio, ''yuvmedianfilter'', ''yuvdenoise'', ''yuvscaler'' e altri. Essi possono essere combinati fra loro con l'operatore '|' riconosciuto da tutte le shell.
 
==== mpeg2enc: da YUV a MPEG ====
 
Qualunque sequenza di filtri YUV sia stata applicata al file filmato.yuv, prima o poi si vorrà ricavarne un file compresso in MPEG. Questo è il compito del comando ''mpeg2enc'', che consente di ottenere file video per la produzione di VCD, SVCD e DVD. Da notare che non è direttamente gestita la codifica da YUV ai derivati di MPEG4, quali DivX e XVid.
 
==== L'audio ====
 
==Reti==