Chargement...
 
Skip to main content

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


MétaSurface64

France
La metaSurface64 est une surface de contrôle de transformations continues du son en temps réel qui dispose à la fois de son propre générateur de boucles jusqu'à 64 voix et d'un moteur FX multieffets.
MetaSurface

Cette surface est dédiée à la recherche et à la création de séquences audios.

Chaque pavé de cette surface peut permettre de contôler directement le gain et les plug-ins attachés.
DspExemple2
Il est possible également de contrôler les pistes et les plug-ins d'un séquenceur externe ( Ardour ou Reaper ). Pour ce faire, l'application utilise des modules contrôlables par OSC qui proviennent de la librairie 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 plug-ins en langage Faust à la surface. Vous pouvez également définir les contrôleurs pour des plug-ins externes incorporés à votre DAW.
Enfin, vous pouvez créer de nouveaux pavages pour votre surface :
CreateSurface

Les fichiers audios des pavés peuvent être multicanaux. La sortie de chaque pavé sur Jack se règle indépendamment et peut être mono ou multicanal.

Pour intaller cette application :

git clone https://github.com/dblanchemain/metaSurface

Copy to clipboard
make metaSurface make install PREFIX=/usr/local


puis pour Linux :

Copy to clipboard
./metaSurface.sh


La documentation est disponible ici :

http://blanchemain.info/Documents/Programmation/index.php?page=metaSurface

Cette version 1.0 a été réalisée et testée sur debian/LibraZik2
France
C'est totalement incompréhensible :

J'ai recopié ton DSP dans un fichier que j'ai appelé testS1.dsp
en ne changeant que le fichier audio.
Voici le code :

Copy to clipboard
import("stdfaust.lib"); import("soundfiles.lib"); import("/usr/local/share/metaSurface/faust/metaSurfaceFaust.lib"); ds=soundfile("[url:{'/usr/local/share/metaSurface/sound/vide.wav';'/usr/local/share/metaSurface/sound/vide.wav';'/usr/local/share/metaSurface/sound/vide.wav';'/usr/local/share/metaSurface/sound/vide.wav';'/home/dominique/metaSurface/sounds/Coagula13-2.wav';'/usr/local/share/metaSurface/sound/vide.wav';'/usr/local/share/metaSurface/sound/vide.wav';'/usr/local/share/metaSurface/sound/vide.wav';'/usr/local/share/metaSurface/sound/vide.wav';'/usr/local/share/metaSurface/sound/vide.wav';'/usr/local/share/metaSurface/sound/vide.wav';'/usr/local/share/metaSurface/sound/vide.wav';'/usr/local/share/metaSurface/sound/vide.wav';'/usr/local/share/metaSurface/sound/vide.wav'}]",2); vmeter(i,x)= attach(x, envelop(x) : vbargraph("%2i[unit:dB]", -70, +5)); envelop = abs : max ~ -(1.0/ma.SR) : max(ba.db2linear(-70)) : ba.linear2db;sample(x) = so.sound(ds, x); sgain(i) = vslider("[0]gain%2i",0.1,0,2,0.01) : si.smoo;ingain(i) = vslider("[0]gain%2i",0.1,0,2,0.01) : si.smoo;sspeed(i)=vslider("[1]speed%2i",1.0,0,2,0.01) : si.smoo; lect2(x)=hgroup("Player",x); tdec(x)=lect2(hgroup("[0]Param",x)); lect(x)=lect2(hgroup("[1]Meter",x)); lgain(i)=tdec(sgain(i)); lgainp(i)=tdec(ingain(i)); lspeed(i)=tdec(sspeed(i)); lmet=lect(par(j,2,vmeter(j))); base=tgroup("Pad",hgroup("p00",hgroup("[0]",_:*(lgainp(0))_), hgroup("p01",hgroup("[0]",_:*(lgainp(1))_), hgroup("p02",hgroup("[0]",_:*(lgainp(2))_), hgroup("p03",hgroup("[0]",_:*(lgainp(3))_), hgroup("p04",hgroup("[0]",sample(4).loop_speed_level(lspeed(4),lgain(4)):lmet):>_), hgroup("p05",hgroup("[0]",_:*(lgainp(5))_), hgroup("p06",hgroup("[0]",_:*(lgainp(6))_), hgroup("p07",hgroup("[0]",_:*(lgainp(7))_), hgroup("p08",hgroup("[0]",_:*(lgainp(8))_), hgroup("p09",hgroup("[0]",_:*(lgainp(9))_), hgroup("p10",hgroup("[0]",_:*(lgainp(10))_), hgroup("p11",hgroup("[0]",_:*(lgainp(11))_), hgroup("p12",hgroup("[0]",_:*(lgainp(12))_), hgroup("p13",hgroup("[0]",_:*(lgainp(13))_)); smp1=vgroup("[0]",base); process = smp1;


J'ai ensuite appelé un outil de faust :

Copy to clipboard
faust2jack testS1.dsp -soundfile

qui me retourne
testS1
j'ai lancé ce nouveau fichier

Copy to clipboard
./testS1


et ça fonctionne parfaitement
DspS1

La metaSurface fonctionne donc correctement, c'est bien la libFaust de faust2.15 qui fait n'importe quoi.
Là, je n'ai pas de solution.
France
En désespoir de cause, je te donne le lien de mon faust2.21:

http://blanchemain.info//Documents/Programmation/exemples/faust2-21.tar.gz
A décompresser.

Copy to clipboard
cd faust make clean make all


(après avoir supprimé faust 2.15)
Copy to clipboard
sudo make install


Il compile chez moi aussi bien sur le pc de travail que le portable.

Mais je comprendrai parfaitement que tu renonces.
peut etre que du fait de ma compile de faust 2.27 j'ai des melanges mainenant.
c'est d'ailleursz pour ça que je n'aime pas compiler les programmes qui ont des versions en depot
France
Non.
Comme tu n'as pas pu compiler, tu n'as pas pu installer Faust2.27.
Donc aucune perturbation sur ton PC.

Cela pourrait arriver si tu pouvais installer le programme (en root) qui pourrait modifier des variables d'environnement. Mais ce n'est pas le cas.
Par ailleurs, la réinstallation d'un paquet réinstalle les variables d'environnement nécessaires. Donc pas de soucis de ce côté.

Non, il y a un vrai problème avec les paquets Faust2.15. Faust 2.27 ne peut pas compiler sous LibraZiK2 et 3 en raison de la version de llvm.
Je crains que le paquet llvm8 ne rende pas la llvm8 directement active(prioritaire). Cela m'est arrivé sous LibraZiK2 qui maintenait LLVM3.x active même en installant le paquet llvm6. Il a fallu que je modifie le lien symbolique dans /usr/lib pour que la llvm6 soit prise en compte.
Mais ça, c'est plus risqué. À chacun ses prises de risques.

Non, si tu as du temps à perdre (maintenant je prends des précautions ) , tu peux compiler la version faust2.21 dont je t'ai donné le lien.
Si ça compile sans grogner, c'est bon, tu pourras l'installer et là tout devrait fonctionner...........normalement!!!
Tu dois avoir la libsndfiles (dev)

avant de compiler fait ceci à tout hasard :

Copy to clipboard
sudo apt-get update sudo apt-get install -y build-essential cmake libmicrohttpd-dev


Il fera une mise à jour de certains outils.
bon j'ai essayé, mais ai un paquet de messages d'erreurs comme quoi il ne trouve pas /home/dominique/
dès le make clean
France
Désolé, c'est de ma faute.
J'espère qu'il va bien supprimer les références à ma machine!!!
Je vais remettre une version2.21 nettoyée, mais ça va demander du temps pour la recharger >2h.
Elle sera disponible à la même adresse.
Il ne faudra pas faire
Copy to clipboard
make clean


Tu peux aussi charger directement la version 2.20.2 ici
https://github.com/grame-cncm/faust/releases

La 2.20.2 ne doit pas être très différente. Ne choisis pas une autre version sur ce site.
j'ai une erreur

Copy to clipboard
Error 404 - Not found


en essayant de charger à meme adresse
France
C'est corrigé.
J"espère que ça fonctionnera
Pas de make clean.
non, désolé, ça ne fonctionne toujours pas :
Copy to clipboard
loading initial cache file ../targets/all.cmake CMake Error: The source "/home/olivier/essai/faust/build/CMakeLists.txt" does not match the source "/home/dominique/Compile/faust/build/CMakeLists.txt" used to generate cache. Re-run cmake with a different source directory.

France
Bon!!! On va y arriver.
J'ai retrouvé 2 zip sur mon portable de la version 2.19 qui fonctionne puisque je l'ai compilée pour celui-ci.

Tu les trouveras ici :

http://blanchemain.info/Documents/Programmation/exemple/faust-master-dev.zip
http://blanchemain.info/Documents/Programmation/exemple/faustlbraries-master.zip

Tu désarchives la première et tu dois désarchiver la deuxième dans le dossier ou tu as rangé faust, le contenu du dossier "faustlibraries-master" doit se trouver dans "faust"/libraries

Version officielle, chez moi ça compile, donc il ne devrait pas y avoir de problèmes.
France

La version, 2.20.2 compile également sur mon portable, je viens de le faire.

Si tu choisis cette version tu devras également recopier l'archive faustlibraries-master.zip dont je t'ai donné le lien dans "faust"/libraries.
Ces archives ne contiennent pas les librairies par défaut.
bon, j'ai compilé la version 2.20.2 comme indiqué, recompilé metasurface, et ok cette fois je peux cliquer sur le bouton speaker apres avoir selectionné un fichier son sans qu'il y ait plantage, ni dans la fenetre principale, ni dans celle du choix du son
par contre, je plante si j'appuie sur speaker de la fenetre de choix du son avant de l'avoir choisi, et je plante aussi si danla fenetre de choix du son je clique une ligne plus bas que le fichier vide.wav dans le choix du fichier. (je sais, ce n'est pas normal de faire ça, mais que veux tu, un mulet ça fait tout ce qui n'est pas normal...) et je plante aussi en appuyant sur le bouton speaker de la fenetre principale avant de faire quoique ce soit d'autre
France
AH! Enfin, ça, c'est bien.😀
J'ai les mêmes plantages, je vais les corriger, ce n'est pas bien grave.C'est important que tu me signales tous ces bugs. Il y en aura d'autres.

Heureux que tu puisses tester la bête!!!

Ne cherche pas a créer un nouveau pavage, là, ça plantera grave, chez toi, pour l'instant. 😁

Je vais modifier ma page de doc sur la compilation de la metaSurface pour que d'autres personnes ne galèrent pas autant que toi.

N'oublie pas , si tu ne l'as pas déjà fait :

"Votre version de Faust peut contenir une version de GTKUI qui ne permet pas le scrolling de la fenêtre. Dans ce cas, vous devez remplacer ce fichier :

Dans un terminal, en root, renommez le fichier :
Copy to clipboard
/usr/local/include/faust/gui/GTKUI.h en GTKUI2.h

puis récupérez le nouveau fichier :
Copy to clipboard
wget http://blanchemain.info/Documents/Programmation/GTKUI.h
et copiez le dans le dossier
Copy to clipboard
/usr/local/include/faust/gui


"


Merci pour ta persévérance
France
Les bugs signalés sont, a priori, corrigés.
Page: 3/3
1  2  3