Una Guida alla multimedialit su linux

Transcript

Una Guida alla multimedialit su linux
Multimedialità con GNU/Linux – Maurizio Antonelli (http://www.maury.it)
Con questo intervento farò una rapida carrellata dei programmi dedicati a diversi utilizzi
multimediali di Linux che conosco. Il vasto numero di software esistenti non mi permette di
elencarli tutti, quindi quelli presentati sono solo quelli che mi sembrano di più facile utilizzo in base
alla mia esperienza personale. Naturalmente la scelta è molto più vasta e ne esistono per tutti i gusti.
Tutti i programmi nominati in questa conferenza sono rigorosamente Open­Source.
Some rights reserved: http://www.maury.it#licenza
1
Multimedialità con GNU/Linux – Maurizio Antonelli (http://www.maury.it)
Purtroppo GNU/Linux arranca a diffondersi nell'utilizzo casalingo principalmente per due motivi:
l'errata credenza che sia difficile da utilizzare e l'errata credenza che non esistano programmi validi.
Queste due cose sono assolutamente errate. Alcune distribuzioni sono molto User­Friendly, di facile
utilizzo per l'utente medio (esempio Mandriva). Il numero di programmi Open­Source e Free­
Software è tutt'altro che basso.
Some rights reserved: http://www.maury.it#licenza
2
Multimedialità con GNU/Linux – Maurizio Antonelli (http://www.maury.it)
Cercare di diffondere GNU/Linux nell'utenza privata, a mio parere, ha una notevole importanza.
Bisogna far capire alla società che i sistemi operativi proprietari non sono l'unica realtà e soprattutto
non sono un tutt'uno col PC: molti utenti acquistano i PC pensando che il Windows pre­installato
sia parte integrante del computer. Non è vero. Esistono delle validissime alternative.
È importante quindi formare la mente delle persone all'utilizzo di software meno diffuso. Linux,
grazie all'X­Windows e ai gestori di finestre non è di difficile utilizzo, ma rimane alla portata di
tutti.
Facendo uscire le persone dal falso standard che gli viene presentato, otterremo una diffusione di
software libero anche nell'ambiente lavorativo. Molte ditte, infatti, preferiscono l'utilizzo costoso di
sistemi Windows poiché gran parte del personale è già abituato ad utilizzarlo in casa e quindi non si
troverà completamente spaesato nel posto di lavoro. L'utilizzo di Linux comporterebbe, invece,
l'organizzazione di corsi, spesso anche costosi. Ecco quindi l'utilità di una diffusione di Linux negli
ambienti casalinghi.
Inoltre il monopolio privato è sempre un brutto affare: mi sembra di ricordare, infatti, che il
Windows 98 fu venduto a prezzi molto più alti rispetto a quelli che risultarono dalle ricerche di
mercato fatte prima della sua uscita. Questo fu possibile perché le persone non sapevano di avere
alternative. Anche a prezzi alti, il Windows avrebbe avuto un ottimo target di mercato; un semplice
caso di totale mancanza di concorrenza.
Some rights reserved: http://www.maury.it#licenza
3
Multimedialità con GNU/Linux – Maurizio Antonelli (http://www.maury.it)
Con l'avvento dei nuovi hardware, con il notevole aumento della potenza di calcolo dei processori e
con l'avvento delle moderne schede video e schede audio, negli ultimi anni è stato possibile usare il
PC per la visualizzazione veloce di immagini e per la riproduzione di suoni. Segue quindi che un
normale PC oggi può essere utilizzato senza problemi per riprodurre musica, per visualizzare
immagini e visto che non si hanno particolari problemi alla visualizzazione veloce (25 frame al
secondo per il nostro sistema PAL), si possono riprodurre tranquillamente anche filmati.
Some rights reserved: http://www.maury.it#licenza
4
Multimedialità con GNU/Linux – Maurizio Antonelli (http://www.maury.it)
Per affrontare in maniera ordinata il campo della multimedialità mi affido alla divisione nelle tre
aree con cui è diviso il menù del KDE in dotazione sulla mia Mandriva 2006: Grafica e Foto, Suono
e Musica ed infine i Video.
Some rights reserved: http://www.maury.it#licenza
5
Multimedialità con GNU/Linux – Maurizio Antonelli (http://www.maury.it)
Iniziamo con la visualizzazione ed il ritocco di foto. Questa parte ha notevola importanza dato il
veloce diffondersi di macchine fotografiche digitali.
Kuickshow e Kview, come indica chiaramente il nome che inizia per “K”, vengono forniti insieme
al gestore di finestre KDE, per l'esattezza nel pacchetto “KDE­Graphics”.
Some rights reserved: http://www.maury.it#licenza
6
Multimedialità con GNU/Linux – Maurizio Antonelli (http://www.maury.it)
Il Kuickshow è quello che di gran lunga preferisco io. È un programma molto leggero.
Naturalmente, data la semplicità della sua funzione, cioè visualizzare immagini sul monitor, di
programmi per lo stesso scopo ce n'è una vasta scelta. Kuickshow è notevole per la sua semplicità di
utilizzo. Da la possibilità di visualizzare una foto in full­screen, senza il disturbo della grafica del
gestore di finestre; lo schermo è riempito interamente dalla foto visualizzata. Si scorrono le foto di
una directory (cartella) semplicemente coi i tasti PAG­SU e PAG­GIÙ ed in più ha un'utile funzione
di scorrimento automatico a tempo regolabile. Posso configurare Kuickshow, ad esempio, a
cambiarmi foto ogni 6 o 7 secondi, stile vecchi proietori di diapositive. È possibile così organizzare,
con l'ausilio di un proiettore LCD portatile, che oggi hanno costi sempre più contenuti, una serata
tra amici con proiezione di foto, un ritrovo aziendale con proiezioni varie o qualsiasi altro allegro
utilizzo.
Some rights reserved: http://www.maury.it#licenza
7
Multimedialità con GNU/Linux – Maurizio Antonelli (http://www.maury.it)
The Gimp è il programma open­source per eccellenza riguardo al fotoritocco. È ricchissimo di filtri
e plug­in per tantissime funzioni diverse. Si presenta con un'interfaccia grafica diversa rispetto a
programmi commerciali più conosciuti. La finestra principale del programma è piccola e presenta
solo le funzioni principali (scelta dei pennelli, scelta del colore, ecc.)
Some rights reserved: http://www.maury.it#licenza
8
Multimedialità con GNU/Linux – Maurizio Antonelli (http://www.maury.it)
Altre funzioni le si troveranno poi su altre finestre, ognuna per ogni categoria di strumenti. Ogni
immagine che viene aperta per essere elaborata sarà visualizzata su una finestra dedicata e le varie
funzioni potranno essere richiamate dal menù a cascata che si aprirà clickando col tasto destro del
mouse sulla foto in esame. Nonostante l'apertura di molteplici finestre, l'utilizzo è molto semplice e
comodo.
Some rights reserved: http://www.maury.it#licenza
9
Multimedialità con GNU/Linux – Maurizio Antonelli (http://www.maury.it)
Anche utilizzare gli scanner con Linux non è più un problema come 2 o 3 anni fa. Il programma per
eccellenza per gestire le scansioni è Sane, ma qui segnalo due front­end grafici di facilissimo
utilizzo.
Il primo, X­Sane, è un programmino leggero e comodissimo. L'utilizzo è molto semplice: si
scansiona un'anteprima a bassa definizione, si regolano i vari livelli di luminosità, colore, ecc. ed,
infine, si procede alla scansione vera e propria alla risoluzione desiderata.
Il secondo, Kooka, è di altrettanto facile utilizzo ed è compreso nel pacchetto KDE­Graphics del
gestore di finestre KDE.
Una funzione molto comoda e sempre più utilizzata è quella degli OCR, dei riconoscitori di testo da
immagini digitali. Se io scansiono un documento scritto, poi me lo ritroverò come immagine, cioè
come un insieme di pixel colorati. Visivamente so cosa è scritto in quel documento, ma a livello
pratico non ne ho il testo disponibile per eventuali correzioni o modifiche. Con un OCR posso far
analizzare il documento grafico dal PC e farlo convertire in un file di testo adattabile poi a tutti gli
utilizzi necessari.
Some rights reserved: http://www.maury.it#licenza
10
Multimedialità con GNU/Linux – Maurizio Antonelli (http://www.maury.it)
L'OCR che utilizzo è GOCR. Si utilizza da shell, da ambiente testuale, ma non per questo è
complicato. Prende in input delle immagini in formato PNM o PNG. Naturalmente la definizione
dell'immagine più è alta e più sarà migliore e con meno errori la conversione. La sintassi è:
gocr nome_immagine.pnm > file_testo.txt
Se non si aggiunge la parte dell'output “> file_testo.txt”, avrei il risultato visualizzato sullo
standard output, cioè sullo schermo. Invece, così, mi ritrovo il testo rilevato su un file di testo che
poi potrò adattare a qualsiasi esigenza. Naturalmente bisognerà effettuare una revisione, dato che gli
errori sono ancora molti. Gli OCR, infatti, tendono ancora a fare errori di confusione tra “Q” ed “O”
o tra “1” (uno come cifra) ed “I” e altri casi simili. Come dicevo sopra, maggiore è la risoluzione
del file di partenza, maggiore sarà la qualità del risultato.
Con Ksnapshot si può prelevare come immagine il contenuto dello schermo o anche una singola
finestra aperta. Questo programmino fa sempre parte del pacchetto KDE­Graphics. Dato che è
dedicato esclusivamente a questa funzione è molto leggero e di utilizzo facilissimo e molto
intuitivo.
Some rights reserved: http://www.maury.it#licenza
11
Multimedialità con GNU/Linux – Maurizio Antonelli (http://www.maury.it)
Ed ora passiamo alla seconda area: suoni e musica. Quest'area la suddividerò in due sotto­aree: la
prima per i programmi di riproduzione, la seconda per i programmi di codifica.
Some rights reserved: http://www.maury.it#licenza
12
Multimedialità con GNU/Linux – Maurizio Antonelli (http://www.maury.it)
ARTSPlay ed ESDPlay sono dei programmini eseguibili da shell. Eseguono dei file audio non
compressi ed in formato WAV. Sono dati in dotazione coi rispettivi driver audio dei gestori di
finestre KDE (ARTs) e Gnome (Esound). Poiché possono riprodurre solo file audio non compressi,
il loro utilizzo è molto limitato. Diciamo che possono essere utili per testare il funzionamento della
scheda audio.
Altri programmi avviabili da shell, ma più evoluti, sono MPG123, MPG321 e OGG123. Questi tre
programmini riproducono dei file compressi in Mpeg Layer­3 (i primi due) ed in OGG­Vorbis (il
terzo). Per il loro utilizzo si possono usare per i file di input i caratteri jolly “*” e “?” per riprodurre
più file e con l'opzione “-z” riproducono in modalità casuale la lista dei file.
Some rights reserved: http://www.maury.it#licenza
13
Multimedialità con GNU/Linux – Maurizio Antonelli (http://www.maury.it)
E passiamo ad XMMS. Questo programma è graficamente molto accattivante. Compare sul monitor
un frontalino da lettore CD da tavolo con i tasti dei comandi standard e riproduce diversi tipi di file
audio, sia compressi, sia non. È di utilizzo facilissimo.
Some rights reserved: http://www.maury.it#licenza
14
Multimedialità con GNU/Linux – Maurizio Antonelli (http://www.maury.it)
KsCD è un lettore per CD­Audio che viene dato nel pacchetto KDE­Multimedia di KDE. Per
utilizzarlo c'è bisogno di collegare il lettore CD­ROM direttamente alla scheda audio, utilizzando
l'apposito cavetto. Questo perché il flusso di dati che non è compresso, va direttamente alla scheda
che riproduce il suono. Questo flusso, non passando per la CPU e non occupando risorse di calcolo
in quanto non deve essere decompresso, rende KsCD un programmino che ha un'occupazione di
risorse del calcolatore praticamente nulla.
Some rights reserved: http://www.maury.it#licenza
15
Multimedialità con GNU/Linux – Maurizio Antonelli (http://www.maury.it)
Passiamo alla codifica. Lame e OGGenc permettono di codificare un file non compresso .WAV in
un file compresso Mpeg Layer­3 (LAME) e in un file OGG­Vorbis (OGGenc). La sintassi è molto
semplice:
oggenc file_wav -b 128 -o file_ogg
L'opzione “­b” permette di specificare il bitrate (e quindi la qualità); naturalmente, maggiore sarà la
qualità richiesta, più grande sarà il file risultante.
Poi c'è il Grip. È un front­end grafico dei due programmini sopra citati che, inoltre, appoggiandosi a
CD­Paranoia, un programma per l'estrazione di tracce audio da CD, permette di prelevare il flusso
audio da codificare direttamente da un CD­audio. È utile per convertire CD musicali in file Mpeg
Layer­3 o OGG­Vorbis.
Some rights reserved: http://www.maury.it#licenza
16
Multimedialità con GNU/Linux – Maurizio Antonelli (http://www.maury.it)
Piccola osservazione su Lame: il formato Mpeg Layer­3, meglio conosciuto come MP3, è coperto
da alcuni brevetti che permettono di produrre un lettore, ma non un codificatore (se non richiedendo
i relativi diritti). Nonostante il programma sia open­source, molte distribuzioni preferiscono non
introdurlo. Il Grip, infatti, di default utilizza l'OGGenc.
Some rights reserved: http://www.maury.it#licenza
17
Multimedialità con GNU/Linux – Maurizio Antonelli (http://www.maury.it)
Passiamo all'ultima delle tre aree: il video.
La riproduzione di suoni e musica, combinata con la riproduzione veloce di immagini (tipo 25
immagini al secondo come richiede il sistema PAL) ci permette la riproduzione sul PC di filmati
digitali.
Some rights reserved: http://www.maury.it#licenza
18
Multimedialità con GNU/Linux – Maurizio Antonelli (http://www.maury.it)
Il primo programma di cui parliamo è lo Xine. Il progetto è partito in Germania ed oggi è un lettore
multimediale che legge tantissimi formati video. Legge correttamente i DVD­Video con tanto di
menù di selezione (cosa che non fa il successivo Mplayer) ed è proprio per questo utilizzo per cui lo
preferisco. Con Xine riproduco i DVD, con Mplayer tutto il resto.
Some rights reserved: http://www.maury.it#licenza
19
Multimedialità con GNU/Linux – Maurizio Antonelli (http://www.maury.it)
L'Mplayer è un progetto partito in Ungheria, dal programmatore Arpad Gereöffy che a quel tempo
non riusciva a trovare un lettore multimediale per Unix che lo soddisfacesse. Ha iniziato quindi a
scrivere il codice per l'Mplayer e successivamente, con l'aiuto di molta gente che si è inserita nel
progetto, il prodotto è diventato uno dei più conosciuti del campo. Per lo stesso streaming del
LinuxDay 2005 abbiamo consigliato l'MPlayer per la sua fluidità di riproduzione.
Lo si usa nativamente da shell, ma esiste anche il Gmplayer e tante skin a scelta per utilizzarlo in
maniera grafica. Quella inserita nella slide è la skin “Phony” che preferisco utilizzare io; somiglia
molto ad un frontale di un lettore DVD da tavolo.
Some rights reserved: http://www.maury.it#licenza
20
Multimedialità con GNU/Linux – Maurizio Antonelli (http://www.maury.it)
L'utilizzo da shell è semplice:
mplayer dvd://2 per riprodurre il secondo titolo di un DVD
mplayer vcd://2 per riprodurre la seconda traccia di un VideoCD
mplayer nome_file_video per riprodurre un file video digitale
mplayer http://streaming.telug.it/ld2005_high.avi per la riproduzione in
streaming (l'esempio è lo streaming dell'LD 2005).
Some rights reserved: http://www.maury.it#licenza
21
Multimedialità con GNU/Linux – Maurizio Antonelli (http://www.maury.it)
Alcune opzioni utili:
mplayer dvd://2 -cache 8192 -framedrop -fs
-cache 8192 mi da 8 megabyte di cache, utile per fonti lente del flusso audio/video, ad esempio
una rete LAN
-framedrop dice all'MPlayer di saltare alcuni frame nel caso che il video rimanga indietro
rispetto all'audio. Questo è utile per vecchi hardware
-fs dice all'MPlayer di visualizzare in full­screen, a tutto schermo. Basta la pressione del tasto “f”
per saltare da una modalità full­screen ad una modalità a video in finestra.
Questo programma si affida per molti formati alla famiglia di codec di FFMpeg, di cui parlerò nelle
prossime slide. Particolare nota di merito ha il codec Mpeg4 di questa famiglia a cui l'MPlayer si
affida per riprodurre i DivX; grazie a questo codec molto fluido, con questo lettore multimediale
posso vedere i DivX anche con il mio portatile vecchiotto che monta un AMD K6 450 Mhz.
Some rights reserved: http://www.maury.it#licenza
22
Multimedialità con GNU/Linux – Maurizio Antonelli (http://www.maury.it)
Una piccola autocitazione: all'URL http://www.maury.it/informatica/atitvout.html trovate come si
riesca ad utizzare con l'MPlayer l'uscita TV delle schede ATI. Le schede TV ATI sono, infatti,
caratterizzate da una tecnologia di proprietà Macrovision. Si riescono ad utilizzare soltanto con
driver proprietari. Con l'aiuto del programmino open­source Atitvout si riesce ad attivare l'uscita
TV per la modalità testuale. A questo punto, sfruttando l'MPlayer in framebuffer (senza ambiente
grafico) si possono vedere tranquillamente i propri filmati digitali sulla televisione.
Some rights reserved: http://www.maury.it#licenza
23
Multimedialità con GNU/Linux – Maurizio Antonelli (http://www.maury.it)
E ora la codifica. Può essere utile cambiare formato video per diversi motivi; in primis, ad esempio,
per avere dei file più compressi e che quindi occupano meno spazio nel supporto (Hard­Disk, CD­
R, ecc.).
Iniziamo con FFMpeg. Non è un codificatore, ma una famiglia di tantissimi codec open­source, a
cui poi si possono appoggiare i programmi di codifica e/o decodifica (riproduzione). Codifica
l'audio in Mpeg Layer­2 e OGG­Vorbis (ma anche in altri formati meno conosciuti) e codifica i
video in tantissimi formati diversi; una piccola nota di merito ha il formato Mpeg4 di FFMpeg, in
quanto è codificato/decodificato da un codec molto più fluido dei più conosciuti DivX e XviD; è
possibile di conseguenza codificare ad una notevole velocità e soprattutto visualizzare i filmati
anche con hardware relativamente obsoleto (io personalmente riesco a vedere i DivX
tranquillamente con il mio portatile con processore AMD K6 450 Mhz).
Some rights reserved: http://www.maury.it#licenza
24
Multimedialità con GNU/Linux – Maurizio Antonelli (http://www.maury.it)
L'Mencoder è il codificatore che viene dato in dotazione con l'MPlayer. Può avere in input qualsiasi
file supportato dal lettore multimediale di cui fa parte e per l'output può utilizzare molti codec
installati: FFMpeg, DivX, XviD, Lame, ecc. ecc.
Si utilizza da shell. Come esempio di utilizzo immaginiamo di voler creare un Mpeg4 (compatibile
con DivX e XviD) tramite i codec di FFMpeg da un film che abbiamo in un DVD­Video. Inoltre
vogliamo che il risultato entri in un CD­R da 700 megabyte.
Come prima cosa dobbiamo cancellare dalla directory di lavoro il file “frameno.avi” che può essere
stato creato da una precedente codifica. Questo, infatti, può dar fastidio al lavoro che stiamo
andando ad effettuare.
rm frameno.avi
Poi si parte con la prima fase:
mencoder dvd://2 -ovc frameno -o frameno.avi -oac mp3lame
-lameopts vbr=3
che codificherà l'audio con Lame, producendo un Mpeg Layer­3 a bitrate variabile e di buona
qualità. Lo salverà in un nuovo file “frameno.avi”. Alla fine di questo passaggio verranno dati i
bitrate video consigliati per creare dei file di 650, 700 e 800 megabyte.
Some rights reserved: http://www.maury.it#licenza
25
Multimedialità con GNU/Linux – Maurizio Antonelli (http://www.maury.it)
Partiamo poi con il primo passaggio di codifica video:
mencoder dvd://2 -ovc lavc -lavcopts
vcodec=mpeg4:vpass=1:vbitrate=<bitrate> -oac copy -o movie.avi
dove al posto della stringa “<bitrate>” inseriremo il valore che ci è stato consigliato nel
passaggio precedente. Durante questa fase il film viene codificato una prima volta, ma lo scopo è
solo quello di analizzare il video, creando un file di log “divx2pass.log” dove vengono segnati i
punti dove serve un bitrate più alto (ad esempio scene più veloci, più luminose, ecc.).
Infine il secondo passaggio:
mencoder dvd://2 -ovc lavc -lavcopts
vcodec=mpeg4:vpass=2:vbitrate=<bitrate> -oac copy -o movie.avi
dove avviene la codifica finale. Il bitrate dovrà essere uguale a quello immesso nel passaggio
precedente. Il risultato “movie.avi” sarà il nostro filmato codificato e compresso. La qualità è molto
buona, nonostante la compressione.
Due front­end grafici per Mencoder sono Gmencoder e File2divx3pass. Sono molto comodi da
usare, ma non sfruttano tutte le funzionalità del programma.
Some rights reserved: http://www.maury.it#licenza
26
Multimedialità con GNU/Linux – Maurizio Antonelli (http://www.maury.it)
Passiamo ora ad un programmino per video­editing: l'Avidemux. È un programma molto semplice
ed intuitivo da usare.
Some rights reserved: http://www.maury.it#licenza
27
Multimedialità con GNU/Linux – Maurizio Antonelli (http://www.maury.it)
Mi limito ad elencarne le funzioni principali:
●
tagliare filmati (ad esempio se si vuole togliere gli intervalli pubblicitari)
●
unire filmati
●
ruotare filmati (ad esempio di 90°)
●
schiarire o scurire filmati
●
ridurre o aumentare la definizione
●
codificare (appoggiandosi anche ai codec FFMpeg) e quindi anche creare dei DVD o dei Video­
CD finali.
Some rights reserved: http://www.maury.it#licenza
28
Multimedialità con GNU/Linux – Maurizio Antonelli (http://www.maury.it)
Per finire l'acquisizione da schede TV.
Il primo programma è lo XawTV, uno dei primi ad essere inseriti nelle distribuzioni. Il secondo, più
evoluto, KDETV. Sono programmi molto semplici da utilizzare; oltre a visualizzare i programmi
televisivi sul monitor, danno la possibilità anche di registrarli in formati digitali (Mpeg2, Mpeg4,
ecc.). Naturalmente la scheda TV deve essere pienamente supportata dal kernel Linux.
Riguardo alle ATI, che come detto in precedenza sono protette da una tecnologia proprietaria,
segnalo il progetto GATOS. È fermo da qualche anno e precisamente ad oggi (novembre 2005) è
fermo all'X.org 6.7.0. Il funzionamento era discretamente buono.
Some rights reserved: http://www.maury.it#licenza
29
Multimedialità con GNU/Linux – Maurizio Antonelli (http://www.maury.it)
Il mio intervento finisce qui. A questo punto non posso che augurare a tutti buon divertimento con
l'amico Pinguino.
Some rights reserved: http://www.maury.it#licenza
30