Chargement...
 
[Voir/Cacher menus de gauche]
[Voir/Cacher menus de droite]

7 - Développer/traduire/documenter/annoncer une application

Dernier post
Page : 1/2   -   Aller directement à la page : 1  2 

PyFeld - randomise ton Blofeld comme un pro

RoKN utilisateur non connecté France
Salut !

Je viens tout juste de terminer la permière version de PyFeld, un petit soft qui ne fonctionne qu'avec l'excellent synthé Blofeld de Waldorf :
http://www.waldorf-music.info/en/blofeld-overview

Codé n'importe comment en Python 3 et utilisatant la bibliothèque python-rtmidi :
https://pypi.python.org/pypi/python-rtmidi

Voici donc le lien de mon dépôt Github :
https://github.com/rokn311/PyFeld

olinuxx utilisateur non connecté France
informationinfo
Sujet déplacé dans la catégorie adéquate de forum.

Merci pour la partage.
Tu nous expliques à quoi il sert en français ?

RoKN utilisateur non connecté France
Et bien j'ai acquis un Blofeld ya quelques temps déjà, et je le trouve vraiment excellent, c'est un vrai monstre de synthèse qu'on pose dans le coin du bureau et qui peut habilement faire office de 16 synthés (il est multi timbral).

Bref, une tuerie.

Seulement voilà, pour bidouiller le Blofeld, il faut aller chercher tout les paramètres voulus dans une matrice interne. Dans l'absolu c'est assez bien foutu, assez pour qu'avec seulement 7 potars (+ 1 de volume) on arrive a accéder à tout les paramètres et modulations, et ils sont énormes (possibilité de router presque n'importe quoi vers presque n'importe où, un peu à la manière d'un synthé modulaire... mais sans câbles :-P ).
Comme c'est très complet et qu'on peut s'y perdre un peu, les mecs de chez Waldorf ils ont pensé à un truc génial : la possibilité de randomiser tout les paramètres ! Je trouve cette idée géniale... mais elle a ses limites.

En effet, la limite de la randomisation "manuelle" c'est que :
1) Il faut appuyer sur 2 boutons, naviguer avec un potar, appuyer sur les 2 même boutons,
2) La randomisation affecte tout les paramètres, impossible de ne randomiser que les oscillateurs par exemple.

Je me suis donc demandé s'il existait un soft qui permettrait de randomiser que certaines parties, et je suis donc parti à la recherche d'un tel soft armé d'une machette et d'un chapeau...
... et effectivement, il existe des softs, mais :

1) MonstrumFeld : payant, cher, pas de randomisation "unique"
2) xtor : pas de randomisation du tout
3) Guru + Blofeld definitions (http://bit.ly/1M9lwHA et http://bit.ly/1L87R2A , trouvés ici : http://bit.ly/1j84aE8 ) : top, mais requière Renoise (que je conseille vivement au passage)

Pas de soft qui permette de ne randomiser qu'une seule partie... mad

Comme j'étudie le Python depuis quelques temps déjà, je me suis dis que c'était la bonne occasion de faire un exercice cool, alors je me suis lancé dans le développement d'un petit soft qui permette de ne randomiser que quelques parties dans un premier temps, ce que fait la version 0.1 actuellement en ligne.

La version 0.1 est très soft, elle ne permet que d'accéder aux contrôles de base, pas d'influer sur le routage des modulations, les effets et les parties avancées du arpeggiateur... mais ça viens, ça viens wink

Alors comment ça fonctionne ?
Pour ça il faut avoir installé l'interpréteur python3 ainsi que la lib python-rtmidi
Ensuite :

1) Tu branches ton Blofeld en USB (j'ai pas testé avec une connexion midi),
2) Tu lances le soft (pyfeld_main.py pour la version 0.1),
3) Tu choisis le ou les paramètres que tu veux randomiser,
4) Tu cliques sur "Send".

Je n'ai testé que sous Archlinux avec une connexion USB, je ne sais pas du tout si ça fonctionne avec Windows ou Mac, mais j'attends d'éventuels retours wink

Note :
Je suis en train de rebidouiller la soft, d'ajouter les paramètres SysEx (pour plus de randomisation en profondeur) et des options de sauvegarde.
Je vais aussi remplacer l'actuelle liste (ver 0.1) par des boutons, plus simple, plus souple, plus mieux.

olinuxx utilisateur non connecté France
salut RoKN, et merci pour cette explication.
J'ai ajouté un lien vers ici dans la page Waldorf Blofeld.
Sache que tu peux créer une page pour ce logiciel sur linuxmao si tu veux lui donner un peu de visibilité. Il me semble avoir lu que quelques membres ici semblent se l'être procuré ce BlodFeld, il pourrait donc t'aider pour le débogage.

En tout cas, bravo à toi !

pierrotlo utilisateur non connecté Suisse
Une petite question :
comment j'installe ce module python-rtmidi sur une distrib linuxMint (base Ubuntu) ?
PArce que je me retrouve toujours avec ceci :

Traceback (most recent call last):
  File "./pyfeld_main.py", line 20, in <module>
    import rtmidi
ImportError: No module named 'rtmidi'


Avec une install normale, il me le met dans /usr/local. Et j'ai le même message d'erreur.
Je préfèrerais nettement dans l'usr tout court.
En te remerciant

RoKN utilisateur non connecté France
Tu as essayé de l'installer en passant par pip3 ?
sudo pip3 install python-rtmidi

Si pip3 n'est pas installé :
sudo apt-get install python3-pip


pierrotlo utilisateur non connecté Suisse
Bob ben pas moyen.
En utilisant pip3 j'ai une erreur car il ne trouve pas Python.h

Et je ne peut pas installer Python3.4-dev car il manque la python3.4-stdlib.

J'ai bien activé les dépôts sources pour info.

RoKN utilisateur non connecté France
Je ne connais pas Mint, je ne sais pas si leurs dépôts sont propres à Mint ou sont les mêmes que Debian et Ubuntu.
Que donne un :
sudo apt-get install python3


pierrotlo utilisateur non connecté Suisse
Ouaip,
A veux pas parce que, c'est la 3.4. Et une question de python-stdlib
Donc directement à voir avec GCC.
Et je pense, qu'utilisant une version LTS, je devrais attendre.

MAis c'est curieux tout de même.

Tu es sous quelle distrib ?

RoKN utilisateur non connecté France
Même en python2.7 tu n'arrives pas à chopper python-rtmidi ?

Testé sous Archlinux.

pierrotlo utilisateur non connecté Suisse
si je tape en console :
python

puis

import rtmidi


C'est ok. Pas de message d'erreur.

Maintenant depuis le répertoire PyFeld-masters

./ pyfeld_main.py
Traceback (most recent call last):
  File "./pyfeld_main.py", line 20, in <module>
    import rtmidi
ImportError: No module named 'rtmidi'


ou encore

python pyfeld_main.py 
Traceback (most recent call last):
  File "pyfeld_main.py", line 23, in <module>
    from tkinter import *
ImportError: No module named tkinter


tkinter est installé

RoKN utilisateur non connecté France
Il faut différencier python2 et python3.
Ton environnement par défaut doit être python 2, le module tkinter en python3 st appelé "tkinter" alors qu'en python2 c'est "Tkinter" (la majuscule fait la différence).
Lance soit comme ceci :
./pyfeld_main.py

soit :
python3 pyfeld_main.py

... seulement, apparemment chez toi tu peux pas installer python3, or j'ai bidouillé Pyfeld en python3 :-/

RoKN utilisateur non connecté France
J'ai trouvé ce qui pourrait être la solution !
D'abord :
sudo pip2 install python-rtmidi

Ensuite, édite mon code en remplaçant :
from tkinter import *
En :
from Tkinter import *
Chez moi ça marche (en Python2)

pierrotlo utilisateur non connecté Suisse
Fait et cela roule

pip2 install python-rtmidi
Requirement already satisfied (use --upgrade to upgrade): python-rtmidi in /usr/local/lib/python2.7/dist-packages/python_rtmidi-0.5b1-py2.7-linux-x86_64.egg
Cleaning up...


En gros, n'étant paas familier de python, cela me dit que c'est OK

Puis si je lance en ayant modifié : import tkinter -> import Tkinter

./pyfeld_main.py                             
Traceback (most recent call last):
  File "./pyfeld_main.py", line 20, in <module>
    import rtmidi
ImportError: No module named 'rtmidi'


Par contre :

python2 pyfeld_main.py

me lance le prog.

Voilà et en te remerciant.

RoKN utilisateur non connecté France
Avec plaisir ;-)
je suis pas développeur, je bricole, bidouille et découvre, ravi d'avoir réglé le soucis :-)

Je précise encore que c'est la première version ça, fonctionnelle mais moche et assez restreinte comparé aux possibilités de contrôle du Blofeld.
Il sera plus intéressant quand j'aurai pris le temps d'implémenter la randomisation des modulations et des effets.

pierrotlo utilisateur non connecté Suisse
Je pense que tu utilise les sysex pour ce faire.
Est-il envisageable d'en faire un logiciel pilotant tous les contrôles de ce synthé ?

Je ne développe pas en Python, mais je trouve ce language pas mal du tou, maintenant que j'ai un eemple concret devant les yeux.

RoKN utilisateur non connecté France
Justement, actuellement ça ne gère que les CC, pas encore les SysEx.

pierrotlo utilisateur non connecté Suisse
Ce serait cool de voir cela. Je vais voir si je trouve le Midi SHeet.

pierrotlo utilisateur non connecté Suisse
OK. je viens de trouver en même temps que toi le fichier blofeld_sysex.
Tu souhaiterais pousser plus loin ce "petit" programme ?

Page : 1/2  [Suivant]
1  2 
Afficher les articles :
Aller au forum :

Documentation [Afficher / Cacher]

Faire un don
[Afficher / Cacher]

Connexion
[Afficher / Cacher]



Mégaphone [Afficher / Cacher]

calixtus06, 14:33, jeu. 28 mars 2024: Bonjour et bienvenue à b.vl :-)
calixtus06, 09:30, mer. 27 mars 2024: Bonjour et bienvenue à Noar :-)
olinuxx, 18:50, lun. 25 mars 2024: Bonjour et bienvenue à Ted Demore cool
olinuxx, 17:52, dim. 24 mars 2024: Bonjour et bienvenue à Noitavon cool
calixtus06, 11:07, jeu. 21 mars 2024: Bonjour et bienvenue à obds, ceric :-)
obds, 16:12, mar. 19 mars 2024: Cet édito est juste parfait. Trop beau !
olinuxx, 11:48, ven. 15 mars 2024: Bonjour et bienvenue à Jerry cool
calixtus06, 18:03, mer. 13 mars 2024: Bonjour et bienvenue à tanguero :-)
olinuxx, 11:01, dim. 10 mars 2024: Bonjour et bienvenue à lolo cool
bda, 16:59, sam. 09 mars 2024: Chapeau pour l'édito. Vous êtes au top les gars :-)
allany, 07:20, jeu. 07 mars 2024: Ça ne fait jamais de mal, c'est l'éditorial ! [Lien]
olinuxx, 19:52, mer. 06 mars 2024: Bonjour et bienvenue à TrkNrk cool