Chargement...
 
Skip to main content

4 - Toutes les autres applications, les émulateurs...


LNX Studio

Articles: 63 France
Bonjour à tous,

J'aimerais vous faire part de ma découverte de ces derniers jours : LNX Studio.
Je vois que ce soft n'est pas référencé dans Linux mao, donc je pense qu'il est utile que j'en parle un peu.
C'est un séquenceur, avec des outils et des synthés orientés live, un peu comme Ableton Live.
C'est d'autant plus important d'en parler qu'il est très complet et fonctionne remarquablement bien. A priori c'est le travail de seulement deux personnes, une qui a écrit le soft original pour Mac et une autre qui a fait le travail de le rendre multi-plateforme. C'est assez remarquable, car le niveau du soft dépasse celui de bien des projets Linux qui existent depuis longtemps.
Deux exemples :
. on peut créer ses propres synthés ou effets en écrivant quelques lignes de code.
. on peut modifier l'interface de ceux-ci grace à un éditeur graphique intégré.

C'est écrit dans le langage SuperCollider et ça prouve l'efficacité de cet environnement. Si vous ne le connaissez pas, je vous engage à le découvrir d'urgence, c'est un des points forts de Linux avec Pure Data à mon avis. Seul inconvénient, il faut lire l'anglais, mais sinon, il y a des tas de tutoriels sur le web car c'est un logiciel qui existe depuis longtemps.

Sous Linux, il est très facile d'utiliser LNX Studio, puisqu'on peut le relier à n'importe quel autre soft à travers Jack.
Toutes les versions ne marchent pas sous Linux, j'ai utilisé la version de la branche xplat (cross plateform) : https://github.com/neilcosgrove/LNX_Studio/tree/xplat

C'est assez simple à installer, il n'y a pas de piège, il faut suivre les instructions données dans README_linux.md
. Il faut avoir installé SuperCollider qui est sans doute dispo dans votre distrib. Perso je suis sous Fedora 26 et SC V3.8.0.

Vidéo de démo : https://www.youtube.com/watch?time_continue=6&v=mt7gTyoFsj8

Plus d'infos : http://lnxstudio.sourceforge.net/

ps :
Il y a un autre séquenceur basé sur SuperCollider qui à l'air assez génial, c'est TX Modular (http://www.palemoonrising.co.uk/index.html), je ne l'ai pas encore essayé car il faut la dernière version de SuperCollider, qui n'est pas encore fournie par ma distrib. Donc, rendez-vous pour une description détaillée quand ce sera le cas.

jp
Articles: 50
Salut,

J'ai testé rapidement la version xplat sur debian en version testing 32 bits, ça fonctionne nickel. Les paquets demandés curl, ffmpeg, xclip, SuperCollider et SC3-Plugins sont tous disponibles dans les dépôts debian donc ça se fait très facilement.

Pour ceux que ça pourrait aider, les chemins sous debian sont les suivants pour SuperCollider et SC3-Plugins:
Copy to clipboard
- /usr/share/SuperCollider/SCClassLibrary/ - /usr/share/SuperCollider/Extensions/SC3plugins/


Il ne reste plus qu'à éditer les deux lignes renvoyant à SCClassLibrary en indiquant le chemin où vous avez décompressé l'archive contenant LNX Studio.


Graphiquement, c'est très agréable également.
Articles: 63 France
Hello,

Un petit truc pour utiliser les samples, car à première vue il n'y a pas de sampler, mais en fait si. Il suffit de choisir un synthé de type SC Code dans la partie de gauche et de coller un bout de code dans l'onglet prévu à cet effet, à la place du code existant. Comme indiqué à la page http://lnxstudio.sourceforge.net/Help/How%20to%20program%20LNX_Studio.html, au paragraphe Using Samples. Et hop. Ensuite il faut sauver le synthé en faisant Add instrument to library.
Pour utiliser mes propres samples, j'ai un peu cherché, donc j'explique :
j'ai mis un raccouci dans /home/rep_perso/music/LNX_Studio Sample Cache/file/
(Le répertoire music avec une minuscule étant créé automatiquement par LNX studio.)
Par exemple, si le répertoire des samples est Wave dans votre répertoire perso, la cde = ln -s /home/rep_perso/Music/Wave Wave


jp
Articles: 836
bonjour
de mon coté, curieux comme toujours, j'ai aussi essayé, sur ma librazik2, et arrivé au lancement, j'ai tout ce message, et puis ça reste là attendre ...

Copy to clipboard
olivier@jazz:~/mao/essais/lnxstudio/LNX_Studio-xplat$ ./LNX_Studio init_OSC empty compiling class library (debug build)... initPassOne started NumPrimitives = 711 initPassOne done compiling dir: '/usr/share/SuperCollider/SCClassLibrary/' excluding dir: '/usr/share/SuperCollider/SCClassLibrary//deprecated' compiling dir: '/usr/share/SuperCollider/Extensions/SC3plugins/' excluding file: '/usr/share/SuperCollider/Extensions/SC3plugins//SkUGens/FM7.sc' compiling dir: '/home/olivier/mao/essais/lnxstudio/LNX_Studio-xplat/SCClassLibrary/' pass 1 done ERROR: Class extension for nonexistent class 'MainMenu' In file:'/home/olivier/mao/essais/lnxstudio/LNX_Studio-xplat/SCClassLibrary//LNX_Studio Library/9. Start Up/SystemOverwrites/Menu.sc' ERROR: Class extension for nonexistent class 'FM7' In file:'/home/olivier/mao/essais/lnxstudio/LNX_Studio-xplat/SCClassLibrary//LNX_Studio Library/10. by others/UGenCategories.sc' numentries = 1501832 / 34960560 = 0.043 9176 method selectors, 3810 classes method table size 29868624 bytes, big table size 279684480 Number of Symbols 21665 Byte Code Size 1158374 compiled 727 files in 0.73 seconds Info: 19 methods are currently overwritten by extensions. To see which, execute: MethodOverride.printAll compile done Class tree inited in 0.08 seconds Cleaning up temp synthdefs... WARNING: MIDIClient-init requested 16 inport(s) and 16 outport(s), but found only 3 inport(s) and 5 outport(s). Some expected MIDI devices may not be available. MIDI Sources: MIDIEndPoint("System", "Timer") MIDIEndPoint("System", "Announce") MIDIEndPoint("Midi Through", "Midi Through Port-0") MIDIEndPoint("SuperCollider", "out0") MIDIEndPoint("SuperCollider", "out1") MIDIEndPoint("SuperCollider", "out2") MIDIEndPoint("SuperCollider", "out3") MIDIEndPoint("SuperCollider", "out4") MIDIEndPoint("SuperCollider", "out5") MIDIEndPoint("SuperCollider", "out6") MIDIEndPoint("SuperCollider", "out7") MIDIEndPoint("SuperCollider", "out8") MIDIEndPoint("SuperCollider", "out9") MIDIEndPoint("SuperCollider", "out10") MIDIEndPoint("SuperCollider", "out11") MIDIEndPoint("SuperCollider", "out12") MIDIEndPoint("SuperCollider", "out13") MIDIEndPoint("SuperCollider", "out14") MIDIEndPoint("SuperCollider", "out15") MIDI Destinations: MIDIEndPoint("Midi Through", "Midi Through Port-0") MIDIEndPoint("TiMidity", "TiMidity port 0") MIDIEndPoint("TiMidity", "TiMidity port 1") MIDIEndPoint("TiMidity", "TiMidity port 2") MIDIEndPoint("TiMidity", "TiMidity port 3") MIDIEndPoint("SuperCollider", "in0") MIDIEndPoint("SuperCollider", "in1") MIDIEndPoint("SuperCollider", "in2") MIDIEndPoint("SuperCollider", "in3") MIDIEndPoint("SuperCollider", "in4") MIDIEndPoint("SuperCollider", "in5") MIDIEndPoint("SuperCollider", "in6") MIDIEndPoint("SuperCollider", "in7") MIDIEndPoint("SuperCollider", "in8") MIDIEndPoint("SuperCollider", "in9") MIDIEndPoint("SuperCollider", "in10") MIDIEndPoint("SuperCollider", "in11") MIDIEndPoint("SuperCollider", "in12") MIDIEndPoint("SuperCollider", "in13") MIDIEndPoint("SuperCollider", "in14") MIDIEndPoint("SuperCollider", "in15") Warning: MIDIEndPoint("SuperCollider", "in11") failed to init Warning: MIDIEndPoint("SuperCollider", "in12") failed to init Warning: MIDIEndPoint("SuperCollider", "in13") failed to init Warning: MIDIEndPoint("SuperCollider", "in14") failed to init Warning: MIDIEndPoint("SuperCollider", "in15") failed to init Warning: MIDIEndPoint("SuperCollider", "out13") failed to init Warning: MIDIEndPoint("SuperCollider", "out14") failed to init Warning: MIDIEndPoint("SuperCollider", "out15") failed to init sh: 1: /sbin/ifconfig: not found ERROR: Message 'at' not understood. RECEIVER: nil ARGS: Integer 1 CALL STACK: DoesNotUnderstandError:reportError 0x55b424a12388 arg this = <instance of DoesNotUnderstandError> var s = "ERROR: Message 'at' not unde..." Nil:handleError 0x55b424919ac8 arg this = nil arg error = <instance of DoesNotUnderstandError> Thread:handleError 0x55b424956628 arg this = <instance of Thread> arg error = <instance of DoesNotUnderstandError> Object:throw 0x55b424634528 arg this = <instance of DoesNotUnderstandError> Object:doesNotUnderstand 0x55b4249180a8 arg this = nil arg selector = 'at' arg args = [*1] LNX_User:init 0x55b4248de208 arg this = <instance of LNX_User> var ip = nil var profile = nil var varPermanentID = [*1] LNX_Network:init 0x55b427174588 arg this = <instance of LNX_Network> arg argStudio = <instance of LNX_Studio> var prefList = nil LNX_Studio:initNetwork 0x55b427174378 arg this = <instance of LNX_Studio> LNX_Studio:init 0x55b4248c6468 arg this = <instance of LNX_Studio> arg server = <instance of Server> Meta_LNX_StartUp:xPlatStartUp 0x55b4248c7c78 arg this = <instance of Meta_LNX_StartUp> Meta_LNX_StartUp:linuxStartUp 0x55b4248c70c8 arg this = <instance of Meta_LNX_StartUp> Function:doonstartUp 0x55b4248c74e8 arg this = <instance of Function> ArrayedCollection:do 0x55b42495d8f8 arg this = [*7] arg function = <instance of Function> var i = 3 List:do 0x55b42495d428 arg this = <instance of List> arg function = <instance of Function> Meta_StartUp:run 0x55b42495c878 arg this = <instance of Meta_StartUp> Main:startup 0x55b424c8b388 arg this = <instance of Main> var didWarnOverwrite = false RESULT = 0


quelqu'un voit ce qui cloche ?
Articles: 19483 France
Y'a ça par exemple :
Copy to clipboard
sh: 1: /sbin/ifconfig: not found


Il dit qu'il ne trouve pas le programme ifconfig. ifconfig provient du paquet "net-tools".
Articles: 836
pile dessus, Olinuxx, bravo !

ça se lance du coup, y'a plus qu'à tester la bête...
Articles: 19483 France
Tiens nous au jus et dis nous ce que ça donne @olof .
Articles: 836
c'est tres sympa, j'ai pu faire tourner le projet de demo pour voir, meme sur la carte son interne, aucun souci de la latence ni de xruns, bonne qualité de son, meme sur les enceintes minables du portable, un bon pouvoir d'action en temps réel, je sens que je vais faire quelques petits bouts d'essai.
de ce que j'en ai vu ça pourrait un peu etre comparé à lmms.
Articles: 451 France
Hello les maoistes linuxiens

J'ai voulu aussi tester ce soft. Je suis sous KXstudio. J'ai compilé la derniere version de SuperCollider car dans les depots de KXstudio la version est la 3.6 et il faut au minimum la 3.7. SuperCollider marche tres bien. Mais des que je veux lancer LNX_studio j'ai ça :

Copy to clipboard
compiling class library... Found 715 primitives. Compiling directory '/usr/local/share/SuperCollider/SCClassLibrary' Compiling directory '/usr/local/share/SuperCollider/Extensions/SC3plugins' excluding file: '/usr/local/share/SuperCollider/Extensions/SC3plugins/SkUGens/FM7.sc' Compiling directory '/home/PK/Music/LNX_Studio-xplat/SCClassLibrary' ERROR: Class extension for nonexistent class 'FM7' In file:'../../../../../home/PK/Music/LNX_Studio-xplat/SCClassLibrary/LNX_Studio Library/10. by others/UGenCategories.sc' ERROR: Class extension for nonexistent class 'MainMenu' In file:'../../../../../home/PK/Music/LNX_Studio-xplat/SCClassLibrary/LNX_Studio Library/9. Start Up/SystemOverwrites/Menu.sc' ERROR: Variable 'recHeaderFormat' not defined. in file '/home/PK/Music/LNX_Studio-xplat/SCClassLibrary/LNX_Studio Library/1. LNX_Studio/SystemOverwrites/my additions.sc' line 206 char 97: ++ (Date.getDate.format("%Y-%d-%e %R:%S").replace(":",".").drop(2)) ++ "." ++ recHeaderFormat; }; ----------------------------------- ERROR: Variable 'recHeaderFormat' not defined. in file '/home/PK/Music/LNX_Studio-xplat/SCClassLibrary/LNX_Studio Library/1. LNX_Studio/SystemOverwrites/my additions.sc' line 200 char 114: path = thisProcess.platform.recordingsDir +/+ "LNX_" ++ Main.elapsedTime.round(0.01) ++ "." ++ recHeaderFormat; ----------------------------------- ERROR: Variable 'recChannels' not defined. in file '/home/PK/Music/LNX_Studio-xplat/SCClassLibrary/LNX_Studio Library/1. LNX_Studio/SystemOverwrites/my additions.sc' line 209 char 51: recordBuf = Buffer.alloc(this, 65536, recChannels, {arg buf; buf.writeMsg(path, recHeaderFormat, recSampleFormat, 0, 0, true);}, ----------------------------------- ERROR: Variable 'recHeaderFormat' not defined. in file '/home/PK/Music/LNX_Studio-xplat/SCClassLibrary/LNX_Studio Library/1. LNX_Studio/SystemOverwrites/my additions.sc' line 210 char 47: {arg buf; buf.writeMsg(path, recHeaderFormat, recSampleFormat, 0, 0, true);}, this.options.numBuffers + 1); // prevent buffer conflicts by using reserved bufnum ----------------------------------- ERROR: Variable 'recSampleFormat' not defined. in file '/home/PK/Music/LNX_Studio-xplat/SCClassLibrary/LNX_Studio Library/1. LNX_Studio/SystemOverwrites/my additions.sc' line 210 char 64: {arg buf; buf.writeMsg(path, recHeaderFormat, recSampleFormat, 0, 0, true);}, this.options.numBuffers + 1); // prevent buffer conflicts by using reserved bufnum ----------------------------------- ERROR: Variable 'recordBuf' not defined. in file '/home/PK/Music/LNX_Studio-xplat/SCClassLibrary/LNX_Studio Library/1. LNX_Studio/SystemOverwrites/my additions.sc' line 211 char 32: this.options.numBuffers + 1); // prevent buffer conflicts by using reserved bufnum SynthDef("server-record", { arg bufnum; ----------------------------------- ERROR: Variable 'recChannels' not defined. in file '/home/PK/Music/LNX_Studio-xplat/SCClassLibrary/LNX_Studio Library/1. LNX_Studio/SystemOverwrites/my additions.sc' line 213 char 42: DiskOut.ar(bufnum, In.ar(0, recChannels)) }).send(this); -----------------------------------


Apparement il y a un probleme avec le fichier my additions.sc ou autre??

Merci pour votre aide

Bonne journée.

Protein Kyn
Articles: 836
as tu mis tout le retour ? parceque certains des messages d'erreurs que tu as, je les ai aussi, mais ça marche quand même..
voici pour comparaison, le retour console que j'ai actuellement au lancement, et ça lance correctement et fonctionne ensuite sans souci :
Copy to clipboard
olivier@jazz:~/mao/essais/lnxstudio/LNX_Studio-xplat$ ./LNX_Studio init_OSC empty compiling class library (debug build)... initPassOne started NumPrimitives = 711 initPassOne done compiling dir: '/usr/share/SuperCollider/SCClassLibrary/' excluding dir: '/usr/share/SuperCollider/SCClassLibrary//deprecated' compiling dir: '/usr/share/SuperCollider/Extensions/SC3plugins/' excluding file: '/usr/share/SuperCollider/Extensions/SC3plugins//SkUGens/FM7.sc' compiling dir: '/home/olivier/mao/essais/lnxstudio/LNX_Studio-xplat/SCClassLibrary/' pass 1 done ERROR: Class extension for nonexistent class 'MainMenu' In file:'/home/olivier/mao/essais/lnxstudio/LNX_Studio-xplat/SCClassLibrary//LNX_Studio Library/9. Start Up/SystemOverwrites/Menu.sc' ERROR: Class extension for nonexistent class 'FM7' In file:'/home/olivier/mao/essais/lnxstudio/LNX_Studio-xplat/SCClassLibrary//LNX_Studio Library/10. by others/UGenCategories.sc' numentries = 1501832 / 34960560 = 0.043 9176 method selectors, 3810 classes method table size 29868624 bytes, big table size 279684480 Number of Symbols 21665 Byte Code Size 1158374 compiled 727 files in 0.76 seconds Info: 19 methods are currently overwritten by extensions. To see which, execute: MethodOverride.printAll compile done Class tree inited in 0.08 seconds Cleaning up temp synthdefs... RESULT = 0 WARNING: MIDIClient-init requested 16 inport(s) and 16 outport(s), but found only 3 inport(s) and 5 outport(s). Some expected MIDI devices may not be available. MIDI Sources: MIDIEndPoint("System", "Timer") MIDIEndPoint("System", "Announce") MIDIEndPoint("Midi Through", "Midi Through Port-0") MIDIEndPoint("SuperCollider", "out0") MIDIEndPoint("SuperCollider", "out1") MIDIEndPoint("SuperCollider", "out2") MIDIEndPoint("SuperCollider", "out3") MIDIEndPoint("SuperCollider", "out4") MIDIEndPoint("SuperCollider", "out5") MIDIEndPoint("SuperCollider", "out6") MIDIEndPoint("SuperCollider", "out7") MIDIEndPoint("SuperCollider", "out8") MIDIEndPoint("SuperCollider", "out9") MIDIEndPoint("SuperCollider", "out10") MIDIEndPoint("SuperCollider", "out11") MIDIEndPoint("SuperCollider", "out12") MIDIEndPoint("SuperCollider", "out13") MIDIEndPoint("SuperCollider", "out14") MIDIEndPoint("SuperCollider", "out15") MIDI Destinations: MIDIEndPoint("Midi Through", "Midi Through Port-0") MIDIEndPoint("TiMidity", "TiMidity port 0") MIDIEndPoint("TiMidity", "TiMidity port 1") MIDIEndPoint("TiMidity", "TiMidity port 2") MIDIEndPoint("TiMidity", "TiMidity port 3") MIDIEndPoint("SuperCollider", "in0") MIDIEndPoint("SuperCollider", "in1") MIDIEndPoint("SuperCollider", "in2") MIDIEndPoint("SuperCollider", "in3") MIDIEndPoint("SuperCollider", "in4") MIDIEndPoint("SuperCollider", "in5") MIDIEndPoint("SuperCollider", "in6") MIDIEndPoint("SuperCollider", "in7") MIDIEndPoint("SuperCollider", "in8") MIDIEndPoint("SuperCollider", "in9") MIDIEndPoint("SuperCollider", "in10") MIDIEndPoint("SuperCollider", "in11") MIDIEndPoint("SuperCollider", "in12") MIDIEndPoint("SuperCollider", "in13") MIDIEndPoint("SuperCollider", "in14") MIDIEndPoint("SuperCollider", "in15") Warning: MIDIEndPoint("SuperCollider", "in11") failed to init Warning: MIDIEndPoint("SuperCollider", "in12") failed to init Warning: MIDIEndPoint("SuperCollider", "in13") failed to init Warning: MIDIEndPoint("SuperCollider", "in14") failed to init Warning: MIDIEndPoint("SuperCollider", "in15") failed to init Warning: MIDIEndPoint("SuperCollider", "out13") failed to init Warning: MIDIEndPoint("SuperCollider", "out14") failed to init Warning: MIDIEndPoint("SuperCollider", "out15") failed to init WARNING: Extension in '/usr/share/SuperCollider/SCClassLibrary//Platform/linux/extMIDIOut.sc' overwrites Meta_MIDIClient:externalSources in main class library. WARNING: Extension in '/usr/share/SuperCollider/SCClassLibrary//Platform/linux/extMIDIOut.sc' overwrites Meta_MIDIClient:externalDestinations in main class library. WARNING: Extension in '/usr/share/SuperCollider/SCClassLibrary//Platform/linux/extMIDIOut.sc' overwrites Meta_MIDIIn:connectAll in main class library. Intentional overwrites must be put in a 'SystemOverwrites' subfolder. *** Welcome to SuperCollider 3.7.0. *** For help type ctrl-c ctrl-h (Emacs) or :SChelp (vim) or ctrl-U (sced/gedit). Bootng Server: 1 booting 57110 convolution: samplerate mismatch preset:48000 host:44100 convolution: samplerate mismatch preset:48000 host:44100 convolution: samplerate mismatch preset:48000 host:44100 convolution: samplerate mismatch preset:48000 host:44100 convolution: samplerate mismatch preset:48000 host:44100 convolution: samplerate mismatch preset:48000 host:44100 Found 385 LADSPA plugins JackDriver: client name is 'SuperCollider' SC_AudioDriver: sample rate = 44100,000000, driver's block size = 256 JackDriver: connected system:capture_1 to SuperCollider:in_1 JackDriver: connected system:capture_2 to SuperCollider:in_2 JackDriver: connected SuperCollider:out_1 to system:playback_1 JackDriver: connected SuperCollider:out_2 to system:playback_2 SuperCollider 3 server ready (debug build). JackDriver: max output latency 17,4 ms Receiving notification messages from server localhost Shared memory server interface initialized


je precise que je lance jack avant

si comme tu le penses, le probleme est dans additions.sc, il semble a regarder mes messages que additions.sc soit un module qui surcharge certaines méthodes, il se peut dès lors que la surcharge ne marche pas chez toi parcequ'elle ne serait pas faite sur la même base que chez moi, comme par exemple si certaines librairies demandées étaient en version différente.

quelles sont donc les versions des dependances demandées pour l'install que tu as mises ?
Articles: 451 France
Salut

Oui j'ai tout mis. Justement je l'ai comparé avec ce que tu avais mis. Mais ce n'est pas pareil.Bizarre.
Merci pour ton aide.

A+

PK
Articles: 451 France
Ca vient peut etre de la version de SuperCollider. Moi j'ai la 3.9.2
Articles: 836
moi supercollider est en 3.7.1 (depots debian)
Articles: 451 France
olof écrit:
quelles sont donc les versions des dependances demandées pour l'install que tu as mises ?

J'ai installé libudev
Articles: 836
d'apres le readme linux de l'install il y a supercollider et sc3-plugins à intaller, les a s tu installés tous les 2 et quelles est la version de sc3-plugin ?
Articles: 451 France
Oui sc3-plugins est installé. C'est la 3.7.0

Merci pour ton aide.
PK
Articles: 836
moi c'est 3.7.1
si je récapitule donc : les deux sont des versions différentes des miens, mais pas dans le même sens.
tu pourrais peut etre essayer de désinstaller supercollider et de le reinstaller à partir du paquet debian (1:3.7.0) , pour voir ?
Articles: 451 France
Comment desinstaller Supercollider? Je ne me rappelle plus comment faire.
Merci pour ton aide.

PK

EDIT : C'est bon j'ai trouvé. Y a plus qu'a le reinstaller.

A+
Articles: 451 France
Salut à tous

J'ai tout réinstallé et maintenant ca marche ou presque.J'ai installé la version 3.7.1. Ca demarre. L'interface graphique s'affiche. Je configure le MIDI dans les preferences mais le MIDI ne marche pas. Si je clique sur le clavier virtuel, rien,pas de son. Mais avec la boite à rythme quand je clique sur les instruments je les entends.
Si quelqu'un a eu ce probleme et sait le reparer je serai tres content.

PK
Articles: 836
as tu lancé a2jmidid, et fait les connections jack ?
Page: 1/2  [Suivant]
1  2