Pokled
⭐ À la une

Nodyx Soundboard v2.7.0 : tes sons, ta queue, tes viewers participent

Pokled · Jun 02, 2026, 08:22 PM
98 vues
1 réponses
Jun 02, 2026, 08:22 PM (modifié) #1

L'histoire en 30 secondes

Tu streames. Un viewer crie dans le chat "joue le thème d'Ixion s'il te plaît !". Tu réponds que tu cherches, mais en pleine partie tu peux pas vraiment fouiller un dossier. Le viewer abandonne, l'instant est passé.

Cinq minutes plus tard, le même viewer aurait pu taper !ns ixion dans le chat. Le bot Nodyx aurait ajouté le morceau à une queue. Le son aurait démarré tout seul à la fin du précédent. Toi t'aurais juste joué.

C'est ça la v2.7.0 de Nodyx : un Soundboard intégré, une queue alimentée par tes viewers, un overlay OBS qui fait sortir le son, et une commande chat qui rend la participation hyper simple.

Ce qui change pour toi le streamer

Tu uploades tes sons une fois pour toutes via le panel admin Nodyx (drag and drop, jusqu'à 50 Mo par fichier, mp3, ogg, wav, flac). Le système lit automatiquement les tags ID3 : titre, artiste, durée, et même la pochette d'album si elle est dans le fichier.

Ensuite tu colles une URL dans OBS comme browser source (c'est l'overlay Soundboard, transparent, prêt à jouer du son), et tu rattaches tes sons à des boutons de ton Stream Deck mobile en un clic.

Pendant le live, tu déclenches les sons depuis ton téléphone, et la queue des viewers se vide toute seule entre tes ambiances.

Ce qui change pour tes viewers

Ils peuvent participer activement, pas juste regarder. Deux façons de demander un son :

1. La page publique : ils vont sur ton-instance/soundboard, voient ce qui joue en live, parcourent ta bibliothèque, et cliquent sur le bouton + Queue à côté du son qu'ils veulent. Toast de confirmation, et leur demande apparaît dans la section "À suivre".

2. La commande chat : ils tapent une commande dans le chat Twitch et le bot Nodyx s'occupe du reste.

Le tuto commande chat (lis bien c'est important)

Voilà comment ça marche, avec des exemples concrets. Si tu lis ça en tant que viewer, c'est ton mode d'emploi. Si tu lis ça en tant que streamer, fais passer à ta commu.

La commande de base

Dans le chat Twitch, tu tapes :

!nextsound <nom du son>

Ou la version courte qui fait la même chose et qui est plus rapide à taper :

!ns <nom du son>

Exemple :

!ns ixion

Le bot répond : @TonPseudo "IXION Original Soundtrack..." ajouté à la queue ✓

Et le son démarrera dès que le morceau en cours sera fini. Magique.

Pas besoin de taper le titre exact

C'est ça la vraie astuce. Le bot est tolérant. Tu peux taper :

  • !ns ixion alors que le titre complet c'est "IXION Original Soundtrack 01 Vanirs Legacy" → ça matche

  • !ns vanir → ça matche aussi (un autre mot du titre)

  • !ns IXION avec des majuscules ou pas, peu importe

  • !ns ixien avec une faute de frappe → ça matche encore (tolère 2 lettres de différence)

Le but c'est que tu galères pas. Tu te souviens vaguement d'un mot du titre, ça suffit.

Si le bot trouve plusieurs sons qui correspondent

Imaginons que le streamer ait deux sons qui s'appellent "Boss Theme 1" et "Boss Theme 2". Tu tapes !ns boss. Le bot va pas deviner au hasard. Il va te répondre :

@TonPseudo précise — candidats : "Boss Theme 1", "Boss Theme 2"

Là tu peux retaper avec un mot plus précis : !ns boss 2 ou !ns theme 2. C'est cool parce que ça évite de jouer le mauvais morceau pendant une scène tendue.

Si le son n'existe pas

Le bot te dit honnêtement qu'il a rien trouvé et te file le lien vers la liste complète :

@TonPseudo aucun son ne correspond à "blip". Liste : ton-instance/soundboard

Tu vas sur la page, tu regardes ce qui existe, et tu retentes.

Les règles anti-spam (que tu vas pas voir mais qui existent)

  • 30 secondes entre chaque demande par viewer. Le bot te le dira si tu vas trop vite

  • Maximum 3 sons en attente par viewer en même temps. Quand l'un d'eux passe, tu peux en redemander un

  • Pas deux fois le même son en queue. Si quelqu'un a déjà demandé "ixion", ton ajout est silencieusement ignoré

Ces règles existent pour pas que la queue se transforme en spam et que le live reste agréable pour tout le monde.

Pour le streamer : le contrôle reste de ton côté

Tout ce qu'on vient de décrire peut être coupé d'un clic depuis ton panel admin. Si un troll insiste ou si tu veux faire une pause musicale calme, tu désactives les ajouts viewers. Le toggle est dans le tab Soundboard de l'admin, ON par défaut.

Et la queue elle-même est visible en temps réel dans ton admin : tu peux retirer un son précis (Skip) ou tout vider d'un coup (Tout vider) si besoin.

Stream Deck : maintenant en pages

Petite révolution côté deck mobile aussi. Avant : une seule grille de boutons par deck. Maintenant : jusqu'à huit pages par deck, avec un dock de pastilles en bas de l'écran pour switcher en un tap.

Concrètement tu peux faire : une page pour tes commandes chat (!discord, !schedule), une page pour tes sons (chacun avec sa pochette d'album en miniature), une page pour les outils de modération. T'organises comme tu veux.

Quatre nouvelles actions dispos sur les boutons :

  • Jouer un son (avec sélection visuelle dans ta bibliothèque)

  • Couper le son en cours

  • Mettre en pause

  • Aller à une autre page (utile pour faire un "menu de sons" sur le deck)

Et si tu as déjà un deck créé avant cette mise à jour, il continue de marcher sans rien casser. On a fait gaffe.

La techno derrière (pour les curieux)

Si t'es développeur ou admin technique d'une instance, voilà ce qui s'est passé sous le capot :

  • Player audio overlay en Web Audio API avec fades, cross-fades et OSD configurable

  • Queue Redis FIFO avec rate-limit, cap par viewer, déduplication, auto-consume sur event audio:ended

  • Fuzzy matcher avec normalisation Unicode (casse + accents) et scoring en cascade : exact > substring début > substring milieu > tokens + Levenshtein sur premier mot

  • 2 nouvelles migrations Postgres (streamer_audio_library et bump du cap de taille des assets de 12 à 50 Mo)

  • Extraction des tags ID3 via music-metadata, cover art APIC sauvée dans uploads/audio_thumbs/

  • Le tout en TypeScript strict côté backend, Svelte 5 côté frontend

Notes de version complètes sur GitHub, code source AGPL-3.0 comme toujours.

Ce qui n'est pas encore là (l'honnêteté c'est important)

  • Pas de drag and drop pour réorganiser la queue (FIFO strict). Si tu veux plus de souplesse côté streamer, dis-le et on l'ajoute en v2.7.x

  • Pas de système de priorité pour les abonnés ou modérateurs. Tout viewer est égal dans la queue

  • Pas de visualizer audio (peak meter, waveform) dans l'overlay. C'est juste informatif en V1

  • Pas d'éditeur UI pour la config de l'overlay (position OSD, master volume) : les defaults sont OK pour 95% des cas, mais une session de polish viendra

  • Si OBS crash en plein son, l'auto-chaîne s'arrête. Pas de fallback timer côté serveur, c'est manuel pour relancer

Tout ça est identifié. Si une fonction te manque vraiment, ouvre un thread ou réponds ici, on note.

Mettre à jour ton instance

Si tu as déjà une instance Nodyx :

cd /var/www/nodyx-core && git pull && npm run build && pm2 restart nodyx-core
cd /var/www/nodyx-frontend && npm run build && pm2 restart nodyx-frontend

Les migrations s'appliquent automatiquement au démarrage du backend.

Si tu pars de zéro, l'installeur officiel chope automatiquement la v2.7.0 :

curl -fsSL https://raw.githubusercontent.com/Pokled/nodyx/main/install.sh | sudo bash

Pour finir

L'idée centrale n'a pas changé depuis le début : le streamer doit posséder sa communauté. Pas Discord, pas Streamlabs, pas une pile de SaaS qui se partagent ses données et son audience.

Le Soundboard est une brique de plus dans cette direction. Ta bibliothèque est sur ton disque, ta queue est dans ton Redis, tes viewers participent depuis ta propre URL.

Une instance, une communauté, ton propre toit. Toujours.

Vous devez être connecté pour répondre.

Se connecter