Csound | |
Data primei versiuni | 1986 |
---|---|
Autor | Barry vercoe |
Ultima versiune | 5.15 (13 august 2020) |
Influențată de | MUZICA IV-BF, MUZICA 11 |
Scris in | VS |
Sistem de operare | Cross-platform |
Licență | LGPL |
Site-ul web | csounds.com |
Csound desemnează un limbaj de programare pentru crearea sunetului, precum și compilatorul său de sunet. Numele Csound provine din limba C , cu care a fost scris la MIT de Barry Vercoe . Este un software gratuit disponibil sub licența LGPL .
Acesta poate fi folosit independent sau pentru a face plugin - uri audio în cel mai formatul standard ( UA , Lv2 , VST , etc. ).
Acest limbaj este inspirat de MUSIC, o serie de programe mai vechi dezvoltate de Max Mathews .
Dezvoltarea sa a continuat în anii 1990 și 2000 sub conducerea lui John Fitch la Universitatea din Bath , dând astfel naștere versiunii Csound 5 înFebruarie 2005. Mulți dezvoltatori au contribuit la acest proiect, inclusiv Istvan Varga, Gabriel Maldonado (care a dezvoltat o variantă CsoundAV ), Robin Whittle, Richard Karpen, Michael Gogins , Matt Ingalls , Steven Yi și Victor Lazzarini .
În cea mai simplă utilizare, programatorul scrie două fișiere text conform unui șablon specificat și predefinit: fișierul orchestră care descrie natura instrumentelor și fișierul de scor care descrie notele , precum și alți parametri. Csound apoi compilează aceste fișiere și generează un fișier audio . Versiunile recente ale Csound pot primi, procesa și ieși, opțional în timp real, fluxuri audio și fluxuri MIDI .
Orchestra și fișierele de partituri pot fi combinate într-un singur fișier folosind o structură cu etichete XML . Iată un exemplu foarte simplu de fișier Csound unificat, care produce după compilare un fișier Wave care conține un semnal sinusoidal cu o durată de 1 secundă și o frecvență de 1 kHz la o rată de eșantionare de 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>Cea mai recentă versiune, Csound 6, este disponibilă ca fișier binar sau cod sursă pentru Linux , MacOS și Windows. Poate fi folosit și ca bibliotecă software sau ca API , deci poate fi o parte integrantă a altor programe. Bibliotecile software sunt disponibile în C , Python , Java , LISP , Tcl și C ++ .