[DE |
EN |
FR |
IT |
JA |
ES |
KO |
PT]
Bentornati ad un nuovo numero di Brave GNU World. Questo numero prosegue da dove si è fermato l'ultimo: il vasto campo delle applicazioni audio.
LAoE [5] è un editor grafico audio di Olivier Gäumann il quale, dopo avervi lavorato sin dal Luglio 2000, recentemente lo ha reso disponibile nei termini della Licenza Pubblica Generica GNU (GNU GPL).
Prima di iniziare questo progetto, sin dal Gennaio 2000 Oliver era alla ricerca di una applicazione che soddisfacesse i propri bisogni; sfortunatamente senza successo. Così decise di far da sé e cominciò lo sviluppo. Mancando di esperienza nel campo della musica professionale, lo sviluppo ha avuto alcune battute d'arresto e qualche difficoltà, ma col tempo queste sono state risolte.
La progettazione di LAoE si ispira all'applicazione grafica libera GIMP [6] della quale ha adottato il concetto di layer con numerosi plug-in ed effetti. Oliviers spera di creare un editor audio completo almeno quanto lo sono i programmi grafici allo stato dell'arte.
LAoE è in grado di leggere file mp3, wav, au, aiff e gsm e supporta il salvataggio nei formati wav e aiff. È prevista anche l'implementazione di un formato nativo laoe, nel quale verrebbero preservati i differenti layer e le impostazioni.
Sebbene le prestazioni dell'hardware pongano limiti pratici al numero di canali e layer, in teoria LAoE ne supporta un numero illimitato. Per garantire la massima precisione, tutte le operazioni sono in virgola mobile.
Accanto alle classiche funzioni di copia, incolla, taglia e sposta, LAoE fornisce anche un sistema di "undo" piuttosto sofisticato ed illimitato che consente di ritornare a qualsiasi stato precedente. È possibile selezionare e modificare le aree in diversi modi e con diverse funzioni.
Oltre agli strumenti di analisi, LAoE contiene generatori di forme d'onda e diverse funzioni per la modifica dell'ampiezza. È supportata la trasformazione e la modifica nel dominio delle frequenze per mezzo di trasformate Fast-Fourier (FFT) così come il filtraggio per mezzo di diversi parametri e frequenze. Parallelamente, il progetto offre diversi effetti, ad es. l'eco, la manipolazione del tono, il plugin per la disarmonia, la manipolazione del tempo e così via. Inoltre è possibile visualizzare e modificare gli spettrogrammi.
Oliver ha anche speso un po' di tempo per migliorare l'uso, così per esempio LAoE offre le "scorciatoie col mouse" che consentono di chiamare il plugin della storia degli "undo" disegnando una semplice "u" con il mouse.
Se non dovesse essere abbastanza, siete invitati naturalmente a fornire i vostri effetti ed estensioni sotto forma di plugin.
Con lo sviluppo in fase piuttosto avanzata, ora Oliver ha pensa di concentrarsi ulteriormente sulla documentazione — attualmemente esiste già una seppur breve scheda di riferimento — per migliorare l'uso e conquistare ulteriori utenti.
Al momento però l'elenco dei suggerimenti e delle richieste di miglioramento è piuttosto lungo, è quindi probabile che l'ulteriore documentazione possa essere in qualche modo ritardata.
Il principale problema di LAoE è che di non essere utilizzabile per brani musicali più lunghi di 5 minuti, poichè l'intero brano deve essere caricato in memoria, che rappresenta una grossa limitazione tecnica.
Inoltre, il linguaggio di programmazione utilizzato è Java; con tutti i problemi descritti in dettaglio nel numero 49 [7]. In questo modo LAoE dipende ancora da una piattaforma proprietaria.
Che il futuro porti a Java Libero o all'utilizzo di un altro linguaggio — che consentirebbe anche di superare i problemi tecnici — possiamo dire che LAoE è assolutamente un progetto molto interessante che rappresenta un altro passo importante nel campo delle applicazioni audio professionali.
Sebbene, stando a quanto detto da Oliver stesso, egli non abbia ricevuto molto supporto da parte di altri, ciò non significa che egli non lo apprezzerebbe; anzi al contrario sta esplicitemente cercando volontari che lo aiutino a lavorare al progetto.
Potete trovare ulteriori informazioni sul progetto e dettagli sui contatti nella pagina principale di LAoE. [5]
Talvolta è necessario, o quantomeno utile, avere diverse versioni dello stesso programma installate contemporaneamente, così da poterle utilizzare alternativamente o anche contemporaneamente. I motivi possono essere legati a versioni non più retrocompatibili o altri programmi che necessitano di versioni differenti della stessa applicazione.
I diversi sistemi operativi utilizzano diversi approcci per risolvere questo problema. Sotto MS Windows questo viene gestito attraverso il Registry centralizzato, che risolve questo problema in modo estrememente insoddisfacente.
Il sistema operativo Plan9 aveva il concetto delle cosiddette "Viste" in combinazione al filesystem Union. Ciò consentiva di memorizzare tutte le applicazioni nella directory /bin e, per mezzo delle viste, l'utente poteva determinare quale versione utilizzare. Sotto Unix tale scelta ed installazione è effettuata attraverso i link simbolici e le variabili d'ambiente PATH e LD_LIBRARY_PATH.
Nel caso ci fosse solo una nuova versione da installare a mano fuori dall'ambito della distribuzione senza compromettere la manutenibilità del sistema, ci sono strumenti come GNU Stow [9], che possono rendervi più semplice la vita (si veda il numero 36 [10]). Comunque questo non vi aiuterebbe molto nel caso dovesse essere necessario utilizzare diverse versioni allo stesso tempo.
A volte le persone cercano di risolvere questi problemi con wrappers e script di shell, ma spesso queste soluzioni sono fragili e richiedono attenzione e manutenzione frequente. Apvsys [8] di Arnaud Bertrand cerca di fornirci una soluzione migliore.
Le differenti versioni di tutte le applicazioni sono installate in differenti sottodirectory e gestite da Apvsys. Gli utenti devono solo aggiungere una directory alla propria variabile PATH, cosa che può essere fatta anche in modo automatico.
Successivamente, la APVSYs_TOOLSPEC_FILES consente di configurare differenti versioni per specifiche applicazioni ed ambienti. Strumenti a riga di comando consentono di verificare le versioni utilizzate e di amministrare la configurazione. Se nessuna versione particolare viene specificata, viene utilizzata quella di default.
Tutta la configurazione è effettuata per mezzo di semplici file di testo che sono amministrati attraverso applicazioni in Perl. La shell Apvsys è stata scritta in C.
Vale la pena spendere qualche parola sui retroscena. Apvsys è la reimplementazione di un programma scritto nel 2001 da Alex Farell utilizzando Perl. Questo programma non poteva essere più utilizzato poichè Alex Farell lo scrisse durante le proprie ore lavorative ed in questo modo i diritti (d'autore, N.d.T.) erano attribuiti al datore di lavoro.
Apvsys ha fatto in modo di non incorrere negli stessi problemi ed è disponibile come Software Libero nei termini della Licenza Pubblica Generica GNU (GNU GPL) Versione 2
Arnaud Bertrand è passato a C per aumentare la velocità dell'applicazione, assicurando allo stesso modo di mantenere il formato del database di configurazione ASCII per rendere la transizione il più semplice possibile. Sembra che questo abbia avuto abbastanza successo, poichè Apvsys è usato con soddisfazione fin dal 2002 da tre grossi centri di progetto in Belgio e Francia come parte del proprio ambiente di produzione.
Così il nucleo di Apvsys può essere considerato stabile, che non significa naturalmente che non ci siano problemi o possibilità di migliorare il programma. A volte differenti strumenti con nomi identici causano problemi e dovrebbero essere gestiti con cura, per esempio. Inotre a volte ci sono problemi quando i percorsi sono hard-coded all'interno delle applicazioni.
I futuri progetti per Apvsys sono quello di aggiungere una interfaccia grafica ed un sistema di pacchettizzazione; sebbene la decisione se il sistema di pacchettizzazione verrà scelto tra uno di quelli già esistenti o sarà implementato da zero non è ancora chiara.
In ogni caso è beneaccetta la partecipazione di volontari nello sviluppo di Apvsys e per proporre suggerimenti riguardo l'interfaccia o il sistema di pacchettizzazione.
Un'altra area nella quale i volontari possono collaborare è l'indipendenza dalla piattaforma. Apvsys funziona su GNU/Linux, Solaris, HPUX e Cygwin. Dovrebbe funzionare anche su altre piattaforme, ma per questo c'è bisogno di prove.
L'ultimo suggerimento di Xavier Duret, che ha risposto alle domande di Brave GNU World su Apvsys, è relativa a GNU Hurd [11]. Se non fosse già stato fatto, egli invita un volontario a creare un traslator Hurd basato sul filesystem Union che sia in grado di fornire funzionalità equivalenti ad Apvsys o Plan9.
Almeno nell'emisfero nord l'estate si avvicina rapidamente; perciò anche i geek dovrebbero pensare di rimettersi in forma. Per far si che non debbano abbandonare i propri amati computer esiste il prossimo progetto.
pyDDR [12] è un clone in Python del gioco DDR ("Dance Dance Revolution"), nel quale il giocatore, con tutto il proprio corpo, deve calpestare al momento giusto le frecce giuste di un tappetino munito di sensori; sembra semplice, e lo è, ma finchè state a guardare.
Sebbene questo tipo di giochi non abbiano ancora avuto larga diffusione in Europa ed America, sono divenuti famosi da qualche tempo in Asia ed in diverse sale giochi le persone ballano o (in un altro gioco) suonano la batteria.
Grazie al lavoro svolto da Brendan Becker, che ha implementato pyDDR come Software Libero nei termini di una licenza simile a quella di X11, potete fare queste cose a casa vostra e, durante i tempi di attesa come quelli di una lunga compilazione, fare qualcosa per il vostro corpo. Le librerie utilizzate sono la PyGame Module [13] e la Simple DirectMedia Layer (SDL) [14].
Brendan ha ricevuto suppporto per il suo lavoro da parte di diversi volontari come Joe Wreschnig e John Bafford, e vorrebbe incoraggiare anche altri a collaborare. Ciì comprende anche un contributo finanziario, sottolinea Brendan, in quanto spenderebbe volentieri più tempo per i giochi che per svolgere i suo "normale" lavoro.
pyDDR è stato scritto per GNU/Linux, ma ci sono segnalazioni che sia stato fatto funzionare con successo su Windows NT, XP, 9X, BSD, MacOS X e BeOS. È stato fatto funzionare anche su una Playstation 2 funzionante con GNU/Linux — raccomandiamo di farlo solo ai tecnici, comunque.
Naturalmente per una esperienza di gioco completa avete bisogno di un tappetino con i sensori, e se volete giocare contro qualcuno anche di due; ma potete anche sostituire un tappetino con la tastiera, in questo modo è possibile almeno farsi un'idea del gioco senza dover acquistare nuovo hardware.
Anche se non credete nel movimento fisico del ballo vale comunque la pena dare un'occhiata al gioco perchè è molto professionale e con ottima grafica, e fornisce un'idea di come possono apparire i giochi liberi.
Con una quantità sempre maggiore di Software Libero diventa sempre più difficile avere la visione completa. Una soluzione per cercare di affrontare il problema sono i portali.
Sfortunatamente alcuni portali, come Freshmeat, sono di limitata utilità, poichè non sono in grado di garantire la qualità delle proprie registrazioni e spesso mischiano software proprietario e Software Libero.
Per risolvere qesto problema, la Free Software Foundation ha cominciato nel 1999 a lavorare alla Free Software Directory, [15] un database di Software Libero, ed affidò il suo mantenimento a Janet Casey.
Per ogni registrazione nella lista viene verificata la licenza attraverso la pagina principale del progetto e verificando nel codice sorgente per essere sicuri che la licenza sia effettivamente ciò che appare; perciò gli utenti possono fidarsi di più delle informazioni inserite nella Free Software Directory.
Nell'Aprile 2003 l'Organizzazione delle Nazioni Unite per l'Istruzione, la Scienza e la Cultura (UNESCO) si è unita a questa attività della FSF e la sostiene ufficialmente, così ora si chiama "FSF/UNESCO Free Software Directory."
Se state cercando soluzioni o vi piacerebbe sapere se esiste una applicazione per un determinato scopo, la Free Software Directory è un ottimo punto di riferimento.
Gli autori dei progetti dovrebbero — nel caso non lo avessero già fatto — assicurarsi che i propri progetti siano nell'elenco e naturalmente informarne anche Brave GNU World. [1]
Questo significa che ancora una volta la rubrica è giunta alla fine per questo mese. Se avete domande, commenti, idee o suggerimenti su progetti interessanti, per favore non esitate a mandarmi una email. [1]
Info
|
[1] Inviate idee, commenti e domande (possibilmente in inglese) a Brave GNU World <column@brave-gnu-world.org>
[2] Pagina principale del Progetto GNU http://www.gnu.org/ [3] Pagina principale di Brave GNU World http://brave-gnu-world.org [4] Iniziativa "Noi usiamo GNU" http://www.gnu.org/brave-gnu-world/rungnu/rungnu.it.html [5] Pagina principale di LAoE http://www.oli4.ch/laoe [6] Pagina principale di GIMP http://www.gimp.org [7] Numero 49 di Brave GNU World http://brave-gnu-world.org/issue-49.it.html [8] Pagina principale di Application Version System (Apvsys) http://www.apvsys.org [9] Pagina principale di GNU Stow http://www.gnu.org/software/stow/ [10] Numero 36 Brave GNU World http://brave-gnu-world.org/issue-36.it.html [11] Pagina principale di GNU Hurd http://www.gnu.org/software/hurd/ [12] Pagina principale di pyDDR http://icculus.org/pyddr/ [13] Pagina principale di PyGame http://pygame.org [14] Pagina principale di Simple DirectMedia Layer (SDL) http://www.libsdl.org [15] Free Software Directory http://www.gnu.org/directory/ [16] United Nations Educational, Scientific and Cultural Organization (UNESCO) http://www.unesco.org |
Per informazioni e domande sulla FSF e GNU rivolgersi, possibilmente in lingua inglese, a gnu@gnu.org. Altri modi per contattare la FSF.
Commenti a Brave GNU World di Georg, in inglese o tedesco, a
column@gnu.org,
commenti su queste pagine a
webmasters@www.gnu.org,
altre domande a
gnu@gnu.org.
Copyright (C) 2003 Georg C. F. Greve
Tradotto da Giovanni Biscuolo.
Sono permesse la copia letterale e la distribuzione di questo articolo nella sua integrità, a condizione che siano riprodotti il copyright e questa nota.
Ultima modifica: Tue Jun 17 12:00:00 CET 2003