Skip to content

Simulateur Neuroscript

Essayez Neuroscript dans ce simulateur interactif. Écrivez du code, testez avec des événements MIDI d'exemple et voyez les résultats instantanément—tout droit dans votre navigateur.

Idle
Click Run to execute
VM State
Run a script to see VM state
Web MIDIUnavailable
Quick Reference
Filterkeep notedrop clock, realtimekeep cc where cc == 1
Transformevent(vel=clamp(vel, 35, 110))transpose(12)12 -> vel
Conditionwhen type == note : sendwhen vel > 100 : drop
Emitemit.cc(74, value)emit.noteOn(60, 100)

Qu'est-ce qu'il y a de nouveau dans le bac à sable

  • Moteur WASM Neuroscript réel — l'éditeur compile et exécute votre code DSL dans le navigateur, correspondant au runtime utilisé dans l'application.
  • Coloration syntaxique + saisie semi-automatique — des indices en ligne pour keep, drop, event, emit et les expressions conditionnelles.
  • Pont Web MIDI — connectez du matériel pour auditionner des transformations et, si nécessaire, refléter la sortie vers un autre appareil.
  • Événements sensibles au transport — ajustez le BPM/beat lorsque vous souhaitez prévisualiser des comportements temporels.

Lors de la construction des docs localement, exécutez npm run prebuild (ou make docs-wasm) à l'intérieur de docs/web pour copier le package neuroscript-wasm dans public/ afin que le simulateur puisse récupérer le bundle WASM.

Comment utiliser

  1. Écrivez votre script : Entrez du code Neuroscript dans l'éditeur
  2. Configurez l'événement de test : Définissez le type d'événement MIDI, le canal, le numéro de note/CC et la vélocité
  3. Exécutez : Cliquez sur "Exécuter" pour exécuter votre script contre l'événement de test
  4. Inspectez la sortie : Voyez l'événement MIDI transformé et le temps d'exécution

Exemples de scripts

Amplification de vélocité

neuroscript
event(vel = clamp(vel + 20, 1, 127))

Transposition d'octave

neuroscript
when type == note: event(note = clamp(note + 12, 0, 127))

Harmoniseur

neuroscript
when type == note: {
  emit.noteOn(note, vel)
  emit.noteOn(note + 4, vel)
  emit.noteOn(note + 7, vel)
}

Fonctions intégrées

Neuroscript expose un petit ensemble d'aides déterministes :

  • clamp(value, min, max) - Construit une valeur dans une plage
  • scale(value, inMin, inMax, outMin, outMax) - Mise à l'échelle linéaire
  • wrap(value, min, max) - Enroule dans une plage

Tests alternatifs

Vous pouvez également tester des scripts directement dans Neurode MIDI :

  1. Outil clavier virtuel : Utilisez le clavier virtuel intégré pour envoyer des événements MIDI de test
  2. Moniteur MIDI : Suivez les flux MIDI entrants et sortants en temps réel
  3. Journal des sorties : Activez le journal détaillé pour voir les résultats d'exécution des scripts

Étapes suivantes

  1. Testez des scripts directement dans les routes :

    • Créez une route
    • Ajoutez une transformation Script
    • Écrivez et testez votre script
    • Utilisez le Clavier virtuel pour envoyer des événements de test
  2. Utilisez le Moniteur MIDI :

    • Voyez la sortie du script en temps réel
    • Vérifiez que les transformations fonctionnent correctement
  3. Vérifiez les exemples :

Liste des fonctionnalités

  • Éditeur de code en direct — Écrivez Neuroscript dans le navigateur avec coloration et saisie semi-automatique
  • Entrée d'événement de test — Envoyez des événements MIDI personnalisés et ajustez le BPM/beat
  • Visualisation de la sortie — Voyez les événements transformés en ligne
  • Métriques de performance — Temps d'exécution par exécution
  • Bibliothèque d'exemples — Chargez, modifiez et remixez des recettes courantes

Utilisez le panneau Web MIDI pour router un contrôleur réel vers le moteur Neuroscript et refléter le flux transformé vers n'importe quelle sortie connectée.

Alternative : Test sur ordinateur

Utilisez l'application de bureau pour tester les scripts :

  1. Créez une route de test avec le Clavier virtuel
  2. Ajoutez votre transformation de script
  3. Ouvrez le Moniteur MIDI pour voir la sortie
  4. Jouez des notes sur le Clavier virtuel
  5. Itérez sur le script

Étapes suivantes

Créé avec ❤️ pour les musiciens