Csound

Csound
Data della prima versione 1986
Autore Barry vercoe
Ultima versione 5.15 (13 agosto 2020)
Influenzato da MUSICA IV-BF, MUSICA 11
Scritto in VS
Sistema operativo Cross-platform
Licenza LGPL
Sito web csounds.com

Csound designa un linguaggio di programmazione per la creazione di suoni, così come il suo compilatore di suoni. Il nome Csound deriva dal linguaggio C , con il quale è stato scritto al MIT da Barry Vercoe . È un software gratuito disponibile con licenza LGPL .

Può essere utilizzato indipendentemente o per creare plug-in audio nel formato più standard ( AU , LV2 , VST ,  ecc .).

Storico

Questo linguaggio è ispirato a MUSIC, una serie di vecchi programmi sviluppati da Max Mathews .

Il suo sviluppo è continuato negli anni '90 e 2000 sotto la guida di John Fitch presso l' Università di Bath , dando così vita alla versione Csound 5 inFebbraio 2005. Molti sviluppatori hanno contribuito a questo progetto, tra cui Istvan Varga, Gabriel Maldonado (che ha sviluppato una variante CsoundAV ), Robin Whittle, Richard Karpen, Michael Gogins , Matt Ingalls , Steven Yi e Victor Lazzarini .

Descrizione

Nel suo utilizzo più semplice, il programmatore scrive due file di testo secondo un modello specificato e predefinito: il file dell'orchestra che descrive la natura degli strumenti e il file della partitura che descrive le note , oltre ad altri parametri temporali. Csound quindi compila questi file e genera un file audio . Le versioni recenti di Csound possono ricevere, elaborare ed emettere, opzionalmente in tempo reale, flussi audio e flussi MIDI .

I file di orchestra e spartito possono essere combinati in un unico file utilizzando una struttura con tag XML . Ecco un esempio molto semplice di un file Csound unificato, che produce dopo la compilazione un file Wave contenente un'onda sinusoidale della durata di 1 secondo e una frequenza di 1 kHz a una frequenza di campionamento di 44,1 kHz.:

<CsoundSynthesizer>; <CsOptions> csound -W -d -o tone.wav </CsOptions> <CsInstruments> sr = 44100  ; Sample rate. kr = 4410  ; Control signal rate. ksmps = 10  ; Samples pr. control signal. nchnls = 1  ; Number of output channels. instr 1 a1 oscil p4, p5, 1  ; Simple oscillator. out a1  ; Output. endin </CsInstruments> <CsScore> f1 0 8192 10 1  ; Table containing a sine wave. i1 0 1 20000 1000  ; Play one second of one kHz tone. e </CsScore> </CsoundSynthesizer>

Distribuzione e integrazione

L'ultima versione, Csound 6, è disponibile come file binario o codice sorgente per Linux , MacOS e Windows. Può essere utilizzato anche come libreria software o come API , che può quindi essere parte integrante di altri software. Le librerie software sono disponibili in C , Python , Java , LISP , Tcl e C ++ .

Vedi anche

link esterno