Editeur de patchs FB01
- 94 réponses
- 17 participants
- 15 222 vues
- 15 followers
marzacdev
Je travaille actuellement sur un éditeur de patchs / bibliothèques
pour le FB01. Pour l'instant on peut éditer les instruments en temps
réél, éditer les opérateurs, envoyer des notes ...
J'aimerai savoir si vous avez des requêtes à formuler ou des conseils
pour que je puisse faire au mieux.
Page du projet : https://sourceforge.net/projects/fb01editor/
Je précise qu'actuellement l'éditeur est développé pour Windows
mais il pourrait devenir portable pour Linux et MacOS.
fredslab.net - au Synthfest 2042 de Nantes!
marzacdev
https://sourceforge.net/projects/fb01editor/
Bonne synthèse FM à tous !
fredslab.net - au Synthfest 2042 de Nantes!
lbgo000
Bonjour Frédéric
Je suis nouveau sur ce forum – je viens d’acquérir un FB-01 – et j’ai bien aimé cette petite boîte.
Et comme tant d’autres j’ai commencé à chercher un éditeur de sons – et je suis tombé sur le tien.
Tout d’abord – merci pour ton travail qui est remarquable et ton attitude concernant le statut freeware de ton logiciel.
Je souhaiterais te demander un conseil.
En fait, je travail peu avec l’ordinateur sur mes synthés – j’aime bien les piloter à partir des surfaces de contrôle.
Donc j’ai commencé à faire un patch pour ma BCR2000 de Behringer pour piloter le FB-01. Malheureusement je suis assez nul dans la programmation sysex et néanmoins j’ai bien réussi à programmer la partie générale des paramètres de l’instrument – « volume », « banc # », « pan » etc.…
Le « Service Manual » est suffisamment clair pour ça. Ceci m’a donné des lignes de sysex comme suit :
(le canal midi système est le 11 dans mon cas)
pour changer le volume de l’instrument 1
F0 43 75 0A 24 08 val F7
où F0 43 75 : id de FB-01
0A : # du canal midi (11 dans mon cas)
24 : # de l’instrument (1 dans mon cas)
08 : # du contrôleur « volume »
val : plage de 0 à 127 que envoi ma BCR2000
F7 : fin de message exclusif
Tout marche – je tourne le potar sur la BCR2000, le volume change, le bonheur quoi.
Ca se corse après
Je n’arrive pas à faire marcher aucun paramètre individuel de la voie.
La logique m’échappe :
Le manuel précise pour LFO SPEED par exemple :
Parameter N° : 48 (la j’imagine que c’est le # du contrôleur correspondant en format hexadecimal)
Parameter Name : [********] LFO SPEED (la je suis largué – c’est quoi ces *******)
Data : 0-255 (la j’imagine que c’est une plage à envoyer)
Et puis y a pire – les fonctions groupées sur le même contrôleur :
Parameter N° : 4D
Parameter Name : [0aaa00bb] [a] Pitch Modulation sensivity
[b] Amplitude Modulation sensitivity
Data : 0-7 pour PMS
0-3 pour AMS
…. complètement largué moi…. L
j’ai essayé de capter les données qu’envoi ton programme quand je change la valeur du paramètre en question, mais ce que j’ai eu ce n’était pas des lignes sysex habituelles mais ceci :
pour LFO SPEED
« noteoff 88 112 67 » : je change la valeur , mais reçois toujours le même message
pour PMS/AMS le même message :
« noteoff 88 112 67 »
Pourrais-tu m’éclairer sur ce sujet ?
Comment écrirai-tu les lignes sysex pour ces paramètres ?
Je t’en remercie beaucoup
lbgo000
marzacdev
Merci pour tous tes compliments, cela m'encourage beaucoup
à continuer la version 2.0 du logiciel (complètement réécrite).
Pour ce qui est de l'implémentation MIDI, je comprend très bien
ton problème, ça n'est absolument pas clair du tout. De mon coté
j'ai du me référer en permanence à la documentation et surtout
tester, tester ... et comparer avec l'éditeur disponible sur Atari.
Concernant le manuel que tu cites, je ne l'ai jamais vu. J'ai surtout
utilisé le manuel utilisateur papier classique.
Pour les paramètres du FB01, il existe trois catégories de messages
pouvant être envoyés (param change) de plusieurs façons différentes !
Je vais essayer d'être le plus clair possible (c'est pas facile) :
1) Les paramètres des instruments (configuration parameters)
-> Les paramètres globaux du set d'instrument
Ex : LFO Speed, LFO waveform, AMD, PMD ...
Attention : ne pas confondre instrument et voix.
L'instrument est défini par un canal MIDI, un volume, un degré de transposition ...
Il est associé à une voix qui peut être la trompette de la banque 2, le piano de la banque 5 ...
a) Changement par canal MIDI
Permet de reconfigurer les paramètres des instruments associés à ce canal MIDI,
(remarque : pour un canal MIDI donné, il peut y avoir de 0 à 8 instruments).
0xF0, 0x43, 0x16 + n° canal MIDI (0 - 15), 0x15, n° paramètre (0 - 23), valeur paramètre, 0xF7
b) Changement par canal système
Permet de reconfigurer les paramètres d'un seul instrument déterminé par son numéro.
0xF0, 0x43, 0x75, N° canal système (0 - 15), 0x18 + n° instrument (0 - 7) , n° paramètre (0 - 23), valeur
paramètre, 0xF7
2) Les paramètres de voix (voice data parameters)
- Les paramètres de configuration de la voix sélectionnée
Ex : Algorithme, Opérateurs on/off, Paramètres des opérateurs ...
C'est un peu la même chose sauf que l'octet du paramètre est scindé en deux.
Valeur du paramètre (n° bits) : 76543210
Valeur basse : 00003210
Valeur haute : 00007654
Exemple : 0x72
Valeur basse : 0x2
Valeur haute : 0x7
C'est fastoche avec l'hexadécimal.
a) Changement par canal MIDI
0xF0, 0x43, 0x16 + n° canal MIDI (0 - 15), 0x15, n° paramètre (64 - 127), valeur basse, valeur haute, 0xF7
b) Changement par canal système
0xF0, 0x43, 0x75, N° canal système (0 - 15), 0x18 + n° instrument (0 - 7) , n° paramètre (64 - 127), valeur basse,
valeur haute, 0xF7
3) Les paramètres systèmes (system parameters)
- Les paramètres globaux de la machine ...
Ex : Master volume, System channel ...
0xF0, 0x43, 0x75, N° canal système (0 - 15), 0x10, n° paramètre (0 - 36), valeur, 0xF7
Concernant les index des paramètres et leurs plages de valeurs, tu pourras trouver
tout cela dans le manuel utilisateur du FB01.
Tu remarqueras aussi qu'il y a des paramètres redondant mais c'est un peu plus difficile
à expliquer, il y a les paramètres courants, ceux qui sont chargés avec la voix ...
J'espère que cette mini documentation peut t'aider, je reste ouvert à toute question.
Cordialement,
fredslab.net - au Synthfest 2042 de Nantes!
marzacdev
Concernant ta question sur les paramètres :
[********], il s'agit d'un mot de 8 bits, soit un octet. Les bits sont
rangés dans cet ordre : 76543210
Quand ils écrivent que le paramètre est sous la forme [00aaaa00]
par exemple, cela veut dire que le paramètre est sur 4 bits, il y a
donc 2^4 valeurs possibles, c'est à dire 16 (0 - 15).
Prenons la valeur 11, en binaire c'est 1011, le paramètre sera donc
[00101100] soit la valeur 44 en base dix.
Si le paramètre c'est [bbaaaa00] cela veut dire qu'il y a une donnée
de 0 à 3 (b) et une de 0 à 15 (a).
En espérant être clair,
fredslab.net - au Synthfest 2042 de Nantes!
marzacdev
Je me permet de vous prévenir de la sortie de la version 2.0.
Cette version gère, entre autre, les automations ...
Pour télécharger l'éditeur, c'est par ici :
fredslab.net - au Synthfest 2042 de Nantes!
meldianen
Grande nouvelle !
Je vais tâcher de le tester ce week-end !
Sinon le portage vers d'autres OS est-il prévu ?
Merci en tout cas de fournir un éditeur open source pour cette machine. Peut-être d'autres machines par la suite ? :D
Cordialement.
marzacdev
Bonjour à toi,
Le portage vers d'autres OS est toujours au programme et est prévu
dans le code, maintenant que l'éditeur est stable et que tout fonctionne
correctement (à ce ue je sache), ça doit pourvoir se faire ...
Citation de meldianen :
Peut-être d'autres machines par la suite ?
Heu, c'est déjà beaucoup de boulot le FB01 ! Tu sais que depuis que
je bosse sur cet éditeur (novembre 2009), je n'ai encore fais aucune
track avec le FB01 ? (car trop saoulé par la quantité de tests à éffectuer
sur la machine mais au final je la connais par coeur).
Sinon, je tiens à préciser pour les personnes qui utilisent mon projet
et qui veullent soutenir mon travail, qu'un espace de dons paypal est
ouvert sur sourceforge.net et que cet argent me revient directement.
https://sourceforge.net/project/project_donations.php?group_id=289239
Merci par avance pour votre soutien,
Frédéric
fredslab.net - au Synthfest 2042 de Nantes!
x_X_x_av
Salut
Beau boulot! Très pratique, une fois qu'on a compris la logique de la machine.
Je signale que la v2 (au moins) fonctionne sous Linux avec Wine. Donc à faire connaitre sur linuxmao.
Une petite critique tout de même: je préférais les zones de saisie de la V1. On pouvait saisir une valeur directement, et utiliser la molette de la souris.
Et une suggestion pour la v3: regrouper les paramètres de voix sur de même écran: opérateurs, LFO, etc…
marzacdev
Bonjour,
Merci pour ton commentaire, j'ai pas mal réfléchi pour que l'éditeur
soit le plus ergonomique possible et que tous les paramètres soient
arrangés de façon logique.
Néanmoins, par certains endroits ça coince un peu, comme tu le remarques
pour les voices, regrouper tous les paramètres sur une même page aurait
été plus pratique mais ça déséquilibrait les écrans et du point de vue de la
programmation, les objets operators et voices étant séparés, il était plus
facile et plus clair de faire des interfaces séparées.
Tu remarqueras aussi que les paramètres globaux du set dans l'interface
de configuration, ça n'est pas terrible non plus mais pour changer tout ça,
ça n'est pas juste trois clicks dans QtDesigner, il faut revoir la structure
de certaines classes.
Pour ce qui est des zones de textes, je savais que ça ne pouvait pas plaire
à tout le monde mais c'est un changement que l'on m'a suggéré et avec
l'utilisation, on se rend compte que l'édition est bien plus rapide.
Pour la v3, je pourrais rajouter une fonction permettant de taper directement
la valeur dans le contrôle, avec l'aide d'un click droit par exemple.
Merci pour tes commentaires,
fredslab.net - au Synthfest 2042 de Nantes!
- < Liste des sujets
- Charte