Travail MIDI
- 77 réponses
- 9 participants
- 3 629 vues
- 7 followers

amleth

Bon, j'ai une question un peu "à part". Voilà, je suis en ce moment en train d'éplucher les possibilités logicielles pour la CAO (Composition Assistée par Ordinateur), c'est à dire ce qui permet de formaliser des structures musicales (séries, accords, nuages, trucs, etc.) et de leur appliquer différentes transformations syntaxiques. Je connais un peu OpenMusic, PWGL et SCOM, mais je n'ai pas envie de les utiliser pour un tas de raisons.
Bon, ce que j'aimerais vraiment, c'est un langage de programmtion apte à traiter des informations MIDI. J'ai pensé à deux choses :
- langage objet classique (pour moi, c'est Ruby, mon chouchou, + la librairie MidiLib)
- MatLab + midi toolbox (mais putain c'est reuch !)
Dans ce goût-là, qu'est-il possible de faire en MIDI avec Max/MSP ? Je ne suis pas un grand praticien de ce soft. Peut-on définir des objets comme on le ferait avec OpenMusic, et leur coller au cul des fonctions qui transformeraient les données ? Un petit exemple, je voudrais créer un objet "série dodécaphonique", avec des fonctions de rétrogradage, de renversement, etc.
Voilà, je sais que ce type d'approche est plutôt le terrain des logiciels cités plus-haut, mais si je pouvais concilier au sein de Max travail MIDI et audio, ça serait cool.
Merci à tous !
And we're going to have this transitory cow fling thing right here in Cicely?

deb76

Citation : Je connais un peu OpenMusic, PWGL et SCOM, mais je n'ai pas envie de les utiliser pour un tas de raisons.
Pour PWGL, je te comprends, en dehors de la partie synth qui semble relativement stable, le reste est plantage assuré malgré la dernière version. J'ai mis, néanmoins, pour ceux que ça intéresse, un petit tuto sur ce soft qui doit atteindre sa maturité :
http://www.deb7680.com/tutos/tutopwgl.htm
SCOM, je ne le connais pas mais je vais le découvrir grâce à toi. Je vais regarder ça dès ce soir, en rentrant du boulot.
Citation : Peut-on définir des objets comme on le ferait avec OpenMusic, et leur coller au cul des fonctions qui transformeraient les données ? Un petit exemple, je voudrais créer un objet "série dodécaphonique", avec des fonctions de rétrogradage, de renversement, etc.
Bah ça, un patch Max Msp utilisable en VST permettant ça, je suis preneur. Ceci étant, on peut le faire effectivement avec Open Music. Mais pour ma part, je me heurte, en tout cas j'ai cette impression, à une version bridée d'Open Music pour Windows. Il me manque tout un tas de modules pour le faire.
Pour ma part, heureusement que mon vieux Patchwork, l'ancètre d'Open Music fonctionne toujours sur mon old Mac G3, pour faire ce genre de choses.

deb76


amleth

J'étais sur de te voir ici. Donc tu vois, tu comprends un peu mon soucis...
And we're going to have this transitory cow fling thing right here in Cicely?

daams

@ amleth "Voilà, je sais que ce type d'approche est plutôt le terrain des logiciels cités plus-haut, mais si je pouvais concilier au sein de Max travail MIDI et audio, ça serait cool. "
Ben, en fait c'est le travail de Max. à la base, Max est un logiciel de travail midi : récupération des messages, transformation, restitution. L'interface MSP est quelque chose de "nouveau", et ne gère que la partie sonore.
Que veux-tu faire ? ta question est très vague !


amleth

Entre temps, j'ai trouvé Common Music, une librairie LISP pour faire de la composition algorithmique.
Voilà, c'est ça que je veux faire. Générer des notes, traiter des structures, rétrograder des séries, etc.
And we're going to have this transitory cow fling thing right here in Cicely?

Anonyme

Citation : Ben, en fait c'est le travail de Max. à la base, Max est un logiciel de travail midi
Max est un logiciel de travail Midi, certes, mais conçu pour l'utilisation temps réel plutôt que dans le cadre de l'aide à la composition. Pour prendre un exemple, établir un ensemble de règle et obtenir tous les résultats possibles sera nettement plus aisé dans OpenMusic que dans Max par exemple.
Ceci étant dit, puisqu'il est possible de créer et manipuler des listes de valeurs ou symboles dans Max, beaucoup de choses sont possibles. La librairie de Karlheinz Essl ( plus d'info ) est probablement un bon exemple.

amleth

Ma question initiale portait sur ce qu'il était possible de faire dans Max à un niveau compositionnel. la librairie de K. Essl est déjà un exemple...
Hop.
And we're going to have this transitory cow fling thing right here in Cicely?

daams


J'utilise Max depuis la version 53b (1990, environ) comme aide à la composition. Bien que je ne connaisse pas OpenMusic, SCom etc... je peux vous garantir les résultats les plus brillant avec Max/MSP. Notamment la gestion des valeurs aléatoires et des listes de valeurs associées. Précision rythmique à la milliseconde, hauteur au hertz près, reconnaissance des hauteurs depuis "fiddle", si ce n'est pas de l'assistance à la compo !
Bon maintenant, je ne suis pas au courant de tout vu que je me fait mes propres librairies et que je ne regarde pas celles des autres (d'ailleurs, je viens de faire un petit tour chez K.Essl, il y a des choses tres interessantes

Quel est votre domaine de composition ? (contemporain, electroacoustique, mixte, instrumental, live electronics etc...)

amleth

Comme j'ai la chance d'avoir des spécialistes de Max sous la main, je me permets, messieurs, de vous décrire le plus exactement possible ce que j'aimerais faire.
L'objectif final est de générer un fichier MIDI, qui puisse être importé dans un séquenceur classique (j'utilise Tracktion, mais là n'est pas la question) pour déclencher des sons chargés dans un sampler virtuel (j'utilise MachFive 2, mais là encore, on s'en cogne).
Au lieu d'écrire directement des informations MIDI, j'aimerais écrire des algorithmes paramétrables qui peuvent générer ces notes. Ainsi, je gagne en flexibilité, c'est la base de la composition assistée par ordinateur...
Voilà le genre d'algo sur lequel je planche en ce moment :
Il y a un bourdon, une fondamentale qui se répète à une vitesse variable et à une amplitude variant entre deux bornes. Jusque là, c'est un bête random.
Ensuite, à chaque itération (à chaque nouvelle note), il y a une certaine probabilité que le pitch change (+ ou - un demi-ton).
De plus, plus le pitch actuel est éloigné du pitch du bourdon, plus cette probabilité augmente...
Bon, j'arrête là... Tout ça pour dire qu'avec un langage de prog, je sais faire, mais avec un paradigme graphique, je suis pas sûr que ça soit
1°) possible
2°) optimal
Alors, Max ?
And we're going to have this transitory cow fling thing right here in Cicely?

daams

ce sera :
1) possible
2) optimal
3) avec une bonne prise de tête sur le graphisme, ce sera convivial et flexible.
note : je n'ai nulle part écrit "vite fait"


Anonyme


amleth

Allez, bonne nuit à vous.
And we're going to have this transitory cow fling thing right here in Cicely?

daams



amleth

En fait, si j'avais envie d'aller voir du côté de Max, c'est parce que je trouve son interface rationnellement et émotionnellement motivante, surtout depuis qu'elle est full vectoriel avec la v5.
Mais il semblerait que pour des algo abstraits, le paradigme visuel modulaire ne soit pas aussi efficace que le bon vieux script...
C'est un vieux débat que les utilisateurs d'OpenMusic connaissent bien...
And we're going to have this transitory cow fling thing right here in Cicely?

daams

Citation : surtout depuis qu'elle est full vectoriel avec la v5.
peux-tu m'en dire plus ? a comprend po

Citation : Mais il semblerait que pour des algo abstraits, le paradigme visuel modulaire ne soit pas aussi efficace que le bon vieux script...
Je vais faire mon niais, mais je comprend pas non plus.
Si par "paradigme visuel modulaire" tu entends l'interface visuelle de Max, sache que ce n'est autre que du language C.
Tu peux l'éditer en text, en script, ou en visuel. Il n'y a pas de question d'efficacité. Tout marche pareil.
Qu'appelles-tu un algo abstrait ?


amleth

Ce que je veux dire, c'est que chaque logiciel de musique opte pour un mode de représentation et d'interaction particulier, en fonction du but qu'il vise. Max, c'est pour faire du temps réel (à la base non ?), donc l'emploi d'une interface ou on connecte des modules permet de clairement visualiser le trajet du signal (ou des données). On retrouve ça dans Simulink, vendu avec MatLab. Un langage de programmation qui suit quant à lui "l'esthétique du script" propose un rapport plus écrit, moins visuel, sera moins pratique pour représenter certains concepts (tu peux facilement perdre la vue d'ensemble dans un code source un peu fourni), mais plus efficace pour d'autres (représenter une abstraction telle que la boucle, par exemple). A chaque support, à chaque interface, ses spécificités.
Quand tu dis : "l'interface visuelle de max, c'est du C, tu peux l'éditer en texte, etc.", est-ce que tu sous-entends que l'interface de Max permet de générer du code source C à la volée, et qu'on pourrait regarder la traduction de chaque patch en C ? Une sorte d'interface WYSIWYG pour le C, comme OpenMusic le fait un peu pour le LISP ? Si c'est le cas, et bien... ça me troue le c... Véridique ?
Quand je dis, maladroitement, certes, "algo abstrait", c'est pour désigner un algorithme qui traite des données indépendemment d'une finalité matérielle concrète. Mon problème, c'est de retrouver à la composition, la même flexibilité dans la manipulation des structures musicales que j'ai avec un langage de prog traditionnel; Une boucle sur un tableau, c'est abstrait tant que tu n'as pas mappé les résultats vers un sampleur ou un module de synthèse... Ma volotné est d'être puissant au niveau traitement de données, de pouvoir traduire ça en MIDI, et de piloter des VSTi et autres gadgets qui font du bruit.
V'là.
Je reprécise que je connais hyper mal max...
And we're going to have this transitory cow fling thing right here in Cicely?

daams


En fait je ne connaissais pas Max5, donc pas sa nouvelle interface. (en fait je me soucis très peu de l'esthétique, et je travaille sur des très vieilles versions sous Os9, qui vont très bien

En ce qui concerne le C, je ne sais pas plus que ce que je t'ai dis, (en fait, ce ne doit pas être exactement le languageC comme on l'entend courament)mais bon en tout cas, tu peux compiler et donc faire des appli autonomes, ce qui ouvre la porte à pas mal de truc, il faut dire. Tu peux éditer pas mal de truc aussi en script, etc.
Je t'encourage à rentrer dans le monde de la programmation Max. Si tu cherches ce que tu as déjà ailleurs, il est sur et certain que tu ne le retrouvera pas !
Si tu veux, je peux t'aider si tu as du mal à faire tes premiers pas.
Le mieux est de partir d'un exemple concret, pas trop général, qui part d'un point pour arriver à un autre (ex: plus je joue dans les aigus sur mon clavier, plus la distorsion du mon VST s'ouvre, etc...)et après, on complexifie...
Mais pour revenir au sujet du topic, Max c'est d'abord le CHAMPION DU MONDE DU MIDI !!


amleth

Ensuite, je me pose une question, de-super-newbie-qui-tourne-autour-de-la-bête-depuis-des-années-sans-oser-s'y-ruer.
Peut-on, à l'instar de Bidule ou Audiomulch, importer un VST externe dans un patch Max, et ainsi récupérer ses entrées et sorties pour coller avant et après des traitements ? En gros, existe t il un élément "external VST" ?
Si c'est le cas, alors...
And we're going to have this transitory cow fling thing right here in Cicely?

frereyvan



daams


Il y a un external qui s'appelle vst~ en qui gère tout le binx.
Tant que ton mac le supporte, tu peux empiler les vst.
Quand tu ouvres un VST dans Max, il est EVIDENT que tu puisse éditer TOUS ses parametres. C'est là que ça commence à être interressant.

C'est là que ça commence.

amleth

J'ai pas trop envie de polluer l'espace avec des questions cons, je suis assez grand pour lire une doc, mais juste rapidement, quels objets me faut-il aller étudier pour avoir une sorte de super générateur aléatoire de notes MIDI entièrement paramétrable, qui serait donc branché dans l'entrée MIDI de l'objet vst~ ?
mici...
And we're going to have this transitory cow fling thing right here in Cicely?

daams

Je suppose que c'est pour piloter un expandeur
si c'est le cas, regarde les fonctions : metro, random, makenote, noteout.
Pour l'utilisation du vst, il ne s'agit pas de midi, mais d'audio. donc, c'est un objet MSP (vst~) qui va faire le boulot. tu dois entrer via ta carte son sur un canal qui sera branché à ton vst, puis ton sort normalement.
échange : si tu m'explique comment je peux poster une photo copie d'écran(


amleth

En témoigne mon sympathique pingouin :
And we're going to have this transitory cow fling thing right here in Cicely?

daams

Mais bon, je vais essayer le coup du profil. (je suis une véritable quiche en webidouilles)

- < Liste des sujets
- Charte