Progetto H-Ard

 

 

 

clip_image002[1]

(scarica il documento in formato PDF)

Il progetto H-Ard nasce da due esigenze ben precise.

Come sviluppatore software, da sempre vivo il conflitto digitale / analogico, realtà incompatibili e filosoficamente inconciliabili, che non dialogano se non a basso livello o attraverso interfacce preposte.

Esistono sistemi, mezzi e strategie, spesso arcani trucchi o costosi trasduttori laddove anche l’accensione di una lampadina e la lettura di un interruttore, diventano un problema.

L’altro bisogno, meno materiale, direttamente collegato al MOVIMENTO PARTICELLARE, è il rapporto cercato, voluto, spiegato e prodotto del Suono, Non-Suono, il bisogno di una nuova espressione musicale atonale, senza alcun sviluppo armonico, aritmica eppure non confusa, una forma di stilizzazione estrema capace di essere sintesi, macrocaotica eppure definita al suo interno. Audio Particellare appunto.
Nulla di nuovo sotto il sole comunque, soltanto l’applicazione di ciò che Arnold Schönberg aveva già sintetizzato con la formula “nella musica non c’è forma senza logica e non c’è logica senza unità”, innalzando la regola a costrutto sintattico fondamentale.

La soluzione ad entrambi i bisogni passa attraverso un piccolo ed efficiente microcontrollore: Arduino.
Progetto e realizzazione tutta italiana, Arduino del quale invito a visitare il sito principale e ad approfondire le caratteristiche, offre l’opportunità di far dialogare digitale e analogico e non solo, perchè attraverso la programmazione in C di codice che grazie ad un IDE che è ambiente di sviluppo e bootloader, viene caricato direttamente sulla memoria flash dell’hardware, potendo gestire le porte di entrata e uscita come si desidera.
In sintesi, alimentato anche con i 5 Volt USB, Arduino standard (Uno o Duemilanove), , offre 6 porte di input analogiche che gestiscono valori discreti da 0 a 1023 e 14 porte digitali sempre in I/O, delle quali due sono riservate a Rx e Tx seriale.

Assieme al microcontrollore, sono proliferati decine di cosiddetti shields, speciali interfacce hardware acquistabili online spesso per non più di qualche euro, che affiancandosi alla tradizionale componentistica elettronica (potenziometri, led, sensori, pulsanti ecc.), semplificano ulteriormente lo scambio d’informazione tra i domini analogici e digitali.

Da qui a realizzare una console MIDI, protocollo che ricordiamo viaggia su interfaccia seriale, è solo questione di idee.

Il progetto H-Ard si compone quindi di due aspetti distinti, ben precisi, dipendenti tra loro eppure opposti: hardware e software. Assieme formano un’unità che chiameremo AudioDrone


H-Ard – Hardware

Nel progetto H-Ard, l’hardware è un guscio dalle caratteristiche uniche ma riutilizzabile, un insieme di elementi di input/output che di volta in volta possono avere funzioni diverse. Non è un caso che le due console principali siano estremamente simili in quanto simili sono gli utilizzi. In cantiere vi sono progetti molto diversi ma limitiamoci all’esistente.

H-Ard Console 0

 

clip_image004[1]La prima console utilizzata è in realtà il compito conclusivo del workshop tenuto dal sound designer Andrea Sartori .

Stiamo parlando di un progetto che prevede l’uso di 4 potenziometri, 12 tasti a simulare un ottava di tastiera e di un distanziometro ad infrarossi utilizzato in variazione CC a simulare un effetto Theremin.

 

clip_image006[1]

Di uso generale e generalizzato, è la console da utilizzarsi in fase di test e produzione musicale quando non si necessita alcuna interazione con altri tipi di sensori oltre quelli presenti.

La sua ordinata e stabile intelaiatura consente una facile trasportabilità ma nel contempo un’intrinseca rigidità progettuale.

 

 

H-Ard Console 1

clip_image008[1]Progetto originale pur sfruttando l’impostazione del suo predecessore. Nasce fondamentalmente per gestire tutte quelle situazioni in cui c’è bisogno di interfacciarsi col mondo esterno attraverso nuovi sensori ed è per questa ragione che il progetto originale prevede una breadboard indipendente sulla quale utilizzare uno o piu’ componenti aggiuntivi.

 

 

clip_image010[1]Sempre dotata di 4 potenziometri, rinuncia a gran parte dei tasti lasciando liberi i pin digitali per altri scopi e delegando i 4 tasti rimanenti ad un ruolo di gestione o manutenzione e solo in parte utili in senso stretto alla musica. Inoltre ed è una novità rispetto la console di base, 3 led all’occorrenza facilmente espandibili a 4, provvedono a mandare segnali sullo stato dei comandi o dei sensori.
Gestiti a piacere dal software, visualizzano informazioni diverse a seconda del programma.
E’ previsto inoltre un input analogico mobile (A4) per collegamenti volanti da utilizzarsi all’occorrenza e come visibile in foto ma non nel progetto, un beeper utile soprattutto in fase di debug.

 


H-Ard Console 3

Sorge spontaneo chiedersi dove sia finita H-Ard Console 2, ammesso esista.

Si, esiste per quanto non sia mai divenuta operativa ma andiamo per ordine.

clip_image004[1]H-Ard Console 3 nasce da una serie di esigenze. La prima è di non rimanere vincolati al lato fisico dell’hardware, ovvero poter disporre di un numero variabile di potenziometri e inoltre qualcosa di facile trasporto e compatto.
L’altro bisogno, più pressante del primo, era di poter vedere finalmente visualizzati i valori segnati dai regolatori e smetterla di affidarsi al caso e all’esercizio.
Ebbene ecco spiegato come vi sia stata una H-Hard Console 2 che ha visto implementare il Joypad Shield al posto dei normali potenziometri, attraverso l’attivazione dei tasti che modificano funzioni corrispondenti ai potenziometri regolati col movimento sull’asse Y. Essendo una emulazione e non un progetto capace di nuove funzioni, ovviamente non ha prodotto progetti ad-hoc, lasciando in apparenza il vuoto dietro di se’.
clip_image002[3]Con l’aggiunta del display Nokia 5110, LCD grafico 84×48 pixel, finalmente si è potuto trasformare visivamente i valori e i settaggi che in tempo reale possono essere regolati con precisione assoluta.
I quattro tasti scelgono quindi un potenziometro virtuale e gli spostamenti verticali ne alterano il risultato.

L’asse X invece è dedicato esclusivamente alla regolazione del volume o meglio del velocity.
Altri due tasti sono adibiti a funzioni varie e l’ultimo, attivato con la pressione del joystick, accende e spegne le sequenze Midi.
Una prima versione del progetto si può vedere nel video

http://youtu.be/6JKu3mHvXrY

http://youtu.be/6JKu3mHvXrY

o nella sua fase avanzata

http://youtu.be/9TN5x7N3TBE

http://youtu.be/9TN5x7N3TBE

Essendo tutto visualizzato e tutto parametrizzato, ogni funzione può essere creata e replicata. Ora sono gestiti cinque potenziometri ma facilmente possono essere raddoppiati o triplicati.
La gestione hardware e soprattutto la visualizzazione non sono pero’ semplici ammennicoli estetici perchè aprono le porte a nuovi progetti prima irrealizzabili. Vediamo l’audiodrone H-Ard Madrox.


H-Ard – Software

Letteralmente il “ghost in the shell” del progetto.

Software che compone, instillare nella macchina un determinismo comprensivo anche di casualità col fine di generare suoni con una logica e una coerenza interna che al meglio rispetti rigide regole meccanicistiche e che nel contempo soddisfi il gusto estetico ed un equilibrio se non armonico almeno logico.

Per fare questo serve però trasformare il caso in causale, far rientrare nel computo delle costanti algoritmiche, la randomizzazione degli eventi. In sostanza tentare non tanto la generazione di suoni casuali quanto attraverso l’indeterminato ottenere un risultato non prevedibile ma circoscritto ad un ben preciso insieme di scenari. D’altro canto l’obiettivo sotteso alla musica generativa è creare una sorta d’intelligenza che tenda a un’armonia strutturalmente coerente piuttosto che ad un risultato dal ferreo rigore tecnico.

E’ in quest’ottica quindi che i progetti per quanto differenti e di differenti regole, concorrono allo scopo di generare suoni e musica (nessuna differenza per il Suono, Non-Suono). Il software elabora e con la voce dell’hardware, dialoga col PC attraversando il tunnel del protocollo MIDI. Le sequenze di note generate vengono trattate a questo punto come provenienti da un qualunque strumento MIDI ed è attraverso la distribuzione in tracce, l’attribuzione di strumenti, la creazione di effetti o la parametrizzazione dei suoni, che si ottiene il risultato finale.

L’intervento umano, per quanto negato in senso stretto dalla musica generativa, resta volutamente fondamentale all’interno del progetto, sia nel cambio in realtime dei parametri di volta in volta prefissati dal software attraverso l’H-Ard Console, poi nella pre e post elaborazione del brano una volta che lo score MIDI è inciso. Ovviamente non v’è alcun impedimento al sovrapporre o affiancare tracce melodiche o di effetti attraverso i metodi compositivi tradizionali.

Viene da sé che la validità di molti progetti è da ricercarsi negli aspetti più concettuali e dove dal punto di vista strettamente sonoro, le dissonanze non evocano un particolare appeal, l’occhio e l’orecchio devono puntare all’idea sottesa dell’impianto algoritmico come si vedrà con parecchi esempi.

La ricerca ha preso diverse direzioni di massima circoscrivibili nell’utilizzo o meno di sensori. Se da un lato vi sono progetti nel quale il software relega l’intervento umano a pochi parametri (velocity, durata, numero di note), in altri casi il sensore diviene interfaccia per suonare letteralmente, come ad esempio H-Ard LightSens, dove l’intensità della luce puntata sulla console, determina l’altezza del tono.

Da un punto di vista strettamente filosofico, le differenze sono importanti ma resta invariata la valenza concettuale dei progetti e l’intervento casuale/causale che di volta in volta atomizzano l’armonia sue nelle PARTICELLE fondamentali.

Passiamo ora ad elencare alcuni dei progetti principali ma prima la legenda delle annotazioni.

Con POT1, POT2 s’intende numerare i POTenziometri mentre con TASTO1, TASTO2 i pulsanti.

Nelle console per convenzione vanno da sinistra a desta, dal più piccolo al più grande e solitamente coincidono con i pin digitali o analogici nel medesimo ordine.

Col termine Velocity, s’esprime il volume della nota. Il range di valori va da 0 a 127 perchè è così che si esprime nel protocollo MIDI (7 bit).

Ascolto H-Ard Project

clip_image012[1]

H-Ard Randomizer (Rev. 1, 1.2): H-Ard Randomizer è stato il primo AudioDrone utile realizzato.

POT1: Distanza casuale tra le note sdoppiate su due ottave sopra e sotto F3
POT2: Durata della nota (300-3000 ms)
POT3: Velocity (0-127)
POT4: On/Off (>63)

Un piccolo aneddoto. Il primo software elaborato sulla base del progetto originario uscito dal workshop, banalmente scambiava due cifre nella velocità della seriale del protocollo MIDI.

Minuscola imperfezione che di fatto impediva la giusta sincronizzazione delle informazioni, ottenendo quindi effetti indesiderati nei pattern. Indesiderati si ma alla resa dei conti molto suggestivi al punto che, una volta risolto il problema, ho cercato di riprodurre quella casualità questa volta però nel pieno controllo del risultato.

La prima versione prevedeva la generazione casuale di una singola nota di durata variabile gestita da POT2 in un range di tre ottave. Ogni nota portava con sé due note gemelle e opposte in un range di due ottave con la distanza determinata da POT1.

La release 1.2 sostanzialmente non cambia nulla oltre ad un perfezionamento dell’algoritmo che elimina latenze ed asciuga lo score da spurie ed imperfezioni.

Tracce esempio

H-Ard – 02 – Randomizer 1

H-Ard – 03 – Randomizer 1 Rev.2


H-Ard Randomizer 2: L’algoritmo definitivo.

POT1: Numero di note (0-25)
POT2: Durata della nota (300-3000 ms)
POT3: Velocity (0-127)
Tasto0: Noise button

Il principio è il medesimo di H-Ard Randomizer 1 ma con tutt’altro risultato. Il POT1 ora funge da On/Off e sceglie il numero di note che devono suonare contemporaneamente. Il limite inferiore e’ due ottave e mezzo al quale vanno sommate 5 ottave per il limite superiore.

Senza essere indicato nelle tracks v’è stata un’ulteriore e importante subrelease seguita da una minore.

Se in primo momento le note generate si distanziavano nel tempo di circa 20 ms ognuna, quindi in un’ipotesi di 10 note, tra la prima e l’ultima 200 ms, a variazioni fatte il punto d’inizio viene determinato dall’attivazione di POT1, ovvero iniziando con una singola nota, la seconda se attivata ad esempio dopo 300 ms, quella sarebbe stata la distanza tra le due.
S’intende che un incremento brusco di POT1 generi molteplici note con la medesima origine temporale. Terminata la durata prefissata da POT2 al momento della generazione, una nuova nota di posizione casuale ne prende il posto fino al completamento del numero prescelto.

La successiva implementazione introduce il Tasto0, un’esplosione tonale che casualmente genera da 12 a 24 note di durata casuale da 30 ms a 20000 ms, velocity da 10 a 127, sparpagliate da 2 a 7 ottave con un algoritmo graduale che tende a schiacciare tra loro le prime note e proiettare in alto le ultime in progressione lineare. Anche lo start di ogni nota può variare da 0 a 2000 ms rispetto il tempo 0 d’inizio.
Il flash tonale congela lo stato delle note al momento della sua interruzione per riprenderle esattamente dallo stesso punto quando l’ultima delle note “esplose” termina la sua durata.

L’algoritmo finale è stato completato non senza avvicinarsi con una certa progressione e affinamento del risultato. Vediamo un esempio dove ogni fase rappresenta un diverso momento dello sviluppo.

clip_image014[1]

Fase 1: I cicli non si chiudono, note che sfuggono ingestite mentre altre s’inquadrano troppo in durata e inizio. L’effetto è complessivamente buono ma poco controllo.

Fase 2: La distribuzione migliora ma il flash casuale alla battuta 11, 41, 73 è schiacciato sui due assi.
Come non ci fosse.

Fase 3: Tentativo di ripresa di sincronizzazione delle sequenze base dopo sequenze casuali.
Le informazioni si perdono, non funziona. L’effetto complessivo non cambia ma non è ciò che voglio

Fase 4: Le sequenze ora riprendono dopo il flash casuale ma questo ancora non ha abbastanza respiro in durata. L’algoritmo genera ora su due ottave in più

Fase 5: Tutto ora funziona. Le note sono ben separate tra loro, il flash casuale si allarga e si allunga come dovrebbe, le sequenze interrotte ricominciano come dovuto, i volumi sono coerenti, il numero di note preciso e calibrato.

clip_image018[1]

Progetto H-Ard Randomizer 2 (Vol. 1 e 2)

Tracce esempio

H-Ard – Randomizer 2 – Song 8

H-Ard – Randomizer 2 – Song 12


H-Ard CW (Rev. 1, 2): La musica che racconta.

POT1: On/Off (>63)
POT2: distanza casuale tra le note sdoppiate su due ottave sopra e sotto F3
POT3: Velocity (0-127)
POT4: inclinazione punto/linee
TASTO3: Attiva/disattiva debug

Certamente il più concettuale di tutti i progetti. Si voleva far recitare un testo ad H-Ard e nell’ovvia impossibilità del riuscirci e soprattutto nell’intento di trasformare la parola in musica, la sfida era di trovare un sistema in grado di generare una sequenza di toni dotati di senso ed estetica.

La soluzione è passata attraverso un passaggio intermedio, una doppia trasformazione ottenuta prima in CW o codice Morse e dopo in suoni.

clip_image020[1]Uno score MIDI è formato da segmenti a diverse altezze verticali (asse Y) che rappresentano il tono e uno sviluppo orizzontale (asse X) dove la lunghezza rappresenta la durata nel tempo.
Il sistema a punti (dot) e linee (dash) è quindi un naturale spartito atonale dotato però di un suo ritmo che varia in funzione della lettera rappresentata.

Vediamo quindi come diventa il nome “MAX SCORDA” (vedi tabella)

 

        M    A      X          S     C        O     R    D     A

clip_image022[1]

 

 

E’ evidente come possa essere un risultato suggestivo ma poco interessante sul piano musicale ed è per questo che attraverso il POT2 si può intervenire sulla distanza di ogni lettera da un punto centrale, nota MIDI 65, circa 5 ottave e mezzo, definendo un range nel quale casualmente il tono può spostarsi e per imprimere ulteriore slancio alle variazioni, col POT4 si interviene sull’inclinazione dei punti e linee che compongono la lettera dove in modo casuale l’algoritmo sceglie il grado di inclinazione e la direzione (alto o basso).

Ecco come “MAX SCORDA” si trasforma dal monodimensionale “flat” precedente al bidimensionale

M    A      X          S     C       O     R    D     A

clip_image024[1]

clip_image026[1]Per essere ancora piu’ chiari, nella foto a fianco vediamo come applicando progressivamente maggiore inclinazione col POT4, poi aumentando la distanza col POT2, il testo lentamente diverga in nuove e più interessanti configurazioni.

 

clip_image028[1]

Progetto come detto, dalla valenza concettuale più che musicale, ben si sposa con un’ideale installazione artistica e quale miglior candidato del Futurismo nelle sue molteplici estensioni, incarna l’dea di trasmutazione filologica, di conversione del lessico in rumore, di multimedialità fonetica.

La prima traccia realizzata non poteva che essere dedicata a Filippo Tommaso Marinetti in persona e ad un estratto del suo poema “All’automobile da corsa” con l’intervento umano limitato ad allontanare le lettere, quindi note dal centrale F3 e a decidere il velocity.
Questa prima versione prevedeva soltanto l’inclinazione dei segmenti fissa ed immutabile.

Arrangiamento su due tracce Morse, altre due di base bitonale e l’ultima di effetti.

Veemente dio d’una razza d’acciaio, Automobile ebbrrra di spazio che scalpiti e frrremi d’angoscia rodendo il morso con striduli denti. Formidabile mostro giapponese, dagli occhi di fucina, nutrito di fiamma e d’oli minerali, avido d’orizzonti e di prede siderali scateno i tuoi giganteschi pneumatici

H-Ard – 04 – CW1 – All’automobile da corsa

Un secondo esempio riguarda indirettamente Marinetti con un poema a lui dedicato, “Marinetti Caffeina” di Farfa. Nulla cambia nella sostanza rispetto il brano precedente con l’aggiunta però dell’inclinazione delle note.

Marinetti caffeina d’Europa proveniva da Castellamonte sopra un’antiquata caffettiera e tutto il treno parve allora una bandiera incalliginita a lutto sull’asta del camino grottescamente piantata di traverso sulla fronte corrugata del sorpresissimo universo

H-Ard – 05 – CW2 – Marinetti caffeina

clip_image032

Un’ultima annotazione. L’audiodrone H-Ard CW se configurato in modalità debug (nessuna trasmissione MIDI, velocità seriale abbassata a 9600 baud) prevede l’output su buzzer sincronizzato con il led integrato, diventando di fatto un traduttore di testo in codice Morse e conservando la propensione all’installazione.

Per questa ragione ed in quest’ottica è possibile vedere un esempio su http://youtu.be/3GcPts01xzU dove H-Ard CW legge H-Ard CW 1 legge un estratto da “S.Ospeso” (monologo teatrale in un atto breve) di Fabrizio Loschi (progetto “H-Ard CW 1 Rev.2” Arduino Uno + prototype shell)

H-Ard CW 1 legge Fabrizio Loschi

H-Ard LightSens: La luce è suono ad una diversa frequenza.

POT3: Velocity (0-127)

Dopo una serie di esperimenti legati maggiormente alla pura ricerca sonora invece che all’intervento umano, torna l’interazione con la macchina attraverso il sensore di luce.

clip_image034Trasduttore di piccole dimensione e di facile utilizzo, collegato ad H-Ard, rileva la quantita’ di luce circostante e la traduce in un valore da 0 (buio assoluto) a 127 (luce diretta massima).

Il software dopo una prima lettura della luminosità’ ambientale che pone in scala a valore minimo, legge ogni variazione d’intensità luminosa ponendo i nuovi massimi come massimi assoluti.

E’ facile a questo punto scalando massimo e minimo, generare toni di estensione di 6 ottave circa (da 4 a 10). Per aumentare la spazialità del campo sonoro, la stessa nota è duplicata 3 ottave più in basso.

Dotandosi di una o più torce luminose e puntandole da diversa distanza e con diversa intensità sul sensore, si può materialmente suonare gli strumenti in input sulle tracce MIDI. Se non vi sono variazioni luminose, l’ultima nota generata viene prolungata all’infinito quindi eventuali effetti sonori dinamici, danno un giusto affetto ambient alle composizioni.

clip_image036

Nell’immagine è ben visibile il tratto irregolare dello score che conferisce al suono una fluidità che si sposa egregiamente a suoni eterei e soft.

Tracce esempio

H-Ard – 06 – LightSens 1

H-Ard – 07 – LightSens 2


H-Ard Triads: Dis/This-Order.

POT1: On/Off (>16 attiva, da 64 a 127 ritardo start toni da 0 a 20)
POT2: durata della nota (300-10000 ms)
POT3: Velocity (0-127)
POT4: accordo di basso (>16 attiva, >63 solo basso)
TASTO0: Noise Button

Progetto di pura matematica audiogenerativa.
Si inizia con una triade armonica le cui regole permettono ad ogni nota di salire o scendere al massimo di tre toni a condizione che non impattino contro i propri limiti superiori ed inferiori (note MIDI 52-112) definiti dagli altri toni e da un tetto massimo e minimo. Il POT1 oltre un certo valora, controlla anche un allungamento del tempo, deciso dal POT2 (da 300 a 10000 ms), stabilito in un range da 0 a 20% per il secondo tono e il terzo come suo doppio. Con ciò si vuole ottenere una sorta di arpeggio o almeno scardinare il tonfo monolitico dell’accordo al suo presentarsi.

Col POT4 si attiva una seconda linea di accordi di basso (note MIDI 24-51) combinata o da sola, ricavata dalla proporzioni della prima in distanza tra i toni, essendo diverso il range di esecuzione. La proporzione si rende necessaria dal momento in cui il range di ottave per l’armonia e per il basso, non coincidono quindi una traslazione diretta non era possibile. Nulla cambia invece per la durata.
H-Ard Triads eredita il Noise Button direttamente da H-Ard Randomizer 2, senza apportare alcuna modifica. In pratica all’occorrenza e a scelta, la pressione del TASTO0 genera una flash di toni che interrompe lo score, riprendendolo nel medesimo punto quando termina l’ultima nota.

Tracce esempio

H-Ard – 08 – Triads 1

H-Ard – 09 – Triads 2

H-Ard – 11 – Triads 3

clip_image041

H-Ard Triads e H-Ard Randomizer 2 tra tutti, sono i due progetti più vicini tra loro, quelli che maggiormente definiscono l’idea di AudioDrone grazie alla maggiore indipendenza dall’intervento umano e per la varietà di scenari che sanno generare in autonomia.

Non è un caso quindi che esiste un sottoprogetto chiamato H-Ard THrIO che prevede l’utilizzo combinato dei due AudioDroni assieme ad un umano che in realtime suona assieme a loro.

H-Ard Triads più portato per pianoforte e tastiere mentre H-Ard Randomizer 2 per chitarre acustiche ed elettriche, beninteso che entrambi su generici synth i risultati sono egregi.

clip_image043

Tracce esempio

Raw Material III – 02 – ThrIO 1

Raw Material III – 03 – ThrIO 2

Raw Material III – 04 – ThrIO 3


H-Ard Klang: Canto matematico, generatore di pattern
POT0: lunghezza nota da 10% a 99% del tempo di battuta
POT1: tempo di battuta (250-30000 ms)
POT2: Velocity (0-127)
POT3: Range toni (64 +-24)
IR: Function select, Channel split
TASTO0: On/Off
TASTO1: Rumore
TASTO3: MIDIsoftreset
TASTO4: MIDIhardreset

clip_image002Klang, onomatopea di omaggio a Russolo e piu’ recente rumore tedesco, futuro e futurismo, Kraftwerk e rumori, un secolo tutt’altro che breve e piuttosto interessante.

Pattern disponibili:
1=linear ; 2=random ; 3: triangolar;
4: tri_alternate; 5=rampa_up; 6=rampa_down; 7=quadra; 8=tri_random

 

 

Non drum-machine, non cerca melodie, regolando durata del tono all’interno di un tempo di battuta, genera geometrie in un range di 4 ottave.

Funzionale per effetti temporizzati di varia natura, protoarmonie con le giuste combinazioni

Controllo costante per i potenziometri di durata, tick e volume, contestuale per POT3 che di massima regola l’ampiezza entro la quale il software genera le note.
Durante la sua compilazione, il software ha gia’ subito due importanti implementazioni pur restando in release 1. La prima e’ l’utilizzo del ricevitore Ir (infrarossi) per comandare col telecomando il cambio di pattern o l’attivazione del pattern 0, ovvero cambio random tra i pattern disponibili ogni 60 secondi. Inoltre, ed e’ legato alla seconda implementazione, e’ attivabile la funzione di channel split.
Si tratta di definire per ora solo da codice, il numero di canali attivati (default 3) sui quali i toni sono suddivisi. Ne consegue che se la traccia audio prevede l’aggancio a tutti i canali, nulla cambia, al contrario assegnando un singolo canale, sono attivabili le rispettive tracce che a questo punto si alterneranno nell’esecuzione, con interessanti effetti in base allo strumento assegnato.
clip_image004

Vediamo nell’esempio come il pattern e’ ripartito sui tre canali col Channel Split attivato


Evoluzione del progetto che tende a sperimentare nuovi suoni senza snaturarne l’essenza teorica, è H-Ard Klang+ , non definibile propriamente come release successiva, quanto potenziamento o espansione.
Oltre a quanto gia’ visto in merito ad impostazioni e sequenze, ora da codice è settabile la “supernota” una nota di lunghezza variabile anche questa fusa nel programma.
Nel brano è la quarta di quattro note e lunghezza quadrupla del normale. Il risultato finale è stato ottenuto attraverso il pattern 11 di H-Ard Klang, “SIN alternato”.

clip_image002[3]

H-Ard II – 11 – Klang+ 01


H-Ard MMath: Astrazione numerica, casualità in assenza di casualità
POT0: lunghezza nota da 10% a 99% del tempo di battuta
POT1: tempo di battuta (250-30000 ms)
POT2: Velocity (0-127)
POT3: Range toni (64 +-24)
IR: Function select, Channel split
TASTO0: On/Off
TASTO1: Rumore
TASTO3: MIDIsoftreset
TASTO4: MIDIhardreset

 

Sottoprogetto di H-Ard Klang nella riproduzione di sequenze numeriche.
Il meccanismo è semplice: si segue la successione e la si pone in modulo con l’ampiezza del range di note gestito da POT3 (1-72, 6 ottave max). Si potrebbe proseguire all’infinito ma una limitazione legata all’operatore MOD impone l’uso di UNSIGNED LONG, quindi con valori massimi non oltre 2^32.
Inutile tornare ai valori iniziali senza creare pattern uguali, quindi impongo una variazione impostando come valore di partenza, il valore ultimo della nota per avere così pattern sempre diversi o almeno ricorrenti dopo lunghe successioni.
Quattro tracce, una con tutte le note MIDI, le altre tre raccolgono la distribuzione dei tre canali.

Juggler

H-Ard II – 10 – MMath 9 – Juggler

 

clip_image002[5]

H-Ard II – 07 – MMath 6 – Lazy caterer

Le successioni riprodotte sono:

H-Ard II – 03 – MMath 1 – Perfect Square Perfect Square (n)^2 http://oeis.org/A153158
H-Ard II – 04 – MMath 2 – Fibonacci Fibonacci F(n) = F(n-1) + F(n-2) http://oeis.org/A000045
H-Ard II – 05 – MMath 3 – Jacobsthal Jacobsthal a(n) = a(n-1) + 2*a(n-2), with a(0) = 0, a(1) = 1 http://oeis.org/A001045
H-Ard II – 06 – MMath 5 – Padovan Padovan a(n) = a(n-2) + a(n-3) http://oeis.org/A000931
H-Ard II – 07 – MMath 6 – Lazy caterer Lazy Caterer a(n)=(n^2+n+2)/2 http://oeis.org/A000124
H-Ard II – 10 – MMath 9 – Juggler Juggler if n mod 2 = 0 then int(sqrt(n)) else int(n^(3/2)) http://oeis.org/A094683

H-Ard D12: Le note non sono solo dodici
POT1: BPM
POT2: Velocity (0-127)
TASTO5: On/Off

 

clip_image002[1]Alcune premesse. Il progetto H-Ard D12 nasce assieme a due importanti innovazioni hardware e software.

Innanzitutto il nuovo hardware prevede l’utilizzo del Joystick Shield, rivoluzionando di fatto la gestione di controllo avvenuta fino ad oggi con l’utilizzo di potenziometri. Il progetto e’ ancora in corso d’opera ma gia’ funziona in sostituzione di ogni precedente controller. A tempo debito seguira’ la scheda tecnica. Dal punto di vista software, il codice e’ stato ottimizzato per la presenza del Joystick o meglio attiva attraverso un semplice flag l’utilizzo di un hardware o l’altro o ancora nessun sistema analogico di controllo. Inoltre il codice e’ stato ottimizzato semplificando debug e funzionamento, ottimizzando il consumo di memoria e cicli di lavoro.
Ironicamente H-Ard D12 e’ il primo progetto che non prevede alcun intervento umano per quanto qualcosa in questo senso sia previsto.
Inoltre H-Ard D12 prevede una serie importante di revisioni e se contrariamente al passato queste servivano di massima a correggere il software e ad introdurre miglioramenti o nuove funzioni, ora sono funzionali si a nuove implementazioni che mirano pero’ a differenti sviluppi armonici, in sostanza si usano diverse tecniche per ottenere diversi risultati. Per questa ragione presentiamo le diverse release in quanto creano diversi brani.

Titolo Note
D12 – 00

 

clip_image004[1]
D12, pura astrazione. D12, qualcosa che ha a che fare con la dodecafonia ma non lo e’, quella e’ roba seria.
Si inizia con una serie, 12 toni, stesse pause. 11 rotazioni per 12 serie distinte.
Inversione ma non quella degli intervalli bensi’ una versione semplificata che chiameremo inversione matematica, ovvero dati i valori delle note da 0 a 11, si effettua l’operazione algebrica 11-nota.
Ancora 11 rotazioni, poi la retrogradazione, le note della serie suonate in ordine inverso e inversione matematica della retrogradazione.
4×12, 48 serie appunto intervallate da un artifizio che consiste nell’esplicitare il numero della serie con un accordo di n note a rappresentare l’unita’ e altre n note per le decine (es, serie 24=accordo di 2 note + accordo di 4 note) con un ulteriore marcatore formato da accordi di 3 note per il numero di sequenza (sequenza 2=3note+vuoto+3note) a delimitare le 4 sequenze.
Traccia moltiplicata 5 su arrangiamento per archi divisi per canale midi, con effetti di arpeggio differenti a seconda della sequenza.
La cadenza regolare viene quindi spezzata dalle variazioni introdotte dagli arpeggi facendone una composizione piu’ minimalista che seriale

http://maxscordamaglia.bandcamp.com/track/d12-00

D12 – 01 clip_image006Continuano gli esperimenti sull’uso delle serie.
Nel brano restano le 48 serie, medesimo principio di funzionamento descritto in D12-00. Eliminati pero’ gli intermezzi quindi il flusso sonoro ora e’ ininterrotto per tutte le 12x12x48 note.
La principale variazione consiste nello split dei canali che oltre la traccia principale ora prevede
– note duplicate 3 ottave sotto
– prima nota dalla durata prolungata l’intera serie
– 1° e 6° nota di lunghezza 6 note (1/2 della serie)
– 1°, 3°, 6°, 9° nota di lunghezza 3 note (1/4 della serie)
– Note pari lunghezza 2 note (1/6 della serie)
– Note modulo 13 ovvero una nota su 13 quindi con spostamento nelle serie successive e durata quanto manca ad arrivare a fine serie (es. 7° nota durata 5 note)
La sequenza piena con le serie di basso sono associate al pianoforte, mano dx e sx con diversi tipi di arpeggio che emergono sui 4 blocchi, i restanti pattern si dividono tra archi, ottoni e fiati

http://maxscordamaglia.bandcamp.com/track/d12-01

D12 – 02 Come in D12 – 01, nessuna separazione tra le serie, flusso ininterrotto tra le sequenze. Stessi pattern e stessa definizione ma la struttura e’ totalmente alleggerita nell’aver la sola traccia completa di pianoforte mentre le altre 6, inclusa la voce di basso, emergono con frequenza casuale, sole o accoppiate due a due.
La traccia principale e’ doppiata da una viola con volume alternato, compare e scompare sfumando o in crescendo ma e’ l’unico effetto aggiunto in postproduzione.
Molto interessante l’unione tra l’esperienza dodecafonica con l’apporto casuale cageiano

http://maxscordamaglia.bandcamp.com/track/d12-02

D12 – 03 clip_image008
Su quella che e’ la base programmatica definita dai D12 – 01, questa volta le variazioni riguardano il raddoppio dei toni, ovvero dato il tono nella sequenza seriale, si provvede al raddoppio +- 2 note sempre nelle sequenze 12/12, 6/12, 3/12, 2/12, 1/12 oltre alla traccia di basso. La sovrapposizione delle tracce e’ effettuata in postproduzione.

http://maxscordamaglia.bandcamp.com/track/d12-03

D12 – 04E2 clip_image010

Variazione sul tema e modifiche tecniche. Se l’algoritmo e’ analogo a D12-04E e la strumentazione e’ ambient, e’ stato reintrodotta la traccia in modulo 13 (1 nota su 13 di lunghezza 12- posizione nota) e inoltre ora l’accoppiamento delle tracce in esecuzione e’ totalmente casuale e non predefinito laddove in precedenza era fisso.
Inoltre ma e’ una curiosita’, tutti gli strumenti sono varianti di basso elettronico.


H-Ard Madrox : La nuova generazione di AudioDroni mutanti.

POT0: Dimensione 0-3 deciso dal passaggio della funzione, 4 random su tutti (Triads)
POT1: durata della nota (2-180 BPM) (Triads/Randomizer)
POT2: numero note (0-9) (Randomizer/pattern Arpeggio)
POT3: accordo di basso (0:l, 1:lm, 2:lmh, 3:mh, 4:h, 5:m) (Triads, stesso range per Randomizer)
POT5: Velocity (0-127)
TASTO4E: Arpeggio on/off
TASTO5F: MIDIsoftreset + MIDIhardreset
TASTOS: On/Off)

clip_image002[1]H-Ard Madrox è tre progetti in uno, progetti già utilizzati qui integrati in forma avanzata, evoluzione e nel contempo integrazioni tra di loro. Inoltre cambia la filosofia del progetto dove si inizia a lavorare a BPM e non più a tempo, col vantaggio di poter regolare esattamente la velocità per implementare basi ritmiche o cadenze preordinate.
Il primo ad essere integrato è stato H-Ard Triads, ora in versione 2.0. Innanzitutto come s’è detto, la regolazione è in BPM, poi le linee di triadi passano da due a tre, con le prime 3 ottave occupate dalla triade bassa, le ultime tre dalla triade alta e in mezzo la principale . Lo sfasamento tra le note è regolato ora per interi beat e non più per tempo, dove il POT0 regola in sistema simile al passato aggiungendo un nuovo valore che randomizza egualmente le note della triade.
Col POT3 decido come da guida, quali linee di triadi far entrare in azione.
Allo stesso tempo convive Randomizer 3, in realtà una via di mezzo tra H-Ard Randomizer 2 e H-Ard Beat.
Due diversi funzionamenti, con la quantità di note regolate da POT2 e il POT3 che decide il range d’azione delle note. Da procedura si decide se la lunghezza delle note è per millisecondi o BPM, con l’intento di emulare un suono più meccanico e meno.
Ultimo, in realta’ complementare a Randomizer 3, e’ H-Ard Arpeggio, dove i pattern gia’ visti per l’audiodrone omonimo, sono qui implementati per agganciarsi alla nota centrale del pattern centrale di H-Ard Triads. POT2 decide il pattern da utilizzare.

Un abbozzo di esempio, col solo Triads, e’ visibile qui:

http://youtu.be/zw2k8Ds6HY0


H-Ard TxRx: Viaggio senza movimento

POT0: On/Off (>16 attiva)
POT2: Velocity (0-127)
Tasto3: note stop

Due console, una in trasmissione, hardware dedicato e provvisorio e H-Ard Console 1 in ricezione.

Trasmissione a 433 MHz del valore di un potenziometro che viene ricevuto, digerito, generando una coda di toni su 4 ottave. Cinque le note che come una scia si susseguono nella storico del tono scelto e a rotazione sostituite dal nuovo valore letto.

La durata è decisa dalla permanenza delle variazioni in lettura ovvero nessun cambio di valore ricevuto per mantenere le note nel loro stato attivo ed immutato.

Si comprende che non esiste un plus aggiuntivo alla trasmissione del valore letto da un potenziometro remoto ma il progetto è da intendersi per un potenziale utilizzo performativo, una combinazione con altri sensori che attivi una trasmissione di informazioni di qualunque origine.

Ad ogni modo ne può uscire qualcosa d’interessante

clip_image045

Tracce esempio

H-Ard – 10 – TxRx 2

 


Progetti futuri

Lettore Ir con tastiera simulata

clip_image047

… e ancora, H-Ard Rht (generatore di ritmiche/aritmie), H-Ard D12 (dodecafonia applicata).

In arrivo progetti basati su altri sensori di movimento, suono e…

 

(scarica il documento in formato PDF)

2 thoughts on “Progetto H-Ard

  1. sono un insegnante di materie artistiche e mi interesso del lavoro di Silvio Ceccato, uno dei primi a trattare di Cibernetica in Italia. Vorrei sapere se questo suo lavoro sulla generazione di suoni potrebbe avere applicazioni nello sviluppo di una “intelligenza artificiale” basata sulla trasposizione degli schemi categoriali, elaborati formalmente soprattutto da Giuseppe Vaccarino, traducibili in schemi geometrici che ricordano quelli acustici. Non so se sono stato chiaro ma potrebbe seguirne un approfondimento reciproco.

    1. Innanzitutto salve e sara’ televisivo, ma grazie della domanda.
      Senza tanti preamboli la risposta e’ no, non e’ stato sino ad oggi il mio punto di partenza nelle ricerche da me effettuate anzi, direi proprio di aver proseguito dalla parte opposta.
      Cercando col mio lavoro di conciliare tecnica e arte, ho come riferimento il lavoro di Russolo prima e soprattutto Cage poi. Riassumendo la partenza e’ l’alea e sull’alea si basa ogni mio lavoro, che cerco d’imbrigliare verso schemi coerenti. Il mio e’ un sistema sintropico percorso a secondo dei progetti, da successioni matematiche piuttosto che combinazioni di toni o strutture ritmiche casualmente ma coerentemente variate.
      I percorsi di ricerca che suggerisce mi sono noti, superficialmente sia chiaro e del resto gli studi più’ avanzati della musica generativa passano di li.
      Io sono molto lontano da tutto cio’ anche perché non e’ propriamente il mio obiettivo ma, attenzione, proprio in questi giorni ho iniziato un progetto che aprira’ le porte ad un nuovo tipo di ricerche.
      Se sino ad oggi ogni pattern generato non andava oltre al pattern precedente o poco piu’, il nuovo progetto puntera’ ad una struttura d’insieme piu’ ampia che tendera’ a schematizzare interi blocchi non necessariamente tonali o armonici ma, mi si conceda il termine, antropologicamente coerente. Tutto questo attenzione, senza rinunciare al caso, anzi.
      Spero di aver risposto alla sua domanda. Mi di altri riferimenti, in questa fase, sto creando l’architettura generale, ogni direzione e’ interessante.

Rispondi