La MétaSurface64 est un logiciel audio pour GNU/Linux. Elle reprend le concept de Metasurface d’AudioMulch et des pads matériels (comme le Novation Lauchpad ou le Presonus ATOM) qui permettent de contrôler des instruments externes ou des séquenceurs par des messages MIDI.
La metaSurface, quant à elle, propose une fenêtre dans laquelle il est possible de choisir un pavage. Chaque pavé (polygone) dispose de ses propres paramètres (fichier audio entre autres) et il est possible d’associer une chaîne d’effets via des greffons contrôlés par OSC. Cette surface de contrôle de transformations continues du son en temps réel dispose à la fois de son propre générateur de boucles jusqu’à 64 voies et d’un moteur FX multi‑effets. Elle est destinée à la recherche et à la création d’objets audio pour la composition électroacoustique ou acousmatique.
Ce logiciel est sous licence GPL v3. La dernière version pour GNU/Linux (et Windows) vient de sortir.
Chaque pavé de cette surface peut permettre de contrôler directement le gain et les greffons attachés. Il est possible également de contrôler les pistes et les greffons d’un séquenceur externe (Ardour ou Reaper). Pour ce faire, l’application utilise des modules contrôlables par OSC qui proviennent de la bibliothèque du langage FAUST qui est embarqué dans l’application. Il est également possible de disposer d’une entrée externe pour un pavé.
Il est proposé d’écrire et d’intégrer de nouveaux greffons en langage FAUST à la surface. Ce langage est intégré à la metaSurface via libfaust qui permet de disposer de toutes les fonctionnalités de ce langage. Vous pouvez également définir les contrôleurs pour des greffons externes incorporés à votre station audionumérique (DAW).
Enfin, vous pouvez créer de nouveaux pavages pour votre surface. Les fichiers audio des pavés peuvent être multicanaux. La sortie de chaque pavé sur JACK se règle indépendamment et peut être monophonique ou multicanal.
Pour installer cette application :
git clone https://github.com/dblanchemain/metaSurface
make metaSurface
make install PREFIX=/usr/local
Puis, pour GNU/Linux :
./metaSurface.sh
La documentation est disponible sur blanchemain.info.
Cette version 1.0 a été réalisée et testée sur Debian/LibraZik 2.
Pour ce qui me concerne, je suis compositeur de musique électroacoustique et créateur de logiciels audio pour GNU/Linux, dont mcMidiPlayer, qui est un lecteur MIDI de fichiers audio multicanaux, et space3D64, qui permet la spatialisation 3D sur 64 canaux ; tout ceci est présenté sur cette page.
Aller plus loin
- Code source du projet (73 clics)
- Documentation (35 clics)
# J'aurais bien voulu l'essayer...
Posté par falcaf . Évalué à 3 (+3/-0).
Mais j'ai cette erreur au lancement :
/usr/local/bin/metaSurface.bin: error while loading shared libraries: libboost_system.so.1.62.0: cannot open shared object file: No such file or directory.
Dans testing, la version de libboost est 1.71.0-6+b2.
Par ailleurs, le make a semblé inutile :
$ make metaSurface -j6
make: « metaSurface » est à jour.
Et quand j'essaye la commande suggérée, j'ai une erreur :
$ ./metaSurface.sh
bash: ./metaSurface.sh: Permission non accordée.
C'est là que je l'ai lancé avec :
$ /usr/local/bin/metaSurface.sh
et que j'obtiens l'erreur sur libboost.
Des solutions ? J'ai hâte de pouvoir l'essayer !
cordialement,
[^] # Re: J'aurais bien voulu l'essayer...
Posté par cpbx . Évalué à 3 (+2/-0).
Je pense que le problème vient de la présence d'un fichier metaSurface.bin dans le repo git, qui est lié aux bibliothèques en question, et qui n'est pas recompilé par le Makefile:
Il faut donc recompiler ce binaire:
Et ensuite suivre les instructions de la dépêche. Je n'ai pas toutes les bibliothèques nécessaires (faust…), je ne peux donc pas aller jusqu'au bout de la compilation, et peut-être que tu rencontreras d'autres problèmes ensuite. ;)
[^] # Re: J'aurais bien voulu l'essayer...
Posté par cpbx . Évalué à 1 (+0/-0).
Je me réponds à moi-même: c'est
make metaSurface
, et pasmake metaSurface.bin
.Après avoir installé faust depuis le code source (en n'oubliant pas de compiler le backend sous forme de bibliothèque dynamique), et ajouté
/usr/local/lib
dans/etc/ld.so.conf.d/local.conf
(suivi desudo ldconfig
), j'ai pu exécuter/usr/local/bin/metaSurface.sh
.Pour compiler Faust:
Il faut là aussi installer des dépendances qui dépendront de ton système (j'ai dû installer llvm-devel sur Fedora 32, par exemple).
[^] # Re: J'aurais bien voulu l'essayer...
Posté par tao popus . Évalué à 2 (+1/-0).
La libboost est plutôt galère sur ce point. Sous ArchLinux (distribution du type rolling release), à chaque mise à jour de libboost, il faut une mise à jour de tous les paquets en dépendant, et recompiler tous les paquets AUR. Impossible d'utiliser un binaire vieux de 2 mois ou 2 mois plus récent.
Je ne sais pas si c'est une mauvaise indication dans la documentation, qui force au numéro de version près, des changements, continuels dans l'API/ABI ou bien un problème dans les références fournies au lieur (linker)…
[^] # Re: J'aurais bien voulu l'essayer...
Posté par dblanchemain . Évalué à 1 (+0/-0).
Bonjour
Désolé, je n'avais pas vu vos déboires.
Il faut effectivement recompiler, c'est plus sûr.
Par ailleurs, dans la doc je donne les dépendances de certaines libs. Sous Debian libboost s'installe très bien.
Il est souhaitable de recompiler faust en utilisant le dépot github master-dev afin d'avoir les dernières updates en particulier pour GTKUI.
git https://github.com/grame-cncm/faust
cd
make all
sudo make install
Il est possible que vous soyez obligé de recompiler Liblo. La procédure est également assez simple.
Utiliser bien le Prefix=/usr/local
pour l'install, sinon le script de lancement ne fonctionnera pas et devra être modifié.
Pour le reste :
http://blanchemain.info/Documents/Programmation/index.php?page=metaSurface
[^] # Re: J'aurais bien voulu l'essayer...
Posté par dblanchemain . Évalué à 1 (+0/-0). Dernière modification le 09/08/20 à 19:47.
Les numéros de version des lib sur la documentation en ligne sont indicatifs et minimaux.
C'est bien PREFIX=/usr/local
Envoyer un commentaire
Suivre le flux des commentaires
Note : les commentaires appartiennent à ceux qui les ont postés. Nous n’en sommes pas responsables.