La presentazione è in caricamento. Aspetta per favore

La presentazione è in caricamento. Aspetta per favore

Giannicola Spezzigu 0000197799. Accordo: sovrapposizione di 3 o più suoni Ogni sigla denota un accordo, ossia i suoni da cui esso è formato Accordi e.

Presentazioni simili


Presentazione sul tema: "Giannicola Spezzigu 0000197799. Accordo: sovrapposizione di 3 o più suoni Ogni sigla denota un accordo, ossia i suoni da cui esso è formato Accordi e."— Transcript della presentazione:

1 Giannicola Spezzigu 0000197799

2 Accordo: sovrapposizione di 3 o più suoni Ogni sigla denota un accordo, ossia i suoni da cui esso è formato Accordi e il sistema delle Sigle Sistema temperato: l’ottava è suddivisa in 12 parti uguali, detti semitoni. Perciò i suoni musicali sono 12 ( e non 7!!). -Posso formare accordi a partire da ognuno di essi. -Posso costruire un accordo al max di 12 suoni. Sistema temperato: l’ottava è suddivisa in 12 parti uguali, detti semitoni. Perciò i suoni musicali sono 12 ( e non 7!!). -Posso formare accordi a partire da ognuno di essi. -Posso costruire un accordo al max di 12 suoni.  Sigla C7 : indica l’accordo di C settima dom, formato dai suoni C, E, G, Bb  Sigla C : indica l’accordo di C maggiore, formato dai suoni C, E, G note in inglese: C = do D = re E = mi F = fa G = sol A= la B = si  Sigla CMA7(add13) : indica l’accordo di C maggiore - settima maggiore con 13ma aggiunta. E’ formato dai suoni: C, E, G, A, B  Sigla Bb(add b9 add 13) : indica l’accordo di Bb maggiore con 9na e 13ma bemolle aggiunta. E’ formato dai suoni: Bb, D, F, Gb, C Esempi di sigle: o Il sistema è intricato e presenta diverse regole: può essere difficile per l’allievo inesperto interpretare le sigle nel modo corretto. 2

3 SCOPO DEL LAVORO Realizzazione di un interprete per le sigle degli accordi jazz L’idea è quella di un sistema software di supporto all’allievo di armonia Data una sigla deve tradurla nei suoni che compongono l’accordo Deve poter suonare l’accordo (ear training) 3

4 Grammatica EBNF ::= [ ] [ ] [ ] [ ( )+ ] token ::= C | D | E | F | G | A | B :: = # | b ::= [ ] token ::= Ma | MA | Maj ::= m | mi | min ::= | token ::= 2 | 3 | 4 | 5 | 6 | 9 | 11 | 13 ::= 6/9| alt | 7alt | 0 | 07| dim ::= | 7 | token ::= sus | sus4 token ::= ( token ::= ) token :: = # | b ::= 2 | 3 | 4 | 5 | 6 | 9 | 11 | 13 ::= | | | ::= token :: = # | b ::= 2 | 3 | 4 | 5 | 6 | 9 | 11 | 13 ::= add ( [ ] | ) ::= 7 token ::= Ma | MA | Maj ::= ( | 7 ) token ::= no | omit ::= 2 | 3 | 4 | 5 | 6 | 9 | 11 | 13 ::= 7 token ::= Ma | MA | Maj 4

5 Grammatica (osservazioni) ::= [ ] [ ] [ ] [ ( )+ ] ::= | ::= [ ] ::= | 7 | ::= | | | ::= ::= add ( [ ] | ) ::= ( | 7 ) ::= 7 ::= C | D | E | F | G | A | B ::= sus | sus4 ::= ( ::= ) :: = # | b ::= Ma | MA | Maj ::= m | mi | min ::= 2 | 3 | 4 | 5 | 6 | 9 | 11 | 13 ::= 6/9| alt | 7alt | 0 | 07| dim ::= no | omit Secondo la classificazione di Chomsky, la grammatica è di tipo 2 in quanto le produzioni non sono regolari Non è presente self-embedding, quindi il linguaggio generato dalla grammatica è di tipo 3 LL(1): sono presenti varie produzioni formalmente non LL(1)  il linguaggio generato è di tipo 3  la grammatica è di tipo 2 Es: trasformando in BNF := SS non disgiunti!! Il problema è solo apparente, raccogliendo a fattor comune: := := ε | È sempre possibile distinguere la fine di una stringa da una stringa non vuota Produzione sostanzialmente LL(1) Idem per le altre produzioni  la grammatica è sostanzialmente LL(1) Il linguaggio è riconoscibile tramite analisi ricorsiva discendente 5

6 Tecnologie & Strumenti  Java 1.6  JavaCC per la generazione automatica del parser top-down  Java Tree Builder strumento aggiuntivo a JavaCC per la generazione automatica delle classi necessarie a creare l’albero sintattico e relativo visitor  Eclipse 3.4.0 IDE utilizzato per lo sviluppo del progetto  NetBeans 6.5 IDE utilizzato solo per la generazione automatica della GUI  jMusic A Queensland University of Technology (QUT) music research project. Libreria Java utilizzata per la gestione dell’output sonoro e dei MIDI file 6

7 Progetto Funzionalità previste in analisi Funzionalità avanzate aggiunte in fase di progetto  Per poter riconoscere sequenze di sigle è stata perciò aggiunta la produzione di top level: ::= ( ) + 7

8 Archittettura: Package 8

9 Classi: struttura 9

10 Classi: Interazione 10

11 Test & Collaudo 11  Le classi principali sono state testate manualmente prima ancora di essere inserite nell’applicazione. Ne è stato accertato il corretto comportamento anche dopo l’integrazione con le altre parti del sistema.  Il collaudo è stato effettuato distribuendo l’applicazione a 5 musicisti Jazz e apportando correzioni, principalmente alle azioni semantiche dell’interprete, sulla base del loro feedback.  Alcuni lo hanno trovato un utile strumento per la didattica

12 DEMO 12

13 Sviluppi futuri 13  Estendere il linguaggio con tutte le possibili notazioni equivalenti  Riproduzione sonora: curare i voicing per ogni specie di accordo  Sequencer: - poter scegliere fra diversi organici e diversi stili musicali - poter inserire più accordi per battuta - poter inserire ripetizioni o ritornelli  Introduzione di un supporto per la creazione di melodie…… …... Il che farebbe diventare il sistema, non più un semplice interprete di accordi jazz, ma un vero e proprio strumento per la composizione musicale assistita dal computer

14 riferimenti  Prof. Enrico Denti: corso di Linguaggi e Modelli Computazionali ls http://edenti.deis.unibo.it/Ling/2008-2009/ http://edenti.deis.unibo.it/Ling/2008-2009/  Franco d’Andrea – Attilio Zanchi: “Enciclopedia comparata delle scale e degli accordi” ed. Carish 1991.  Queensland University of Tecnology: http://jmusic.ci.qut.edu.au/index.htmlhttp://jmusic.ci.qut.edu.au/index.html 14

15 15


Scaricare ppt "Giannicola Spezzigu 0000197799. Accordo: sovrapposizione di 3 o più suoni Ogni sigla denota un accordo, ossia i suoni da cui esso è formato Accordi e."

Presentazioni simili


Annunci Google