Archivio | Miei Progetti RSS for this section

MarkovEX è tra noi! Generative Music Compositions

MarkovEX logo

Oggi è finalmente giunto ad una release funzionante, il progetto MarkovEX.

MarkovEX è un programma per la creazione di musica generativa con una struttura ben definita. La componente random del sistema permette di generare musica sempre nuova (e potenzialmente di durata infinita), ma il susseguirsi delle note presenta una struttura di fondo data da una catena di Markov del secondo ordine.

MarkovEX è in grado di analizzare file midi trattandoli come realizzazioni di un processo stocastico associato ad una particolare catena di Markov. L’obiettivo di questa analisi è cercare di ricavare la catena di Markov del secondo ordine associata alla traccia musicale. Una volta fatto questo, salva i risultati su file in modo da poterli aprire (sempre con MarkovEX) e farli suonare sul sequencer ALSA, creando di volta in volta nuove melodie che però hanno sempre un po lo stesso sapore.

Il modello usato è del secondo ordine in quanto il primo ordine non è sufficientemente “strutturato” per poter generare musica “simile” al file midi originale. Passando all’ordine successivo invece, si rende la sequenza di note maggiormente correlata.

Provare per credere 🙂

Per ora lo potete trovare su GitHub a questo indirizzo

git://github.com/axeldamage/Markovex.git

Saluti 🙂

 

Annunci

Voronoi Art Project

Con le moderne tecnologie, anche l’arte è sempre più contaminata dalla scienza in generale o in particolare dalla computer sience.

Un esempio è la composizione algoritmica di musica, come la musica generativa che fra varie tecniche fa ampio uso di teorie come, per dirne una, le catene di Markov.

Per quanto riguarda la computer grafica invece, di recente sono stato attirato dall’utilizzo dei cosidetti Voronoi diagram. Questo diagramma non fa altro che delimitarmi delle aree attorno a questi punti secondo un criterio di nearest neighbors, ovvero mi traccia dei confini che mi definiscono il perimetro a minima distanza dal punto in esame il quale è detto centroide. In parole povere, se punto il dito a caso, basta vedere in quale area sono finito, e il punto a minima distanza dal mio dito è proprio il centroide di quell’area.

In rete sono presenti alcuni esempi di intrepidi sperimentatori. L’unica cosa che non mi piace, è che alla fine per ottenere dei risultati decenti è sempre necessaria la mano e il gusto dell’uomo. Nel caso dei Voronoi diagram, questo significa definire “a mano” la popolazione di punti che poi andrà a formare il diagramma.

A questo punto mi sono chiesto se fosse possibile automatizzare la cosa. La chiave di volta sta appunto nel trovare un sistema algoritmico per ricavare questa nuvola di punti che in un certo qual modo ricordi l’immagine originale. Per dirla in parole povere, questa nuvola dovrebbe essere più densa nelle parti scure dell’immagine, e più sparsa nelle parti chiare.

Pensa e ripensa (mille metodi possibili, tra cui la segmentazione dell’immagine in base a proprietà di istogramma o criteri di gradiente minimo… troppo pesanti) e la soluzione è arrivata, semplice e veloce. Così apro Matlab, compagno fidato di mille avventure 🙂

Non vi voglio svelare tutti i trucchi, ma voglio darvi un’idea di quello che ho realizzato.

Dopo aver convertito in scala di grigi l’immagine prescelta da “Voronoizzare”, ho creato un’altra immagine vuota alla quale ho aggiunto del rumore di tipo salt&pepper. Questo tipo di rumore approssima abbastanza bene il problema dei pixel bianchi/neri dei vari sensori CCD (nda. per ridurlo funziona molto bene il filtro mediano). Questo salt&pepper viene poi discriminato pixel-by-pixel con una probabilità proporzionale alla luminanza (B/W) del singolo pixel. In questo modo nelle parti scure ho maggiore probabilità che il salt&pepper “sopravviva”.

Non voglio aggiungere altro, quindi vi lascio con un’anteprima visuale! 🙂

voronoi image

chi indovina il personaggio vince un lolcat 🙂 (click per ingrandire)

Nuovo sito

La necessità di avere uno spazio web da usare per pubblicare vari file che non trovano spazio in questo blog, mi ha fatto prendere la decisione di aprire un nuovo sito su netsons.

Netsons offre hosting gratuito, e a possibilità di utilizzare php e mysql. Per le mie esigenze è più che sufficiente.

Mi sono messo di buona volontà e ho buttato giù 4 paginette.

Q: Cosa possiamo trovare in questo sito?

A: Beh, qui pubblicherò tutti i file audio, video, documenti, pacchetti debian, patch, plughin, etc… dei quali parlerò in questo blog, ma che non posso uppare su questo blog. Quindi, i nuovi post che pubblicherò qui e che saranno corredati di “allegati multimediali“, avranno questo allegato pubblicato sul mio nuovo sito su netsons.

Ovviamente questo sito ha vita propria, ovvero è completamente indipendente da questo blog, quindi c’è la possibilità che vi sia pubblicato materiale senza che sia creato necessariamente un nuovo post qui!

Ed ora… cosa aspettate? correte a fare un giro sul NUOVO SITO! 😉

Cassa 2×12 on stage

Finalmente è arrivata al termine anche la fase di costruzione della cassa per chitarra 2×12.

I test non sono stati moltissimi, ma da quello che ho sentito, la cassa ha una buona botta sulle basse (calcolando che uso un Marshall :D) e degli alti ben definiti, anche se la presenza sembrerebbe un po scarsina. Questo problema però potrebbe essere causato dal fatto che le valvole del pre sono da cambiare.

L’imposizione di usare 2 altoparlanti di marche diverse (un RCF e un C.I.A.R.E.) aumentano le possibilità timbriche in fase di registrazione microfonata, ma non intaccano + di tanto le performance “live”.

Ecco di seguito alcune foto (clicca per ingrandire)  😉

dscf3115.jpgdscf3116.jpgdscf3117.jpgdscf3118.jpg

Come si può vedere, la griglia che protegge i coni è a maglia larga, anche se molto robusta (è una retina metallica). Quindi penso di prendere della tela per coprirla in modo da non lasciare i coni in vista.

Togliere i tasti alla chitarra!

Il mese scorso, durante un pomeriggio domenicale in cui la noia stava per diventare il mio miglior passatempo sono stato vittima di un raptus lutaresco al quale non ho saputo deristere.

Così, mi sono armato di scalpello, stucco e carta vetrata e ho deciso di estirpare i fret alla mia chitarra da battaglia.

Prima di tutto spieghiamo cos’è la chitarra da battaglia.

Questa chitarra mi fu stata donata da un amico diversi anni fa… è (credo)  una chitarra di origini cinesi. Era un po messa male, così ho deciso di rimetterla in sesto. Meccaniche ricromate, elettronica rifatta, riverniciatura e creazione di un nuovo battipenna in madreperla disegnato da me.

Così nacque la: FendiNebbia Multistratocaster Special 😀

Ed è rimasta così per un bel po… fino a qualche giorno fa… ed ora è un nuovissimo strumento fretless.

Come potete vedere ho usato uno stucco di un colore diverso dal legno per facilitarmi l’utilizzo di questa chitarra, anche perché sono un chitarraro autodidatta e con nessuna esperieza di strumenti fretless. Quindi finché non imparo, va bene così!! 😀

Ecco  alcune foto (clicca per ingrandire)

dscf3119.jpgdscf3120.jpgdscf3121.jpgdscf3122.jpg

Absinthe

Nei piccoli ritagli di tempo che l’università mi permette, riesco a dedicarmi a un progetto che inseguo da tempo: quello di costruirmi un sintetizzatore modulare completamente analogico.

Per capire meglio cos’è un sintetizzatore, basta cliccare sul link precedente per vedere la pagina della WikiPedia.

Intendiamoci: non parto a progettare un sintetizzatore da zero, anche perché qualcuno ci ha già pensato prima di me :).

Gli schemi a cui faccio riferimento sono interamente (credo!) progettati da un certo Ray Wilson e potete trovarli sul sito MusicFromOuterSpace. Dove ci sono tutti (e anche di più) gli schemi circuitali dei moduli che servono per avere un sintetizzatore modulare completo e funzionale. Come primo obiettivo pensavo di realizzare una decina di moduli che sono quelli basilari per avere un buon “parco” di suoni.

Nel frattempo mi sono divertito a costruirmi i vari moduli come patch per OM-Synth che è un software che funge da Realtime modular Synthesizer che si appoggia sui plugin (Omins) LADSPA e DSSI per la generazione/elaborazione dei segnali audio. Il mio attuale lavoro consiste nel ricreare i vari moduli con le connessioni (In e Out) che avrebbero nella realtà, in modo da poter testare le possibilità timbriche del mio futuro (SE arriverò alla fine 😀 ) progetto hardware vero e proprio.

Ecco un assaggio dello stato attuale delle cose

Om-Synth Absynthe

Cliccate sull’immagine per vederla tutta!

Come ho detto, per ora è solo un prototipo software funzionante (spero di mettere on-line qualche sample).

Per saperne di più ecco uno schema molto semplice e chiaro, disegnato da Ray Wilson, che illustra come funzionano e come connettere tra loro i vari moduli del sintetizzatore.

Analog Synth Block Diagram

Per chi volesse provare le mie patch per om-synth sono scaricabili qui.