Fedora Multimedia Installation HOWTO Eric Steven Raymond Thyrsus Enterprises Diario delle Revisioni Revisione 5.1 2006-03-25 Revisionato da: esr Semplificate e corrette alcune istruzioni di FC5. Revisione 5.0 2006-03-21 Revisionato da: esr Aggiornamento per Fedora Core 5. Da un lato, adesso possiamo prendere pressoché tutto da livna, il che semplifica la vita. Da un altro, Totem e Xine sono entrambi completamente inutilizzabili. Revisione 4.0 2005-10-09 Revisionato da: esr Aggiornamento per Fedora Core 4. I repository di fedora.us sono diventati Fedora Extras. Il plugin di Adobe Acrobat non sembra essere ancora a lungo necessario, xpdf ed evince hanno preso una migliore direzione. Revisione 3.0 2004-11-07 Revisionato da: esr Aggiornamento per Fedora Core 3. Revisione 2.2 2004-09-07 Revisionato da: esr Correzioni per il kernel 2.6.8 e per Mozilla 1.7. Revisione 2.1 2004-08-03 Revisionato da: esr RealPlayer 10 viene rilasciato come open source. Ciò cambia qualcosa. Revisione 2.0 2004-07-14 Revisionato da: esr Aggiornamento per Fedora Core 2. Rimossi i metodi per up2date, l'aggiornamento per FC2 sembra essere inutilizzabile. Revisione 1.2 2004-02-03 Revisionato da: esr Correzioni tipografiche. Revisione 1.1 2004-01-31 Revisionato da: esr Il repository di Dag Wieers è stato abilitato a yum, così apt-get scompare dal quadro. Aggiunta l'installazione di mozilla-acroread. Aggiunto qualche repellente avvocato d'assalto. Revisione 1.0 2004-01-30 Revisionato da: esr Versione iniziale. Come fare in modo che varie Maledette Cose multimediali di tipo proprietario e con restrizioni (AVI, Flash, Java, MP3, MPEG, QuickTime, RealMedia, Windows Media) possano lavorare sotto Fedora Core usando normali strumenti di gestione dei pacchetti. Include le istruzioni per i plugin di Firefox. Adesso con informazioni su entrambi i sistemi basati sulle architetture a 32 ed a 64 bit di Intel. Sfortunatamente, le novità in FC5 sono tutte alquanto cattive. Totem e Xine sono entrambi completamente inutilizzabili. Traduzione di Guido Caruso -- g.caruso at fedoraserver.org, revisione di Giulio Daprelà - giulio at pluto dot it _________________________________________________________ Sommario 1. Introduzione 1.1. Nuove versioni di questo documento 2. Pacchetti, strumenti e repository 3. Considerazioni sulla sicurezza e altri rischi 4. Macromedia Flash 5. gstreamer e ffmpeg 6. MP3 7. Java 8. RealAudio e RealVideo 9. MPEG, QuickTime, AVI, e DVD 10. Pagine di test per lo streaming via Web 11. Risorse collegate 12. Licenza e Copyright 13. Ringraziamenti 1. Introduzione Ci sono delle Cose Maledette come abilitare Java e Flash in Mozilla, fare suonare file MP3, visualizzare filmati Quicktime/AVI/RealMedia/Windows Media in stream, e visualizzare DVD criptati, che i tipi della distribuzione Fedora non vogliono dirvi come fare, sia perché hanno paura di essere citati in giudizio per violazione del DMCA sia per varie ragioni estetiche e politiche. Questo HOWTO riunisce le informazioni rilevanti in un unico posto. Non è un HOWTO per la generalità delle applicazioni multimediali su Linux; se lo fosse, ci sono centinaia di strumenti ingegnosi e pacchetti che dovrebbe elencare (a cominciare da GIMP e tutti i suoi affini e derivati e simbionti). I pacchetti che descriveremo qui sono esattamente delle patate bollenti sia legalmente che politicamente, la materia prima che viene lavorata da monopoli e inquieti giuristi. Un buon bagaglio di informazioni su come levare dal marasma un sistema Fedora può anche essere trovato sul sito web di FedoraNEWS e nella Unofficial Fedora FAQ. Una supposizione che distingue questo documento da quelle altre risorse è che voi siate pigri come me -- e che vogliate installare le vostre Cose Maledette (e, dopo, aggiornarle) con i vostri strumenti ordinari di gestione dei pacchetti, con un numero assolutamente minimo di visite in siti speciali, download di sorgenti in formato tar, o eseguendo singole procedure di compilazione. Nota legale: nessun codice sorgente o localizzazione di codice sorgente di software prodotto, tale da essere oggetto del DMCA, è rivelato in questa pagina, si dovrà guardare nel mio sito web personale per quello. Il DMCA è una cattiva legge fattaci ingoiare a forza da sciocchi e furfanti e il suo uso per sopprimere la libertà di parola sul software è una disgrazia, ma per assicurare la massima distribuzione a questo HOWTO, io qui sono rimasto subordinato ad esso. Una ragione per cui sto facendo questo è che mi ritengo un bersaglio più duro per gli avvocati d'assalto, rispetto a molti hacker; la pubblica fama e una reputazione a servizio della libertà di parola sono di aiuto, qui. Se tu che leggi sei un avvocato d'assalto, sei avvisato che invariabilmente risponderò ad attacchi ed intimidazioni combattendo, che sono dotato di buon senso legale e molto bravo nel lavorare con la stampa, e che farò uso di tutta la mia considerevole abilità per fare cadere te ed il nome del tuo cliente in disgrazia, se tu dovessi tentare di sopprimere la mia libertà di parola. Sei avvertito. _________________________________________________________ 1.1. Nuove versioni di questo documento Si può anche vedere l'ultima versione di questo HOWTO sul World Wide Web all'URL http://tldp.org/HOWTO/Fedora-Multimedia-Installation-HOWTO.htm l. Inviate liberamente messaggi di posta elettronica con commenti riguardanti questo HOWTO, o integrazioni o risoluzioni di errori, a Eric S. Raymond, . Ma per favore non chiedetemi di risolvere problemi di configurazione di dispositivi multimediali o di plugin; se lo farete, vi ignorerò. Tutto ciò che so su questo argomento è già qui. _________________________________________________________ 2. Pacchetti, strumenti e repository Le recenti versioni di Linux si stanno rapidamente muovendo verso un mondo in cui i supporti fisici vengono usati solo per l'installazione del sistema operativo, con aggiornamenti cercati ed installati da strumenti che interrogano i repository in Internet. Bisognerà conoscere qualcosa riguardo questi strumenti e sui repository da cui essi prendono i pacchetti in formato binario. I pacchetti di Fedora sono chiamati RPM. Ognuno può essere installato o rimosso come un gruppo, e rende disponibile un'applicazione insieme ai file di supporto di cui questa ha bisogno. Alcuni pacchetti dipendono da altri -- un'applicazione, per esempio, può richiedere lo specifico supporto di librerie. Parte del lavoro che un programma di installazione di pacchetti compie è scaricare quelle dipendenze ed installarle prima dell'installazione del pacchetto principale. Sfortunatamente i pacchetti RPM possono scontrarsi l'uno con l'altro -- per esempio, volendo mettere versioni incompatibili di un comando o di un file di supporto. Il principale lavoro del manutentore di un repository è quello di assicurasi che (a) i pacchetti RPM nella sua raccolta non cozzino l'uno con l'altro, e (b) che tutte le loro dipendenze siano risolte o all'interno del suo repository o all'interno di repository 'di base' di cui egli stesso ne annuncia la dipendenza. C'è un repository di base per Fedora Linux mantenuto dallo stesso progetto Fedora, e circa una mezza dozzina di repository di estensioni che dipendono da quella base. Tali estensioni o repository di "terze-parti" sono il posto dove si prenderanno le proprie Cose Maledette; sono mantenuti da volontari non dipendenti dal Fedora Project, spesso localizzati in siti al di fuori degli Stati Uniti dove sono meno esposti a giuristi predatori. I repository delle estensioni sono formati da combriccole definite dalla reciproca compatibilità. C'è molta turbolenza e molta politica intorno a tali combriccole che, in qualità di utenti finali, voi potete abbondantemente ignorare. L'unico motivo per cui bisogna conoscere questo è che bisogna scegliere una combriccola affinché si possano evitare conflitti tra i pacchetti. All'inizio del 2006 ci sono, essenzialmente, tre combriccole da scegliere, come descriverò più avanti. Prima ho bisogno di introdurre gli strumenti che occorreranno per andare a cercare le proprie Cose Maledette: yum yum (il Yellow Dog Updater, Modified), è uno strumento da riga di comando che viene installato con Fedora Core. Aiuterà a scaricare gli aggiornamenti dal repository di Fedora, e dagli altri repository che detengono Cose Maledette che Fedora non vuole. pirut È un'interfaccia grafica per yum introdotta con FC5. È una maniera leggermente più garbata, più gentile di usare yum. Si ha anche bisogno di conoscere qualche repository. Ognuno è una collezione di RPM, divisa in sottocollezioni chiamate 'canali'. fedora.redhat.com Questo è il repository di base di Fedora. I pacchetti RPM nei canali 'stable' (stabile) e 'updates' (aggiornamenti) di questo repo sono quelli che vanno su un CD-ROM di Fedora. Una nota storica per i lettori delle precedenti versioni di questo documento: il repo di Red Hat adesso include, nelle sue parti 'extras', parti equivalenti della materia prima che viene usata nel fedora.us. RPMForge Una combriccola formata da tutti i maggiori siti di pacchetti RPM di terze parti ad eccezione di livna e ATrpms. Queste pacchettizzazioni sono destinate ad estendere i repository di Fedora Core ed Extras, e i manutentori stanno attenti a non cozzare con i repository di Fedora. Il consorzio include i repository freshrpms, Dag Wieers, Dries, NewRPMs e PlanetCCRMA. Stanno lavorando verso la fusione dei loro repository, e già compilano con sorgenti RPM comuni. Sfortunatamente, è noto che la collezione RPMForge ha dei seri conflitti con livna e ATRPM. rpm.livna.org Un sito, localizzato al di fuori degli U.S.A. e al di là della portata del DMCA, che specificatamente è dedicato a fornire Cose Maledette che Fedora Core ed Extras non vogliono offrire. Non c'è alcuna connessione ufficiale, e infatti la gente di Fedora non vuole menzionare livna nelle proprie pagine web o nella documentazione per paura di essere chiusi con forza con un processo limitante della libertà di parola intentato da schiumanti esseri malvagi al DVDCCA, ma la gente di livna segue molto da vicino quello che fa Fedora. I repository di livna dipendono dai repository di Fedora. Sono in conflitto con i repository di RPMForge. http://macromedia.mplug.org/ La sorgente principale per versioni pacchettizzate di Macromedia Flash. Usare questo RPM con ogni altro repository di estensione è sicuro. Le tre combriccole cui io mi sono prima riferito sono RPMForge, livna (tutti da soli) e ATrpms (tutti da soli). Con FC5 si può ottenere tutto il supporto multimediale di cui in teoria si ha bisogno da livna, invece che usando RPMforge come ho consigliato nelle precedenti versioni di questa FAQ. Ho detto 'in teoria' perché, infatti, pressoché nessuna della materia prima per video, attualmente funziona con FC5. Per abilitare l'accesso a livna si faccia questo: rpm -ivh http://rpm.livna.org/livna-release-5.rpm Questo dovrebbe rilasciare un file di configurazione di un repo per yum in /etc/yum.repos.d/ _________________________________________________________ 3. Considerazioni sulla sicurezza e altri rischi Tutti i comandi di yum che io dò in questo HOWTO devono essere lanciati dal prompt di root in modo che i pacchetti da loro cercati possano essere installati nel proprio spazio sul sistema. Ciò significa che c'è un rischio che il proprio sistema possa essere compromesso da un RPM funzionante come un Cavallo di Troia, sia inserito in uno dei repository a cui ci si rivolge sia infilatosi fino a voi da un attacco di tipo man-in-the-middle portato tra voi ed un repository. Per controllare quest'ultimo rischio, molti repository firmano crittograficamente i propri RPM. Occorre che si abbia una copia locale delle chiavi pubbliche di ogni repository allo scopo di fare un controllo di integrità dei pacchetti entranti; le versioni correnti di yum ne scaricheranno una. Questo potrebbe essere superato da un attacco di tipo man-in-the-middle tale da raggirare il sito del repo e rifilare delle chiavi simulate mentre si sta impostando la propria configurazione; sebbene questa possibilità sia estremamente sfortunata, bisognerebbe esserne a conoscenza. Un rischio a lungo termine che si accetta usando il codice proprietario a cui si fa riferimento in questo HOWTO è quello di diventare dipendenti dai capricci di un venditore di software proprietario. Non è necessario credere in quella religione appartenente al tempo passato detta Software Libero per vedere che questo è un problema. Qualche software che noi descriveremo qui (il plugin Sun Java JDK è un buon esempio) è distribuito come freeware a sorgenti chiusi -- il che è tutto molto bello, ma che cosa accadrebbe se il venditore dovesse cambiare il suo modo di pensare nel futuro? Si potrebbe restare in difficoltà . È pericoloso essere dipendenti da software proprietari e da formati proprietari. Se si permette a se stessi di diventare dipendenti, si danneggiano altri aiutando i venditori, che mantengono un pericoloso monopolio chiuso sul loro segmento di mercato. Così, se si devono comprare questi strumenti, per favore si trovi il modo di supportarne le sostituzioni open-source -- donare tempo in programmazione o denaro, o fare sforzi facendo premssione sui venditori ad aprirsi. Rippare i propri CD in Ogg Vorbis invece che in MP3. Scrivere una lettera al proprio legislatore per una revoca urgente del DMCA. La libertà che si salverà sarà la propria. _________________________________________________________ 4. Macromedia Flash Fedora non vuole distribuirlo dal proprio sito perché la licenza di Macromedia non lo permette, ma non ci sono altre barriere legali nell'usare i pacchetti RPM da http://macromedia.mplug.org/. Seguire queste direzioni, rilasciando la configurazione del repository di Macromedia nella propria directory /etc/yum.repos.d/. Dovrebbe somigliare molto a questo: [macromedia] name=Macromedia for i386 Linux baseurl=http://macromedia.mplug.org/rpm/ enabled=1 gpgcheck=1 gpgkey=http://macromedia.mplug.org/FEDORA-GPG-KEY Quindi eseguire l'installazione: yum install flash-plugin Installando questo RPM bisognerebbe mettere il plugin nella propria directory dei plugin di Firefox (e anche di Mozilla). Si può testare il proprio supporto a flash alla pagina ufficiale per i test. Notare che si potrebbe dover chiudere e riavviare il proprio browser dopo l'installazione del plugin; io ho provato il test di Flash immediatamente e questo ha mandato Firefox in crash. C'è una "Gotcha": il plugin di Macromedia lavora solo per macchine Intel a 32-bit. Fallisce completamente su una macchina x86_64 che lavora in modalità a 64-bit (in generale i plugin a 32-bit non dovrebbero lavorare con un browser a 64-bit). Attualmente ci sono tre progetti che affrontano questo problema: * gplflash1 è l'originale plugin GPL per Flash. Gestisce SWF solo fino al livello 4. * gplflash2 lavora a metà, con un doloroso ammontare di tremolii di immagine, e frequenti crash di Firefox. Questa riscrittura del gplflash è stata abbandonata in favore di gnash. * gnash promette pieno supporto per SWF fino al livello 7, ma è appena in uno stadio iniziale di sviluppo e assediato da avvisi. Io penso che il modo corretto di colmare la lacuna su sistemi a 64-bit potrebbe essere compilare e installare gplflash1, ma al 21 Marzo 2006 io non posso ancora farlo perché necessita di un file header per X di cui io non ho ancora trovato il corretto RPM. Questo potrebbe cambiare appena la polvere si sarà depositata su FC5. _________________________________________________________ 5. gstreamer e ffmpeg FC5 ha adottato un progetto chiamato gstreamer come un back end comune per manipolare file video ed audio. Totem, il lettore multimediale autonomo fornito con FC5, usa gstreamer; così fa anche il plugin per Firefox, mozplugger. gstreamer stesso usa dei plugin, uno per ogni formato multimediale che supporta. I plugin per formati open-source come Ogg Vorbis sono forniti con FC5. I plugin per formati proprietari, no. Per ottenerli si faccia questo: yum install gstreamer-plugins-ugly ffmpeg Questo dovrebbe anche installare mpeg2dec, libsidplay, libdvdread, faac, faad2, imlib, e gsm. I plugin 'pericolosi' abilitano gstreamer a gestire i formati MP3, MPEG2, e SID. Il formato SID è una reliquia storica dal Commodore 64. MP3 è il formato audio più popolare. MPEG2 è un formato audio/video usato nei DVD. La libreria ffmpeg può codificare o decodificare audio e video di tipo MPEG1, MPEG4, h263, ac3, asf, avi, real, mjpeg, e flash. _________________________________________________________ 6. MP3 Fedora non vuole fornire software capace di eseguire MP3 perché i termini della licenza relativa al brevetto del Fraunhofer Institute non sono compatibili con la GPL. Il lettore musicale predefinito in FC5 è Rhythmbox. Ho lottato con Rhythmbox per diverse ore, ma a dispetto della sua interfaccia graziosa l'ho trovato non usabile. Ignora i numeri di traccia -- o, come minimo, non è così attento a tirarli fuori dai nomi dei file come fa xmms, e non documenta le sue regole di importazione. Provare a convincerlo a suonare MP3 è un incubo così devastante che ad un certo punto ho pensato che avrei dovuto reinstallare interamente il mio sistema Linux solo per essere capace di tornare a suonare Ogg, perché non riuscivo più ad immaginarmi quale parte di applicazione non documentata avevo rimescolata o come metterla a punto. La documentazione è in generale un brutto scherzo -- lucida, superficiale, e con un contenuto inutile sulla risoluzione dei problemi. Il lettore xmms non sarà così dotato di opzioni o di un aspetto così gradevole, ma funziona meglio. Per installare xmms e renderlo capace di eseguire MP3, iniziare facendo questo: yum install xmms xmms-mp3 Attualmente per abilitare l'esecuzione di MP3 occorrerà lanciare xmms e cambiare la sua configurazione. Selezionare Opzioni -> Preferenze -> Plugin di I/O Audio dal menu; questo aprirà una finestra che elenca i plugin. Selezionare "MPEG Layer 1/2/3 Placeholder Plugin" e deselezionare [ ] Abilita Plugin. Con questa impostazione, xmms automaticamente userà il plugin xmms-mp3. Chiudere xmms e riavviarlo. Sulla mia macchina x86_64 ho incontrato il problema che xmms suonava solo come root, uscendo immediatamente quando veniva avviato da un account non-root. C'è un certo numero di cause comuni per questo; verificare i permessi sul proprio dispositivo sonoro. C'è un problema esotico su cui sono inciampato; si potrebbe dover dire al proprio modulo per il suono di impadronirsi dei buffer DMA low-memory e di non rilasciarli. Per abilitare lo streaming MP3 attraverso Firefox o Mozilla, installare i plugin gstreamer e ffmpeg come descritto sotto.Gli stream MP3 suoneranno tramite xmms, i podcast tramite Totem. _________________________________________________________ 7. Java Java è scaricabile da Sun ed è ridistribuibile, ma solo per uso personale e senza scopo di lucro. La licenza Java di Sun non è open-source, così Fedora e molte altre distribuzioni Linux non vogliono fornirlo. Fedora Core 5 include un'implementazione Java open-source per programmatori chiamata gcj. C'è solamente bisogno di qualche accorgimento se si vogliono abilitare le applet nel proprio browser. The Unofficial Fedora FAQ riporta istruzioni dettagliate su come farlo. Si può testare il proprio plugin Java nella pagina delle Applet di Sun. Notare che qualcuna di queste applet (Escher e Starfield, quando le ho testate) parrebbero non funzionanti. BouncingHeads fa un buon test. Si potrebbe anche voler copiare il pacchetto RPMS che si è compilato in una directory diversa da /usr/src/redhat/RPMS/ così da averlo a portata di mano per nuove installazioni. _________________________________________________________ 8. RealAudio e RealVideo Non so da dove possa essere accessibile tramite yum, così bisognerà scaricarlo ed installarlo a mano. Si faccia prima questo: yum install compat-libstdc++-33 Poi scaricare RealPlayer10GOLD RPM ed installarlo. Su sistemi Fedora Core a 32-bit si potrebbe avere bisogno di cancellare HelixPlayer con rpm -e HelixPlayer prima che la versione 10GOLD possa funzionare. FC5 x86_64 non include HelixPlayer. _________________________________________________________ 9. MPEG, QuickTime, AVI, e DVD MPEG (il formato usato sui DVD) si presenta come uno standard aperto, ma molte distribuzioni Linux non vogliono distribuire software che lo legga per via degli ostacoli posti dai brevetti detenuti da MPEGLA. AVI e QuickTime di Apple hanno codec proprietari coperti da brevetti, ed anche di questi molte distribuzioni Linux non vogliono distribuire software che li possa decodificare. FC5 distribuisce il lettore video ufficiale del progetto GNOME, totem. Sfortunatamente, questo non vuole eseguire DVD. Il sintomo è un popup di errore che recita "Totem non è riuscito a riprodurre il disco. Motivo sconosciuto", ma il problema è attualmente un bug noto presente in gstreamer-0.10. Sfortunatamente il programma alternativo xine è ancora meno utilizzabile. Può essere installato in questo modo: yum install xine xine-lib libdvdcss Così facendo si installeranno un certo numero di librerie di supporto, incluso il plugin libdvdcss di cui la gente di xine non vuole discutere sul proprio sito perché sono troppo spaventati dagli attacchi dei legali del DVDCCA. La versione 0.99.4 di xine mostra a video una finestra tutta bianca e non fa nulla (almeno sulla mia macchina Opteron "plain-vanilla" che usa una nVidia GeForce2). _________________________________________________________ 10. Pagine di test per lo streaming via Web Ecco degli indirizzi di test per provare delle clip per lo streaming audio e video: * AVI * QuickTime * Windows Media * MPEG * RealPlayer _________________________________________________________ 11. Risorse collegate C'è una buona guida passo-passo della procedura di installazione di Fedora Core 5, che tratta alcuni degli stessi argomenti di questo documento, qui. C'è un'utile pagina anche in Fedora Core 4 Tips and Tricks. C'è un buon tutorial su Firefox multimedia plugins. _________________________________________________________ 12. Licenza e Copyright © 2004, Eric S. Raymond. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is located at www.gnu.org/copyleft/fdl.html. _________________________________________________________ 13. Ringraziamenti Miguel Freitas mi ha aiutato ad educarmi su alcuni tecnicismi relativi ai formati video.