♪ - Les instruments virtuels (VSL, EWQL, etc.) et les players associés, les samples, banques de sons, expandeurs et tout appareil/logiciel numérique générateur de sons instrumentaux.
   - Hibou57 -
Membre ♪
Messages : 84
Enregistré le : 24/01/2007 13:39:44
Localisation : France
Contact :

   

Message  { par Hibou57

Pour compléter le précédent message, un exemple plus utile : définition de gammes.

J’ai essayé de définir une gamme harmonique, mais il me manque deux degrés (le Ré et le Si). Et puis je ne sais pas si j’ai gaffé quelque part, le Ré de la gamme tempérée me semble sonner bizarrement par rapport au Do ; pourtant j’ai re-vérifié (je commence après le premier Do qui suit le La à 440Hz).

Copiez-collez dans votre Ă©diteur CSound ce qui suit :

Code : Tout sélectionner

<CsoundSynthesizer>
   <CsOptions>
   </CsOptions>

   <CsInstruments>
      ;les initialisations
      sr        = 44100 ; Fréquence d'échantillonnage
      kr        =  4410 ; Fréquence de contrôle
      ksmps  = 10       ; sr/kr
      nchnls  = 2       ; Nombre de canaux
      gisine_wave = 0

      instr 1
         ipitch = p4
         asignal lfo 5000, ipitch, gisine_wave
         outs asignal, asignal
      endin

      instr 2
      endin
   </CsInstruments>

   <CsScore>
      ; ===== Définition de la gamme tempérée =====

      ; Notes                    ; Majeur ; Mineur / Descendant / Ascendant
      #define note01 # 523.251#  ; X        X        X            X
      #define note02 # 554.365#  ;
      #define note03 # 587.329#  ; X        X        X            X
      #define note04 # 622.253#  ;          X        X            X
      #define note05 # 659.255#  ; X
      #define note06 # 698.456#  ; X        X        X            X
      #define note07 # 739.988#  ;
      #define note08 # 783.990#  ; X        X        X            X
      #define note09 # 830.609#  ;          X        X
      #define note10 # 880.000#  ; X                              X
      #define note11 # 932.327#  ;                   X
      #define note12 # 987.766#  ; X        X                     X
      #define note13 #1046,502#  ; X        X        X            X

      ; ===== Définition des gammes basées sur la gamme tempérée =====

      ; Majeur

      #define maj1 #$note01# ; Do
      #define maj2 #$note03# ; RĂ©
      #define maj3 #$note05# ; Mi
      #define maj4 #$note06# ; Fa
      #define maj5 #$note08# ; Sol
      #define maj6 #$note10# ; La
      #define maj7 #$note12# ; Si
      #define maj8 #$note13# ; Do2

      ; Mineur

      #define min1 #$note01# ; Do
      #define min2 #$note03# ; RĂ©
      #define min3 #$note04# ; RĂ©#
      #define min4 #$note06# ; Fa
      #define min5 #$note08# ; Sol
      #define min6 #$note09# ; Sol#
      #define min7 #$note12# ; Si
      #define min8 #$note13# ; Do2

      ; Mineur descendante

      #define mindsc1 #$note01# ; Do
      #define mindsc2 #$note03# ; RĂ©
      #define mindsc3 #$note04# ; RĂ©#
      #define mindsc4 #$note06# ; Fa
      #define mindsc5 #$note08# ; Sol
      #define mindsc6 #$note09# ; Sol#
      #define mindsc7 #$note11# ; La#
      #define mindsc8 #$note13# ; Do2

      ; Mineur ascendante

      #define minasc1 #$note01# ; Do
      #define minasc2 #$note03# ; RĂ©
      #define minasc3 #$note04# ; RĂ©#
      #define minasc4 #$note06# ; Fa
      #define minasc5 #$note08# ; Sol
      #define minasc6 #$note10# ; La
      #define minasc7 #$note12# ; Si
      #define minasc8 #$note13# ; Do2

      ; ===== Tentative de définition d’une gamme harmonique =====
      ;       correspondant Ă  la gamme majeure

      #define harm1 # 523.251# ; Do  (1)
      ; Pas d’idée d’un interval pour le Ré
      #define harm3 # 654,063# ; Mi  (5/4)
      #define harm4 # 697,668# ; Fa  (4/3)
      #define harm5 # 784,876# ; Sol (3/2)
      #define harm6 # 872,085# ; La  (5/3)
      ; Pas d’idée d’un interval pour la Si
      #define harm8 #1046,502# ; Do2 (2)

      ; ===== Teste la gamme majeur =====

      b 0

      ; Fondamentale
      i 1 0 8 $maj1

      ; Majeur
      i 1 0 1 $maj1
      i 1 + 1 $maj2
      i 1 + 1 $maj3
      i 1 + 1 $maj4
      i 1 + 1 $maj5
      i 1 + 1 $maj6
      i 1 + 1 $maj7
      i 1 + 1 $maj8

      ; ===== Teste la gamme mineur =====

      b 9

      ; Fondamentale
      i 1 0 8 $maj1

      ; Mineur
      i 1 0 1 $min1
      i 1 + 1 $min2
      i 1 + 1 $min3
      i 1 + 1 $min4
      i 1 + 1 $min5
      i 1 + 1 $min6
      i 1 + 1 $min7
      i 1 + 1 $min8

      ; ===== Teste la gamme mineur descendante (mineur naturelle) =====

      b 18

      ; Fondamentale
      i 1 0 8 $maj1

      ; Mineur
      i 1 0 1 $mindsc1
      i 1 + 1 $mindsc2
      i 1 + 1 $mindsc3
      i 1 + 1 $mindsc4
      i 1 + 1 $mindsc5
      i 1 + 1 $mindsc6
      i 1 + 1 $mindsc7
      i 1 + 1 $mindsc8

      ; ===== Teste la gamme mineur ascendante =====

      b 27

      ; Fondamentale
      i 1 0 8 $maj1

      ; Mineur
      i 1 0 1 $minasc1
      i 1 + 1 $minasc2
      i 1 + 1 $minasc3
      i 1 + 1 $minasc4
      i 1 + 1 $minasc5
      i 1 + 1 $minasc6
      i 1 + 1 $minasc7
      i 1 + 1 $minasc8

      ; ===== Teste la gamme harmonique =====

      b 36

      ; Fondamentale
      i 1 0 8 $maj1

      ; Mineur
      i 1 0 1 $harm1
      i 1 + 1 $harm3
      i 1 + 1 $harm4
      i 1 + 1 $harm5
      i 1 + 1 $harm6
      i 1 + 1 $harm8
   </CsScore>
</CsoundSynthesizer>
 
          - Compositeur .org -       Forum des Compositeurs : Musique et Composition
   - Hibou57 -
Membre ♪
Messages : 84
Enregistré le : 24/01/2007 13:39:44
Localisation : France
Contact :

   

Message  { par Hibou57

Avec un système comme CSound, il peut être intéressant de se pencher sur Pure Data. Pure Data est un système qui permet de gérer, interpréter, produire, des événement multimédias, y compris en temps réel. Il peut être utilisé pour synchroniser de l’image et du son, et j’imagine (même si je découvre à peine Pure Data) qu’il peut aussi être utilisé pour faire de la composition algorithmique (vu que je ne trouve par d’implémentation de HMSL, ni de AlgoScore pour Windows).

J’ai posé la question sur un forum dédié à Blender (un logiciel pour le dessin et l’animation 3D), et il semble que des gens ont déjà utilisé Pure Data pour accompagner les animations 3D de sons et de musiques.

Mais je voudrais aussi savoir s’il a déjà été utilisé comme je l’espère, pour faire de la composition algorithmique. Je sais que c’est possible en partie avec CSound, mais CSound semble plutôt orienté synthèse sonore, et un peu moins composition, alors peut-être que lui ajouter une petite béquille dans ce domaine ne serait pas de trop.

Si des gens ont une expérience (même petite) dans ce domaine, ça serait chouette d’en parler ici :) .

Merci

-- EDIT -- Je suppose que plus d’une personne ici connaissent Max/MSP. Eh bien il existe une relation entre Max et Pure Data (alias Pd) :
puredata.info a écrit :What is the difference between Pd, MAX/MSP, and jMax?

Pd is ultimately a redesign of an earlier system that is still in commercial development: MAX/MSP. In fact, the real time audio synthesis portions of MAX/MSP incubated in the Pd project. jMax then is a version of Max released as open source by IRCAM a while ago. It seems to be unmaintained, at least not a lot of people still use jMax. Pd and Max projects were masterminded by Miller Puckette and others at IRCAM in France.

There is an abstract for a paper describing the differences available on the the web.
Source : http://puredata.info/docs/faq/pdmaxjmax

-- EDIT (2) -- Pure Data est même encore plus proche que ça de Max :
puredata.info a écrit :How do I write my own Pd externals (or [objects])?

For once there is the a short how-to write externals by IOhannes m zmölnig.

There is also some documentation for writing new Pd objects in a paper by Theo Stojanov.

Also, the API for Max/MSP and Pd is almost identical, so if you find documentation on writing MSP externals, it may be of use.
Source : http://puredata.info/docs/faq/writingexternals

Avec mes excuses pour cette intrusion d’un message sur Pure Data dans un sujet sur CSound :P 
          - Compositeur .org -       Forum des Compositeurs : Musique et Composition
   - deb76 -
Membre ♪♪♪♪♪
Messages : 2774
Enregistré le : 07/09/2008 21:18:25
Localisation : Haute-Normandie
Contact :

   

Message  { par deb76

Pour compléter le précédent message, un exemple plus utile : définition de gammes.
Heu, là je dois avouer que je suis assez perplexe mais c'est intéressant. Parce que manifestement, on a des façons très différentes d'aborder Csound. Il t'intéresse comme pouvant être une base de composition algorithmique (la définition des différentes gammes à partir du système tempéré alors que pour ma part, ce sont plutôt les timbres qu'il est à même de générer. Ainsi qu'aussi de pouvoir avoir des fréquences très précises - notamment au niveau de quarts, huitième et seizième de ton voire autres - de pouvoir moduler un timbre très finement en jouant avec les variations de fréquences.
Ou alors, à partir d'Open Music (il y a, notamment, une conversion de fichiers Open Music en CSound), dans la mesure où les séquences de notes générées (aléatoires ou non) peuvent être affichées avec la fréquence en hertz. En fait, la complémentarité est plutôt à ce niveau là. En terme de composition.

Concernant l'animation 3 D, Csound permet aussi de travailler en VRLM pour créer des mondes virtuels.
Je m'en suis servi pour la Grande Bleue en 1999 et avec HPK Composer qui permettait d'Ă©muler Csound et faire des mondes
virtuels en VRML. D'ailleurs,
emusician nous avait fait un papier sur HpKComposer et CSound (au milieu de la page).
Mais autant je travaille avec Max Msp et max for Live que Pure Data me rapelle le tout premier Max (version Ircam et Opcode) voire même historiquement (préhistoire ?) le tout premier manuel fait par Philippe Manoury : http://magelectrique.blogspot.com/2010/ ... E-max.html
Regarde le pdf que j'ai fait, et tu verras qu'on retrouve l'austérité de Pure Data dans ce premier Max. Ce qui est logique, puisque c'est Miller Puckette qui le développait à l'Ircam.
Pour la composition, aléatoire, algorithmique, regarde un peu du côté de la RTC-Lib de K. Essl, il l'a porté aussi sur Pure Data. C'est un spécialiste et il fait avec ses RTC d'excellents outils. La RTC a été porté dans le premier max en 1994 : http://www.essl.at/works/rtc.html
Je suppose que plus d’une personne ici connaissent Max/MSP. Eh bien il existe une relation entre Max et Pure Data (alias Pd) :
Honnêtement, ce type d'infos, on la connaît. On en a déjà parlé ici. Et c'est logique, comme je l'écrivais plus haut, puisque c'est Miller Puckette qui est à l'origine de ces développements.
Par contre, as-tu regardĂ© du cĂ´tĂ© de PWGL qui est une sorte de mix entre Max Msp, CSound, patchwork et Open Music. Logiquement cela devrait t'intĂ©resser. 
          - Compositeur .org -       Forum des Compositeurs : Musique et Composition
   - Hibou57 -
Membre ♪
Messages : 84
Enregistré le : 24/01/2007 13:39:44
Localisation : France
Contact :

   

Message  { par Hibou57

deb76 a écrit :Heu, là je dois avouer que je suis assez perplexe mais c'est intéressant. Parce que manifestement, on a des façons très différentes d'aborder Csound. Il t'intéresse comme pouvant être une base de composition algorithmique (la définition des différentes gammes à partir du système tempéré alors que pour ma part, ce sont plutôt les timbres qu'il est à même de générer. Ainsi qu'aussi de pouvoir avoir des fréquences très précises - notamment au niveau de quarts, huitième et seizième de ton voire autres - de pouvoir moduler un timbre très finement en jouant avec les variations de fréquences.
Oui, j’y pense aussi. Je ne sais pas si tu as vu, j’ai fait la gamme majeure, les trois gammes mineures, et une gamme harmonique à la fin (mais je n’ai pas sut quoi mettre qui puisse correspondre au Ré et au Si).

C’est juste que ne trouve pas très commode de n’utiliser que des chiffres, et que je préfère les constantes symboliques (je suis sensibilisé à la question des langages en tout jour aussi, c’est pour ça).

Je ne présentais pas ça comme un moyen de ne jouer qu’avec la gamme tempérée, mais comme un moyen de définir n’importe quelle gamme.

Une gamme, c’est une palette, et l’harmonie a besoin de palette (que ce soit dans le son ou l’image), parce que l’utilisation d’une forme de palette garantie la cohérence.
deb76 a écrit :Honnêtement, ce type d'infos, on la connaît. On en a déjà parlé ici. Et c'est logique, comme je l'écrivais plus haut, puisque c'est Miller Puckette qui est à l'origine de ces développements.
Je ne connaissais pas Miller Puckette avant ça (je ne suis pas du milieux).
deb76 a écrit :Par contre, as-tu regardé du côté de PWGL qui est une sorte de mix entre Max Msp, CSound, patchwork et Open Music. Logiquement cela devrait t'intéresser.
Merci, j’essaie ça tout de suite.

Je ne regrette pas d’être passé par ici, ce genre de liens, ça valait le coup.

-- EDIT -- KO pour PWGL, ça ne dĂ©marre pas. J’ai une erreur de pointeur directement au dĂ©marrage et puis plus rien, mĂŞme après plusieurs tentatives. Le Readme.pdf ne dit rien au sujet de cette erreur. 
          - Compositeur .org -       Forum des Compositeurs : Musique et Composition
   - Hibou57 -
Membre ♪
Messages : 84
Enregistré le : 24/01/2007 13:39:44
Localisation : France
Contact :

   

Message  { par Hibou57

Pour la composition algorithmique avec CSound, un tutoriel ici :
A Csound Algorithmic Composition Tutorial (Michael Gogins) 
          - Compositeur .org -       Forum des Compositeurs : Musique et Composition
   - deb76 -
Membre ♪♪♪♪♪
Messages : 2774
Enregistré le : 07/09/2008 21:18:25
Localisation : Haute-Normandie
Contact :

   

Message  { par deb76

Je ne présentais pas ça comme un moyen de ne jouer qu’avec la gamme tempérée, mais comme un moyen de définir n’importe quelle gamme.
Une gamme, c’est une palette, et l’harmonie a besoin de palette (que ce soit dans le son ou l’image), parce que l’utilisation d’une forme de palette garantie la cohérence.
Oui, j'ai bien compris. Mais justement, je ne travaille pas dans ce cadre avec Cound, je vais plutôt le faire avec des fréquences qui ne sont pas forcément des notes et d'autre part je vais plutôt m'attacher à la partie définition/élaboration de l'instrument avant de m'attaquer au score. Un exemple, j'ai dans mes archives un patch de Jean-Claude Risset - il faut que je le retrouve - qui est exactement le timbre numérique que je recherche, qui me rappelle la 4X de l'Ircam. Et bien, ce son, là, je vais voir comment il va réagir avec de courtes séquences réalisées dans Open Music.


KO pour PWGL, ça ne démarre pas. J’ai une erreur de pointeur directement au démarrage et puis plus rien, même après plusieurs tentatives. Le Readme.pdf ne dit rien au sujet de cette erreur.
Tu travailles avec quelle plateforme, Mac ou PC ? Car je viens de l'essayer sur mon macbook, il fonctionne. En revanche, c'est vrai que sur PC, ce n'est pas toujours évident, je le trouve plus instable. Ce qui est dommage car en regard de ses possibilités entre Patchwork et Max Msp, cela pourrait-être un excellent outil pour la composition.
Petite question, tu as bien respecté les consignes ci-dessous ?
Windows XP users may have to download and install Microsoft.VC80.CRT DLL. See instructions here.
OS X users have to install libsndfile. The installer is included in the distribution and can also be found here.
 
          - Compositeur .org -       Forum des Compositeurs : Musique et Composition
   - Hibou57 -
Membre ♪
Messages : 84
Enregistré le : 24/01/2007 13:39:44
Localisation : France
Contact :

   

Message  { par Hibou57

deb76 a écrit :Tu travailles avec quelle plateforme, Mac ou PC ?
PC, sous Windows XP SP3.
deb76 a écrit :Petite question, tu as bien respecté les consignes ci-dessous ?
Windows XP users may have to download and install Microsoft.VC80.CRT DLL. See instructions here.
OS X users have to install libsndfile. The installer is included in the distribution and can also be found here.
Oui, j’y ai fait attention, mais ça n’a rien résolu. J’essaierai encore, peut-être avec d’autres builds.

Merci pour ton attention, ça fait plaisir. 
          - Compositeur .org -       Forum des Compositeurs : Musique et Composition
   - Hibou57 -
Membre ♪
Messages : 84
Enregistré le : 24/01/2007 13:39:44
Localisation : France
Contact :

   

Message  { par Hibou57

Une citation à se tordre de rire (enfin, c’est ce que ça m’a fait à moi) :
Il y a quelques dizaines d’années, j’ai suivi un stage sur les statistiques dans lequel le conférencier donnait pour exemple de la puissance de ces traitements celui de la synthèse de musique : après une analyse statistique d’une partition de Mozart (je ne me souvient plus de quel concerto), un algorithme permettait de reproduire « du Mozart » au kilomètre.
« … produire du Mozart au kilomètre » z129z

Source : Faire de la musique avec des algorithmes 
          - Compositeur .org -       Forum des Compositeurs : Musique et Composition
   - deb76 -
Membre ♪♪♪♪♪
Messages : 2774
Enregistré le : 07/09/2008 21:18:25
Localisation : Haute-Normandie
Contact :

   

Message  { par deb76

Merci pour ton attention, ça fait plaisir.
Pas de problème, ça fait plaisir de partager autour de ce type de logiciels. Mais comme tu utilises Pure Data, tu devrais t'inscrire au forum de Codelab, il y a une petite communauté qui travaille autour de PD et Max Msp. Pour Csound, c'est moins évident.

Je suis d'ailleurs en train de me battre avec la dernière édition de WinXound. Je suis en train de piquer une crise. Je m'explique, j'utilisais (heureusement, je l'ai toujours)l'ancienne version WinXound Pro. Qui a l'avantage de m'ouvrir la quasi totalité des fichiers et qui me les compile alors que la nouvelle version, pour une raison que je n'ai pas encore bien comprise, le refuse. D'autre part, cette nouvelle version compile en temps réel ce qui n'était pas le cas de l'ancienne. L'avantage avec cette dernière, c'est en contrepartie, elle enregistre une wave que je peux éditer et surtout me servir. Et c'est ce que je veux, le temps réel, je m'en moque. Et j'ai beau chercher, faire la même chose avec la nouvelle version, je ne trouve pas, et ça me rend plutôt furieux. Pourquoi faire compliquer quand les choses fonctionnaient bien.
Heureusement, j'ai toujours l'ancienne version.
Un algorithme permettait de reproduire « du Mozart » au kilomètre
.
Oui, Mozart avait conçu un jeu oĂą chaque chiffre obtenu avec deux dĂ©s correspondait Ă  une mesure Ă  jouer, prĂ©-Ă©crite, si je me souviens bien. Il avait dit-on trouvĂ© un des premiers algorithmes. Mais un des contemporains de Guillaume de Machaut (dont j'ai perdu le nom malheureusement) avait mis au point un système qui lui donnait la base d'un thème, ou tout au moins les notes Ă  jouer Ă  partir des commandes effectuĂ©es par les Princes. 
          - Compositeur .org -       Forum des Compositeurs : Musique et Composition
Modifié en dernier par deb76 le 15/10/2010 00:23:36, modifié 1 fois.
   - Hibou57 -
Membre ♪
Messages : 84
Enregistré le : 24/01/2007 13:39:44
Localisation : France
Contact :

   

Message  { par Hibou57

deb76 a écrit :Mais comme tu utilises Pure Data, tu devrais t'inscrire au forum de Codelab
Je n’ai pas fait de choix pour entre les deux pour l’instant (je rencontre autant de difficultés avec les deux).
deb76 a écrit :Je suis d'ailleurs en train de me battre avec la dernière édition de WinXound. Je suis en train de piquer une crise. Je m'explique, j'utilisais (heureusement, je l'ai toujours)l'ancienne version WinXound Pro. Qui a l'avantage de m'ouvrir la quasi totalité des fichiers et qui me les compile alors que la nouvelle version, pour une raison que je n'ai pas encore bien comprise, le refuse. D'autre part, cette nouvelle version compile en temps réel ce qui n'était pas le cas de l'ancienne. L'avantage avec cette dernière, c'est en contrepartie, elle enregistre une wave que je peux éditer et surtout me servir. Et c'est ce que je veux, le temps réel, je m'en moque. Et j'ai beau chercher, faire la même chose avec la nouvelle version, je ne trouve pas, et ça me rend plutôt furieux. Pourquoi faire compliquer quand les choses fonctionnaient bien.
Heureusement, j'ai toujours l'ancienne version.
Je vais peut-ĂŞtre dire une bĂŞtise, vu que tu connais mieux que moi, mais j’ai l’impression que c’est dans « File -> Settings -> Compiler Settings -> CSound Compiler Default Flags » que quelque chose ne va peut-ĂŞtre pas, sous rĂ©serve que j’ai bien compris ce qui t’ennuie. Il y a peut-ĂŞtre des paramètres en trop qu’il faut supprimer, parce qu’ils Ă©crasent peut-ĂŞtre ce que tu as dans CsOptions. 
          - Compositeur .org -       Forum des Compositeurs : Musique et Composition
RĂ©pondre