Far suonare meglio Windows con i soundfonts

Il sistema operativo Windows ha tanti difetti ma, per chi voglia sentire la riproduzione di un file MIDI o di un file karaoke, che è poi spesso anche lui un file MIDI arricchito del testo della canzone, ha il pregio di avere già tutto predisposto perché l’utente possa raggiungere lo scopo o utilizzando Windows Media Player o, se si tratta di file karaoke, semplicemente procurandosi un software come vanBasco.
Dal momento che il file MIDI non contiene suono ma è un file di testo contenente semplicemente istruzioni per produrre suoni, la scheda audio del computer riesce ad eseguire queste istruzioni grazie al sintetizzatore MIDI predefinito Microsoft GS Wavetable Synth, incluso nel sistema operativo.
La Wavetable è un elenco di forme d’onda combinando variamente le quali si riescono a produrre suoni ad imitazione di quelli dei vari strumenti musicali che il file MIDI richiede siano usati.
Il risultato, soprattutto secondo i puristi del suono, è disastroso: alcuni dicono che quando suona un oboe non si riesce a capire se si tratti di una trombetta del lattaio o di un kazoo.
A parte le esagerazioni, occorre riconoscere che, appena si esce dall’ambito della musica frastuono dove qualsiasi rumore va bene e si entra nell’ambito del suono vero e proprio, anche un orecchio non troppo esigente avverte che c’è qualche cosa che non va.
Sicché anche il pregio diventa un difetto.
Un rimedio è quello di collegare al computer strumenti hardware in grado di produrre suoni migliori, più fedeli al suono degli strumenti veri e propri: esistono moduli sonori, detti anche expander, di varia marca (Roland, Yamaha, Ketron, per citare le più famose) e per varie borse (da poche a tante centinaia di euro).
Per i dilettanti meno esigenti e anche per i professionisti che hanno meno da spendere per queste cose segnalo un’altra strada che prescinde dall’hardware e che attinge in massima parte al mondo del software libero: quella dei soundfont.
Dedico all’argomento l’allegato manualetto in formato PDF, liberamente scaricabile, stampabile e distribuibile.

soundfonts_in_Windows

Software libero per l’insegnamento della matematica

Qualche frequentatore di questo mio blog mi ha invitato a fare una rassegna di software disponibili per supportare l’insegnamento della matematica, con particolare riferimento alle categorie richieste nel programma ministeriale per la classe di concorso A-28 di Matematica e Scienze.
Si tratta di software di geometria dinamica per la visualizzazione e la sperimentazione geometrica, software di calcolo simbolico, algoritmi e software per la soluzione di sistemi lineari e software per la rappresentazione grafica delle funzioni.
Accolgo con favore l’invito e propongo l’allegato documento in formato PDF nel quale metto di disposizione quanto ho nel tempo sperimentato in una materia che mi ha sempre appassionato ma alla quale non mi sono mai dedicato professionalmente, se non di striscio.
Chiedo pertanto venia per qualche lacuna o improprietà sul piano scientifico.
Il documento è liberamente scaricabile, stampabile e distribuibile.

software_scienze_matematiche

Benvenuto UbuntuStudio 20 e addio KXStudio

Faccio ancora una volta riferimento all’allegato al mio articolo “Il suono di Linux” del maggio 2017 in cui avevo sommariamente descritto le tre distribuzioni Linux che, essendo basate su un kernel a bassa latenza, erano particolarmente adatte per lavorare con i suoni, l’audio e la multimedialità: UbuntuStudio, KXStudio e AVLinux.
Lo scorso marzo ho avuto modo, nell’articolo “AVLinux alla riscossa”, di descrivere cosa sia successo, da allora, a quest’ultima distribuzione, che si è ripresentata in ricca veste alla fine dello scorso anno.
Ora aggiorno la situazione sulle altre due.
Alla fine dell’appena trascorso mese di aprile, puntualmente con il rilascio di Ubuntu 20.04 LTS “Focal Fossa”, è uscito UbuntuStudio 20.04 in tutta la sua ridondante ricchezza di applicativi, tutti proposti nelle versioni più aggiornate.
E’ invece nel frattempo stata abbandonata la riproposizione della distribuzione di KXStudio, che resta ferma alla versione basata su Ubuntu 14.04 LTS. Chi voglia procurarsi l’immagine ISO di questo gioiello deve andare all’indirizzo https://github.com/KXStudio/KXStudio/releases/. Mi rendo conto che si tratta ormai di una cosa datata, ma funziona ancora benissimo e io la uso tuttora con piena soddisfazione.
Gli sviluppatori di KXStudio continuano comunque a lavorare e mettono a disposizione il software che arricchiva la loro distro a chi lo voglia utilizzare sul proprio sistema operativo, non solo Linux ma, in alcuni casi, anche Windows e Mac OS (come avviene per l’insuperabile audio-plugin host Carla).
Se andiamo all’indirizzo https://kx.studio/ scopriamo questo nuovo modo di fruire di KXStudio.
In particolare, nella pagina Repositories -> About/How-To, possiamo scaricare il pacchetto kxstudio-repos.deb, installando il quale su una distro Ubuntu (da 18.04 in poi) o Debian (da 10 in poi) realizziamo l’unificazione del repository KXStudio con quelli raggiungibili da Synaptic.
In questo modo tutta la ricchezza di KXStudio può confluire su UbuntuStudio e AVLinux, oltre che su altre distribuzioni Ubuntu o Debian.

Qtractor: una DAW per principianti, ma non solo

Su questo blog ho avuto occasione di parlare di alcuni capolavori del software libero per fare musica con il computer.
Con l’articolo “Altra musica sempre con software libero” dell’ottobre 2015 ho presentato LMMS, ideale per la produzione di brani musicali soprattutto con sonorità ed effetti diversi dal solito, disponibile per tutti i sistemi operativi.
Con due articoli, “Rosegarden come sequencer MIDI” del dicembre 2015 e “Rosegarden come DAW” del luglio 2018, ho presentato il software Rosegarden, che per gli utenti Windows funge da ottimo sequencer MIDI e per gli utenti Linux è un’ottima e completa Digital Audio Workstation.
Con l’articolo “Intelligenza artificiale per l’improvvisazione musicale” del settembre 2018 ho presentato il software Impro-Visor, ideale per la produzione di brani musicali improntati all’improvvisazione jazzistica, disponibile per tutti i sistemi operativi.
Di questi software, solo Rosegarden e solo per il sistema Linux è una vera e propria DAW, secondo me la migliore che ci sia, soprattutto sul piano del rapporto tra qualità dei risultati e facilità di uso.
Sempre riservata a chi usa Linux esiste un’altra opportunità, che si chiama Qtractor: nonostante la modestia di chi ha prodotto questo software, che lo definisce “specially dedicated to the personal home-studio”, di fatto è una Digital Audio Workstation che non ha nulla da invidiare alle più blasonate, con il vantaggio di essere abbastanza facile da usare, a portata di volonteroso dilettante.
Nel manualetto allegato, vista la carenza di documentazione in lingua italiana su questa perla, mi propongo di introdurne il suo utilizzo.
Come sempre il documento è liberamente scaricabile, stampabile e distribuibile.

qtractor

AVLinux alla riscossa

Nell’allegato al mio articolo “Il suono di Linux” del maggio 2017 ho sommariamente descritto le tre distribuzioni Linux che, essendo basate su un kernel a bassa latenza, sono particolarmente adatte per lavorare con i suoni e con l’audio; distribuzioni che, oltre a raccogliere quanto di meglio esiste per il trattamento del suono, offrono tutta una serie di altri strumenti per la grafica e il trattamento del video e costituiscono veri e propri laboratori per la multimedialità.
Delle tre, Ubuntu Studio, KXStudio e AVLinux, quest’ultima risultava la meno consigliabile in quanto la versione 2016 in circolazione a quel tempo presentava alcuni difetti, primo tra i quali quello di essere legata alla versione 1 del server audio Jack e di non essere adatta ad una convivenza pacifica tra la versione 2 di Jack, quella ormai corrente all’epoca, con l’altro server audio Pulseaudio: il tutto risolvendosi in inspiegabili mutismi del nostro sistema.
Peccato, perché AVLinux ha dalla sua il pregio di essere una distribuzione direttamente basata su Debian, molto leggera e scattante, con comportamento della massima efficienza anche su macchine vecchiotte e poco dotate.
A quasi tre anni di distanza mi sono imbattuto nella versione AVLinux del 2019 (AVLinux 2019.4.10), il cui ultimo aggiornamento è del 3 dicembre del 2019, che è tutt’altra cosa: conserva tutti i pregi e non ha più alcun difetto.
Ci possiamo procurare l’immagine ISO del sistema (file isotester-avl64-2019.4.10.iso per la versione a 64 bit o isotester-avl32-2019.4.10.iso per la versione a 32 bit) all’indirizzo http://www.bandshed.net/avlinux/.
Si tratta dell’ultima versione disponibile anche a 32 bit in quanto, da qui in poi, verranno rilasciate solo versioni a 64 bit. L’attuale versione a 32 bit non funziona comunque su computer UEFI.
Se qualcuno ha un vecchio computer a 32 bit provi a risuscitarlo caricandovi il sistema operativo AVLinux: troverà modo di divertirsi. Il sistema operativo in quanto tale è leggerissimo. Ovviamente se le risorse hardware sono limitate non possiamo pretendere di fare cose molto impegnative, soprattutto con grafica e filmati.
Senza dimenticare che AVLinux è comunque un sistema operativo Debian che ci può consentire di fare tutte le cose che fa un computer al di fuori della multimedialità: basta caricarvi il software.
AVLinux è dotato di un ricco e chiaro manuale, purtroppo solo in lingua inglese. Ne possiamo scaricare una versione PDF dallo stesso indirizzo http://www.bandshed.net/avlinux/ ma, se installiamo il sistema, ne avremo a disposizione una copia raggiungibile dal menu delle applicazioni.
Come per tutte le distro Linux l’immagine ISO può essere masterizzata su DVD o inserita in una chiavetta USB avviabile e da qui essere provata in versione live oppure installata (su computer, su chiavetta o su disco esterno) seguendo una procedura guidata a prova di errore: basta grande attenzione nella scelta del luogo dove fare l’installazione.
Per fruire della live occorre inserire come nome utente la parola isotester e come password avl64 (o avl32 se siamo sulla versione a 32 bit).
L’installazione porta con sé il meglio del software libero nel campo della multimedialità, a mio avviso con alcune imperdonabili assenze basiche (lilypond, rosegarden e qsynth): possiamo comunque rimediare subito con il gestore di programmi previo upgrade dell’apt con AVLinux Assistant che troviamo nel menu delle applicazioni.
Sempre con AVLinux Assistant, attraverso Add New System Locales, possiamo scegliere la nostra lingua preferita per l’interfaccia di sistema.
Spulciando nel mio blog si trovano molte indicazioni su come arricchire il ventaglio delle applicazioni disponibili e se vogliamo recuperare in AVLinux qualche software che gira solo su Windows teniamo presente che AVLinux è per default dotato di Wine.
Se qualche applicazione gira su Java (ad esempio impro-visor) si tenga presente che il runtime Java (JRE) non è installato per default ma occorre installarlo.
Infine AVLinux risolve al meglio la coesistenza dei server audio Pulseaudio e Jack mantenendo il primo attivo in collegamento con il secondo: in tal modo è scongiurato il pericolo di mutismi inaspettati.
Buona creatività con AVLinux.

Intramontabile BASIC

I vecchi come me ricordano certamente i tempi in cui per divertirsi con i primi piccoli computer ad uso personale che cominciarono a comparire a metà degli anni settanta del secolo scorso c’era a disposizione un linguaggio di programmazione molto più facile da imparare e da utilizzare rispetto a quelli con cui si lavorava sui grossi mainframe: il BASIC.
Per la verità anche il BASIC (Beginner’s All-purpose Symbolic Instruction Code) era nato presso l’Università di Dartmouth per agevolare l’accesso a un grosso calcolatore da parte dei ricercatori universitari di quell’ateneo, ma, grazie alla sua relativa semplicità di apprendimento e di uso, trovò diffusione planetaria con l’avvento dei piccoli calcolatori alla portata di tutti.
Ciò con il contributo determinante di due giovanotti che adattarono il BASIC di Dartmouth ai piccoli calcolatori, creando una versione del BASIC, l’Altair BASIC, per il primo computer personale comparso nel 1975, il MITS Altair 8800: i due giovanotti si chiamavano Bill Gates e Paul Allen, i quali, proprio sull’onda di questo primo successo, fondarono la Microsoft, che, di fatto, acquisì la proprietà intellettuale del linguaggio BASIC.
Da allora il BASIC ha avuto parecchie rivisitazioni, sempre ad opera o sotto licenza Microsoft.
Una prima rivisitazione libera avvenne nel 1999, quando nacque GAMBAS che portò nel mondo Linux qualche cosa di molto simile al VISUAL BASIC di Microsoft.
Una rivisitazione libera più radicale è quella del 2004, ad opera di Andre Victor, cui si deve la creazione di FreeBASIC.
Altrettanto libera la rivisitazione ad opera di Paul Laughton che ha sviluppato la versione di BASIC per Android di cui ho parlato nel mio articolo “Basic su Android” del novembre 2015 su questo blog.
FreeBASIC continua ad essere perfezionato e si susseguono rilasci a cadenza periodica: l’ultimo è del settembre 2019.
Possiamo dire che FreeBASIC è il BASIC del futuro.
E’ sempre un linguaggio abbastanza semplice da apprendere, anche se, rispetto ai tempi in cui è nato, non è più il solo linguaggio semplice da apprendere ed ha buoni concorrenti su questo piano: anzi, forse ve ne sono ormai di ancora più semplici.
Ereditando la tradizione del vecchio BASIC, concepito con arricchimenti di programmazione grafica adatti per creare i primi video-giochi, pur rudimentali rispetto a ciò che si fa ora, FreeBASIC ingloba una libreria grafica di tutto interesse.
Per chi voglia approfondire allego una introduzione al linguaggio che mette in grado chiunque, anche i principianti, di creare qualche programma.
Il documento è liberamente scaricabile, stampabile e distribuibile.

freebasic

Godiamoci la nostra raccolta musicale con il computer

Sicuramente il modo migliore di assaporare la musica è udirla dal vivo. Tanto meglio se in una sala con buona acustica e in presa diretta con lo strumento o gli strumenti che la eseguono, senza amplificazioni.
Anche quando gli strumenti sono per loro natura amplificati, come gli strumenti a corda elettrici, o se ne amplifica il suono per elevare i decibel, conviene sempre l’ascolto diretto, questa volta magari non in una sala ma in uno stadio.
Ma è così bello ascoltare la musica che siamo disposti, sicuramente rinunciando a parte dell’emozione, ad ascoltarla anche lontano da dove viene prodotta, avvalendoci di supporti fonografici sui quali è stata registrata: dischi vinilici, nastri magnetici, dischi ottici.
Con l’affermarsi della registrazione digitale dei suoni siamo anche arrivati alla così detta musica liquida, quella disponibile unicamente sotto forma di file digitali e fruibile senza il tradizionale supporto fonografico.
Attraverso i supporti fonografici o i file digitali possiamo così creare la nostra raccolta musicale ed avere a disposizione la musica preferita per ascoltarla quando e dove vogliamo.
In tutto questo il computer potrebbe anche non servire, visto che la musica sui supporti fonografici è riproducibile con apparecchiature dedicate e che i file digitali possono essere scaricati da Internet con un semplice smartphone e la musica che contengono può essere riprodotta con lo stesso smartphone o altre apparecchiature dedicate.
Invece, soprattutto se la nostra raccolta musicale è ampia e variegata e se vogliamo gestirla come si deve quanto a catalogazione e differenziazione delle possibilità di ascolto, può essere molto utile avvalerci di un computer.
Nell’allegato manualetto, in formato PDF, ho raccolto una serie di indicazioni che ritengo utili per chi voglia approfondire il discorso.
Il documento è scaricabile, stampabile e distribuibile senza problemi.

musicoteca

Tcl/tk: un tesoro nascosto

Chi lavora su un personal computer con sistema operativo Linux o su un Mac con sistema operativo OS X molto probabilmente non sa di avere a disposizione l’interprete per uno, si dice, dei più facili linguaggi di programmazione esistenti, addirittura con la possibilità di creare applicazioni dotate di interfaccia grafica.
Per rendersene conto basta aprire il terminale, digitare il comando tclsh e premere Invio: immediatamente compare un prompt contrassegnato dal simbolo %, pronto a ricevere ed eseguire comandi scritti nel linguaggio Tcl.
Se usciamo da questo prompt premendo insieme i tasti Ctrl e D e poi digitiamo il comando wish e premiamo Invio ricompare il prompt contrassegnato dal simbolo % e a lato del terminale compare anche una finestrella vuota: ora il linguaggio Tcl è arricchito dal tool Tk, che serve per creare interfacce utente grafiche.
Chi lavora su Windows può pure godere di queste meraviglie del software libero ma deve procurarsi quanto serve e caricarselo sul computer.
A chi sia interessato ad apprendere le basi di questo linguaggio di programmazione per vedere come funziona e magari per servirsene, data la carenza di documentazione in lingua italiana alla portata di principianti dilettanti, propongo il manualetto allegato in formato PDF.
Come sempre si tratta di materiale liberamente scaricabile, stampabile e distribuibile senza alcun problema.

tcl_tk

La blockchain secondo Python

Con il mio articolo del marzo 2018 “Software libero per la blockchain” sottolineavo come il primo software per la tecnologia blockchain, quello utilizzato per la realizzazione del Bitcoin, fosse software libero.
Con il successivo articolo del dicembre 2018 “Sempre software libero per perfezionare la blockchain” rilevavo come anche il software per i perfezionamenti che hanno portato all’evoluzione Blockchain 2.0 sia stato sviluppato all’insegna dell’open source, costituendo anzi l’occasione per affermare l’opportunità che software di tipo infrastrutturale come questo siano sviluppati in maniera collaborativa: da qui il progetto Hyperledger Fabric promosso da IBM all’interno della Linux Foundation.
Un lettore di questi articoli, lo scorso luglio, apprezzando le informazioni, mi invitò a parlare anche di cosa si potesse fare con Python per la blockchain.
Dopo qualche ricerca e sperimentazione sono in grado di segnalare qualche cosa di concreto che è maturato nel mondo Python, sicuramente utile per capire cosa sia la blockchain nell’intimità e per creare una vera e propria blockchain.
Nell’allegato manualetto in formato PDF, dopo una piccola introduzione esplicativa terra a terra utile per capire di cosa stiamo parlando, segnalo alcune possibilità di approfondimento per chi vi fosse interessato.
Come sempre si tratta di documentazione liberamente riproducibile e distribuibile.

blockchain_python

Newlisp

Nel mio articolo “Lisp sempreverde” del maggio 2015 ho parlato di come il vecchio linguaggio di programmazione LISP, concepito nel lontano 1958, avesse ritrovato una delle sue tante vite grazie ai recenti sviluppi di una nuova versione, chiamata NewLISP, ultima arrivata di altre, come il Common LISP, l’Emacs LISP, l’AutoLISP, ecc.: alcuni chiamano queste versioni “dialetti”, ma trovo questo termine troppo dispregiativo, soprattutto se riferito a NewLISP.

In quell’articolo ho illustrato brevemente alcune caratteristiche del NewLISP riferendomi alla versione di allora, la 10.6.2, già particolarmente ricca di utilissime funzioni preconfezionate. Nei quattro anni che sono trascorsi si sono susseguiti parecchi perfezionamenti, soprattutto dedicati all’arricchimento delle funzioni preconfezionate, e siamo arrivati alla versione 10.7.5, rilasciata il 12 maggio 2019.

Dal momento che qualche frequentatore di questo blog ha osservato che il contenuto del mio articolo aveva il difetto di poter essere compreso solo da coloro che già conoscevano il LISP, ho ritenuto di rimediare proponendo l’allegato manualetto nel quale, rivolgendomi al mio solito pubblico di dilettanti evoluti, descrivo le basi del linguaggio in modo che il lettore possa cominciare a sviluppare qualche programmino e rendersi conto di quanto possa essere affascinante programmare con NewLISP.

Come sempre, il documento è liberamente scaricabile, stampabile e distribuibile.

newlisp