Sujet Programmation midi : programmes et comparatifs
- 32 réponses
- 5 participants
- 1 695 vues
- 12 followers
deb76
Bonjour,
Dans le sujet sur le Minimoog Model D de Behringer noiZe évoquait sa façon de travailller avec un exemple de script créé avec Perle :
Citation de noiZe
# start the drone ( a C note (=> 36) on midi channel 1(=> 0) with velocity 96)
$on_msg(96,36,0);
# modulate some parameters on 16 steps (BPM=120 >> sleep 0.5)
for (my $t=0;$t<16;$t++) # do 16 times
{
# change the cutoff frequency (CC74) with a random value 0 --> 127
&CC(int(rand(128)),74,0); #(value,CC number, channel)
# detune with pitch Bend with a random value 8192 (center) --> 9192
&PB(8192+int(rand(1000)),0); # (value, channel)
# wait for next event
sleep(0.5);
}
# kill the drone
$off_msg(0,36,0); #(velocity, note, channel)
# voilà en 4-5 lignes un drone avec un séquenceur de paramètre à la elektron
et qu'il proposait qu'on ouvre un sujet dédié. Une proposition qui semble intéresser d'autres membres. Un autre membre, Frajean, en tant qu'informaticien développeur qui s'est dit aussi intéressé "par un sujet programmation midi" a mis plutôt en exergue Python : "La mode est plutôt au Python" a-t-il souligné.
Pour ma part, je ne programme pas, je ne suis qu'un utilisateur travaillant plutôt en Common Lisp (Open Music, Opusmodus et Grace) et un peu Python avec Music21. Mais ça m'intéresse de comparer les différentes approches, les différentes notations ou codes écrits dans les scripts d'Opusmodus/Grace Python_Music21 ou visuels avec les patchs d'Open Music, les possibilités aussi dans la génération des flux midi, avec contrôles ou non.
Je note toutefois qu'Open Music et Opusmodus sont spécifiquement des programmes pour la création musicale, avec des fonctions dédiées, natives.
Je mets quelques liens sur les programmes que j'utilise:
Pour Python, j'utilise la plateforme Anaconda Navigator (PC et Mac) associé à Music21 qui est distribué gratuitement:
Anaconda Navigator : https://www.anaconda.com/download/#download
Music21 (a tookit for computer-aided musicology) : http://web.mit.edu/music21/doc/installing/index.html
A noter qu'il y a d'autres plateformes concernant Python.
Toujours en distribution gratuite, le programme Grace (Common Music Mac, PC, Linux) :
http://commonmusic.sourceforge.net/
et sa documentation : http://commonmusic.sourceforge.net/cm/res/doc/cm.html
Le programme de CA0 (composition assistée par ordinateur) Open Music (visual programming environment) de l'Ircam, distribué gratuitement pour les plateformes Mac, PC et Linux est le successeur de Patchwork. La programmation s'effectue à partir de patchs où on connecte les différentes fonctions représentées par des objets (classes et fonctions) entre elles. Plusieurs librairies spécialisées sont proposées et permet toutes les opérations de CAO, d'analyse musicale, etc :
http://repmus.ircam.fr/openmusic/download
Enfin, pour l'instant uniquement porté sur Mac - mais une version PC est prévue - et payant, développé par une petite équipe internationale dirigée par Janusz Podrazik, Opusmodus qui combine CAO et puissant éditeur de partitions, sa version de démonstration est fonctionnelle durant un mois : https://opusmodus.com/fr/
https://debrildidier.fr/debrildidier.fr/Actualit%C3%A9s/Biographie.html
Site (en cours de construction)
Identification séries dodécaphoniques avec Opusmodus
[ Dernière édition du message le 31/08/2017 à 02:09:43 ]
noiZe
J'essayerai quand même bien de m'y plonger parce que Csound+cabbage+Python, çà a l'air méchamment puissant
static volatile
MAis bon la gueule des scripts Csound
Oui, en même temps, le langage a été designé il y a 30 ans (et la rétro-compatibilité est maintenue)!
Mais oui, quand on est habitués à des langages plus modernes, ça fait un peu mal aux yeux (il y a des améliorations avec ce qu'ils appellent la notation fonctionnelle).
Cabbage, je n'ai jamais réussi à le faire tourner vraiment.
Ça compile plus ou moins, mais le build system n'est vraiment pas terrible et sur ma machine ça plante pas mal.
Apparemment, les utilisateurs sur Mac et Ubuntu/Debian n'ont pas ces problèmes (mais je suis sur une distro avec rolling release et je dois avoir des incompatibilités dans les libs).
C'est dommage parce que ça donne envie des VST custom...
Resistance is not futile... it's voltage divided by current
deb76
Bonjour,
J'ai fait un petit PDF avec quelques exemples de patchs avec Open Music et sa librairie Csound. Un des intérêts d'Open Music c'est de pouvoir créer des patchs - à partir du moment où Csound est installé - où chaque paramètre de CSound peut-être contrôlé avec des processus algorithmiques qui seraient fastidieux à insérer dans un interface Csound (comme dans l'excellent CsoundQt qui propose de nombreux exemples d'instruments et de pièces comme Study 2 de Stockhausen et Stria de John Chowning).
A noter que le troisième patch est construit à partir d'une suite de quelques accords de Breathe importée en midifile et avec sa conversion en Csound mais aussi avec une sélection des accords pour les analyser et les identifier selon la classification d'Allen Forte.
http://www.deb8076.eu/CAOPDF/OM&Csound.pdf
https://debrildidier.fr/debrildidier.fr/Actualit%C3%A9s/Biographie.html
Site (en cours de construction)
Identification séries dodécaphoniques avec Opusmodus
[ Dernière édition du message le 04/09/2017 à 13:33:27 ]
noiZe
antart
hello à tous, j'ai vu la discussion sur le topic du moog donc je rejoins !
moi je suis plus de l'école puredata/max mais interessé quand même, et assez à fond dans ce qui est capteur, interfaces et "séquenceurs" auto-générés, je poste donc pour flaguer discretement ce topic prometteur!
[ Dernière édition du message le 17/09/2017 à 04:31:34 ]
noiZe
Frajean
Savez-vous s'il existe un programme permettant de travailler les voicings jazz ? Dans le cas contraire, je crois que je vais m'y mettre...
Dans l'idéal, il faudrait une interface permettant de choisir :
- la tonalité,
- les types d'accords (simples jusqu'aux 7ème, enrichis de 9ème, 13ème et 11ème), avec ou sans basse,
- suite d'accords aléatoire ou parmi des grilles de standards du Real Book (qui peuvent alors contenir des accords de passage hors tonalité choisie, ou des modulations de tonalité),
- le tempo.
L'application afficherait alors :
- Le nom des accords suivant les différentes écritures qu'on peut trouver (m, min, -, Maj7, ^, m7b5, °, etc),
- Les notes jouées (saisie clavier MIDI) sur une portée avec différentes couleurs et le degré (3, b7, #9, b13, #11, ...):
* en noir : les notes OK qui sont bien dans l'accord,
* en vert : les enrichissements ajoutés qui sont bien dans l'harmonie,
* en rouge : les notes interdites, hors harmonie,
* en bleu : les notes manquantes,
* en gris : les notes "inutiles" telles que la fondamentale ou la 5te, dévolues à la contrebasse, les notes en doublon.
L'application devrait donc gérer les enrichissements ou les remplacements de notes autorisés, repérer les renversements.
Qu'en pensez-vous ?
noiZe
https://sourceforge.net/projects/impro-visor/
https://www.cs.hmc.edu/~keller/jazz/improvisor/
[ Dernière édition du message le 25/06/2018 à 00:06:30 ]
Frajean
noiZe
Si tu as des exemples fonctionnels de trucs en python audio/midi que tu voudrais partager, je suis preneur. Je m'y suis mis récemment mais le temps me manque et j'ai un peu tendance à chercher l'info plus qu'à coder. Mais EN MP ce serait sans doute mieux.
- < Liste des sujets
- Charte