Skip to content

CSound : La musique pour les Geeks

CSound est un langage de programmation musicale.

Plus précisément, il permet à l’aide de fichiers de description sonore de synthétiser des instruments puis de décrire des morceaux.

Il repose sur l’utilisation d’un compilateur et de 2 types de fichiers source :

  • un fichier orchestre
  • un fichier partition

le tout permettant de décrire les notes, le comportement des instruments au cours du temps, etc …

L’utilisation est complexe mais très puissante.

Un exemple extrait de wikipedia :

<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>

(signal sinusoïdal d’une durée de 1 seconde, et d’une fréquence de 1 Khz à un taux d’échantillonnage de 44,1 Khz).

Parmi les possibilités avancées de Csound, on trouve une API de programmation permettant d’appeler CSound depuis un programme. Bienvenue à la musique procédurale :-)

[ cSounds.com ]

[ tutoriaux ]

[ Introduction à la création sonore avec Csound ]

[ Lettuce : une interface graphique à CSound ]

Published inMusiqueProgrammation
Loading Facebook Comments ...

One Comment

  1. Chickenzilla Chickenzilla

    C’est une excellente idée !
    j’avais commencé à écrire un compilateur de ce genre en c++, qui n’a jamais abouti.

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée.