Se connecter
Se connecter

ou
Créer un compte

ou
Agrandir
Ajouter ce produit à
  • Mon ancien matos
  • Mon matos actuel
  • Mon futur matos
Cockos Reaper 5
Photos
1/61
Cockos Reaper 5

Séquenceur généraliste de la marque Cockos appartenant à la série Reaper

Prix public US : $60 incl. VAT
9/10

Sujet JSFX et ReaJS - Discutons-en!

  • 19 réponses
  • 9 participants
  • 3 144 vues
  • 16 followers
1 JSFX et ReaJS - Discutons-en!
A la demande de WZ, j'ouvre un thread sur le JSFX.

Le JSFX est un format de plug-in spécifique à REAPER qui possède son propre langage.

Via le plug ReaJS, il est possible d'utiliser ce format au sein d'autres STAN

les bases : https://www.reaper.fm/sdk/js/basiccode.php#js_basic

ReaJS : https://www.cockos.com/reaper/reaplugs/

N'hésitez pas à poster vos JS préférés avec les liens de téléchargement si possible!

Si des spécialistes de la programmation dans ce format passent par ici, n'hésitez pas à vous lacher! :)

2
3
En résumé, JSFX c'est un moyen d'écrire de coder (programmer) des effets pour moduler le son ou le MIDI, beaucoup plus simplement que si il fallait créer un VST pour cela, que ce soit à la fois au niveau du traitement du signal que de l'interface. Cependant, ils ne peuvent pas répondre à toutes les situations : dans certains cas, le VST restera un meilleur choix pour développer un plugin.

Parmis les JSFX les plus avancés, on a le kit de son 3D ambisonics
The Ambisonic Toolkit, (il y avait même eu une conférence à l'IRCAM pour présenter le concept, et pourquoi JSFX et pas autre chose => Ambisonic Toolkit for Reaper - Ressources), mais souvent, des petits JS très simples peuvent rendre de grands services (comme les fonctions de splitter par fréquence, de filtrage du MIDI, de randomization etc).

REAPER est livré avec plus de 250 JSFX, dont le Sampler Super 8, et de nombreux utilisateurs développent et partagent les leurs gratuitement, comme l'arpégiateur arp0!.
4
Je suis un grand fan du Bass Professor MK2 et des plug-ins + interfaces graphiques en JSFX de Sonic Anomaly : http://sonic.supermaailma.net/plugins

De manière générale, je trouve qu'il y a quelques pépites en JSFX, et aussi beaucoup de bordel :mdr: mais c'est vraiment cool de pouvoir coder un effet ou un instrument aussi simplement dans Reaper ou avec ReaJS, c'est intéressant à la fois pour les débutants ou pour des développeurs + avancés qui veulent prototyper un truc vite fait, ou avoir accès à une fonctionnalité simplement.

J'aime bien aussi personnellement regarder comment certains JSFX sont fichus, ça permet aussi d'apprendre des choses en DSP. Après, j'avoue que j'ai quand même pas mal d'outils de prototypage personnellement, et que je ne suis pas super méga fan du langage utilisé dans les JSFXs, du coup j'en ai jamais codé un moi-même. Mais je le ferai peut-être à un moment donné histoire de partager avec les utilisateurs de Reaper du code que j'ai déjà mis en open source pour JUCE.

Développeur de Musical Entropy | Nouveau plug-in freeware, The Great Escape

5
J'ai pas mal codé de petits JSFX, y compris des synthés polyphoniques. SmashedTransistors JSFX plugins.
Le langage a une certaine maturité. Il est stable et permet un codage bien structuré (pas objet au sens strict, mais le langage supporte les "namespaces").

La programmation sous JSFX est de bas niveau.
On a pas de modules comme dans un "synth maker" ou "pure data".
On est au même niveau que les VST: on traite et on génère tout au niveau code.

L'avantage par rapport aux VST est que le compilo est intégré à Reaper et qu'on a pas besoin de passer des heures sur une interface graphique. On a un système de sliders qui permet de répondre aux besoins élémentaires.

Ces derniers temps, j'ai un peu laché JSFX au profit de l'Axoloti qui combine programmation de bas niveau et modules. Ce serait chouette que JSFX évolue dans ce sens.

[ Dernière édition du message le 05/03/2017 à 18:37:40 ]

6
@SmashedTransistors
Cool d'avoir pour ton expertise sur le sujet ! J'ai vu que tu avais partagé beaucoup de tes réalisations sur le forum et sur le repo JSFX de Reateam :P Merci !
---

Un autre pro en JSFX: geraintluff.

Regardez son set de plugin ici (basé une bibliothèque graphique de son cru) :
A small set of JSFX (ReaPack) - Cockos Confederated Forums
7
Citation :
Un autre pro en JSFX: geraintluff
+1 !
Il y a des trucs vrmt sympas et au moins il y a un travail graphic pour les interfaces pcq qd ce n'est pas retravaillé c'est franchement ( pardonnez moi) à chier visuellement parlant.

Sinon c'est chouette d'avoir ouvert ce post pcq je ne connaissais vrmt pas ce domaine dans reaper. :bravo:
8
A noter que l'aspect des sliders par défaut et les vu-mètres sont influencés par le thème :P

D'un point de vue du dev, créer un slider JSFX sans GUI, ça tient en une ligne. Si on doit gérer le design là... on passe rapidement à 150, ce qui est un brin plus complexe ^^
geraintluff a partagé sa librairie en open source, mais là encore cela demande un certain apprentissage.

La plus part des JSFX ne sont que des utilitaires très simples mais très pratiques, donc à la rigueur c'est pas trop grave si l'UI est très générique, comme les Band Spliter et Joiner qui permettent de diviser le son d'une piste en fonction de certaines plages de fréquences afin de leur apporter des traitements sonores différents.

JS Band Splitter FX – The REAPER Blog
--
Un autre truc cool avec les JSFX et leur possibilités de "sortir certaines valeurs", ce qui permet d'avoir accès à des valeurs calculées par le plugin (et non pas définie par l'utilisateur), et de définir des modulations de paramètres en fonction de celles-ci.
Par exemple, kawa a modé le Gonionmeter (merci à lui d'avoir accepté mes feature requests :P) pour qu'il indique la distribution stéréo du son sur la stéréo, et, cette valeur étant accessible en sortie, on peut moduler d'autres effets en fonction.
Ci dessous, ce qui module l'equaliseur c'est la valeur de distribution stéréo calculée par le JSFX en fonction du son de la piste.
IM51JN2.gif

Ces valeurs calculées peuvent aussi être exportées en données d'automation (points d’enveloppe), ce qui permet d'avoir une vue d'ensemble du paramètre calculé sur l'ensemble du projet.
kCQTxgc.gif

--
D'autres JSFX par kawa:
three XY Slider jsFx ."Bit Crusher","Chorus","Flanger","Delay" - Cockos Confederated Forums

[ Dernière édition du message le 13/03/2017 à 13:28:12 ]

9
C'est vrai qu'il faut pas mal de code en plus pour le design ...
Vai jeter un oeil aux liens que tu as mis, j'ai juste peur que après ça ne devienne adictif tout ça nan? :-D
10
Une autre ressource interessante pour le developpement en JSFX : la librairie CookDSP.

Le code est très clair, bien documenté et facilement réutilisable.