Lezione 5 Esercitazione Programmazione timbrica - Prof. Luca A. Ludovico Introduzione • L’obiettivo della prima esercitazione è fare pratica con le basi sintattiche di Csound per quanto concerne lo score. • Verranno esplorati i seguenti argomenti: – – – – Scrittura di eventi sonori - istruzione i Organizzazione dello score in sezioni - istruzioni s ed e Uso delle macro senza e con argomenti Routine di carry e sort – – Next-p, previous-p e ramping - sintassi npn, ppn, >, (, ) Variazioni del metronomo – istruzione t • Per poter ottenere un output audio, è però necessario disporre di almeno uno strumento nell’orchestra, il cui funzionamento sarà semplificato al massimo: si introdurranno dunque i due opcode di orchestra necessari a realizzare un oscillatore sinusoidale. Programmazione timbrica - Prof. Luca A. Ludovico Esercitazione Opcode oscil • L’opcode oscil fa parte dei generatori di segnale, e in particolare degli oscillatori base. Genera una oscillazione sinusoidale pura. – Si rimanda una trattazione più completa ed approfondita dell’argomento alla lezione sulla sintesi additiva. • Nel corso di questa lezione, se ne farà un uso funzionale allo svolgimento delle esercitazioni. Si adotterà quindi la sintassi base: ares oscil xamp, xcps ove xamp è l’ampiezza dell’oscillazione, xcps è la sua frequenza e ares è una variabile audio. • La forma d’onda utilizzata è la sinusoide semplice, ma oscil può essere configurato per emettere forme d’onda periodiche a piacimento. Programmazione timbrica - Prof. Luca A. Ludovico Esercitazione Opcode out • L’opcode out fa parte della famiglia delle istruzioni di I/O di segnale. Invia campioni audio mono a un buffer di output “di accumulo” (creato all’inizio della performance) che raccoglie le uscite di tutti gli strumenti attivi prima di scrivere il suono su disco. • Sintassi: out asig • Essendo un output mono, dovrebbe concordare con un valore unitario specificato in nchnls, ma dalla versione 3.50 il suo comportamento si adegua al valore di nchnls. – Si rimanda una trattazione più completa ed approfondita dell’argomento alla lezione sulla spazializzazione del suono. Programmazione timbrica - Prof. Luca A. Ludovico Esercitazione Scrittura di eventi sonori • Scrittura di note e pause → 05_01_notes_rests.csd • Polifonia con un unico strumento → 05_02_polyphony.csd • Utilizzo di più strumenti → 05_03_multiple_instruments.csd • Passaggio parametri dallo score all’orchestra → 05_04_parameters.csd • Assegnamento a variabili di inizializzazione → 05_05_assign.csd Programmazione timbrica - Prof. Luca A. Ludovico Esercitazione Sezioni, etichette e macro • Istruzioni s ed e → 05_06_sections.csd • Nomi degli strumenti → 05_07_instrument_labels.csd • Utilizzo di macro semplici → 05_08_simple_macro.csd • Utilizzo di macro con argomenti → 05_09_macro_with_arguments.csd Programmazione timbrica - Prof. Luca A. Ludovico Esercitazione Carry e sort • Funzionamento della routine di carry → 05_10_carry.csd • Riordinamento dello score → 05_11_sort.csd • Utilizzo di +, ppn e npn → 05_12_pp_np.csd • Ramping lineare e logaritmico → 05_13_ramping.csd Programmazione timbrica - Prof. Luca A. Ludovico Esercitazione