Contrôler OBS avec Social Stream Ninja

Contrôlez OBS directement depuis Event Flow, sans Streamer.bot. Ce guide couvre la configuration, tous les déclencheurs et actions OBS, des recettes pratiques et les anciens contrôles de dock/source Navigateur.

Français

1. Connecter Flow Actions à OBS

OBS WebSocket v5 est intégré à OBS 28 et aux versions suivantes. Social Stream Ninja l’utilise pour le contrôle complet d’OBS et les événements médias.

  1. Dans OBS, ouvrez Outils → Paramètres du serveur WebSocket (Tools → WebSocket Server Settings).
  2. Activez le serveur WebSocket. Conservez le port par défaut 4455; définissez un mot de passe si vous le souhaitez.
  3. Dans Social Stream Ninja, ouvrez la section Flow Actions et définissez l’URL OBS WebSocket et le mot de passe facultatif.
  4. Copiez l’URL Flow Actions et gardez-la ouverte. Une source Navigateur OBS est recommandée pour les actions d’incrustation/audio.
  5. Utilisez : Testeur OBS WebSocket pour vérifier la connexion avant de créer un flux.
Exemple d’URL directe
https://socialstream.ninja/actions.html?session=YOUR_SESSION&obsws=ws://127.0.0.1:4455

Ajouter &obspw=YOUR_PASSWORD uniquement lorsqu’OBS exige une authentification. Ajoutez &obsdebug=1 pour afficher un petit badge d’état de connexion pendant le diagnostic.
Gardez la page Flow Actions ouverte. C’est le pont qui reçoit les actions Event Flow et envoie les requêtes OBS WebSocket. Si c’est une source Navigateur OBS, désactivez Arrêter la source lorsqu’elle n’est pas visible (Shutdown source when not visible) si la source doit continuer à contrôler OBS lorsqu’elle est masquée.
Événement de chat / diffusion │ ▼ Event Flow Social Stream Ninja │ même identifiant de session ▼ Page Flow Actions (actions.html) │ OBS WebSocket v5 · ws://127.0.0.1:4455 ▼ OBS Studio

Deux modes de connexion OBS

ModeÉléments pris en chargePrérequis
OBS WebSocket v5Tous les déclencheurs et actions de ce guide.OBS 28+, serveur WebSocket activé et page Flow Actions ouverte.
API des sources Navigateur OBSRepli pour changer de scène, démarrer/arrêter la diffusion ou l’enregistrement et enregistrer le tampon de relecture.Flow Actions chargé dans OBS avec Advanced Access Level. Les fonctions de source, filtre, texte, volume, média, actualisation et fin de média nécessitent toujours WebSocket.

2. Ajouter des nœuds OBS à un flux

  1. Ouvrez : Éditeur Event Flow et créez ou modifiez un flux.
  2. Faites glisser un déclencheur sur le canevas.
  3. Développez OBS Studio dans la liste Actions et ajoutez l’action OBS souhaitée.
  4. Reliez le déclencheur à l’action, configurez les noms exacts des scènes/sources OBS, enregistrez et activez le flux.
Liste des actions OBS Studio dans l’éditeur Event Flow de Social Stream Ninja
Le groupe OBS Studio comprend les contrôles de scènes, sources, texte, médias, audio, filtres, sorties et tampon de relecture.
Les noms OBS doivent correspondre exactement, espaces et ponctuation compris. Les actions de source ciblent le nom de l’entrée OBS, pas le libellé de l’élément de scène s’il a été renommé séparément.

3. Déclencheurs OBS

Ils démarrent un flux lorsqu’OBS signale un événement correspondant. Ils arrivent sous forme de type: "obs"; les détails propres à OBS se trouvent sous meta.

DéclencheurMoment du déclenchementDonnées utiles
Diffusion OBS démarrée (OBS Stream Started)La diffusion atteint l’état démarré.meta.outputState, meta.outputActive
Diffusion OBS arrêtée (OBS Stream Stopped)La diffusion atteint l’état arrêté.meta.outputState, meta.outputActive
Enregistrement OBS démarré (OBS Recording Started)L’enregistrement démarre.meta.outputState
Enregistrement OBS arrêté (OBS Recording Stopped)L’enregistrement s’arrête.meta.outputState
Scène OBS changée (OBS Scene Changed)La scène de programme active change.meta.sceneName
Média OBS terminé (OBS Media Ended) WebSocketUne entrée média termine sa lecture. Vous pouvez filtrer par nom exact de source média.meta.inputName, meta.inputUuid
Tampon de relecture OBS enregistré (OBS Replay Buffer Saved)OBS termine l’enregistrement d’une relecture.meta.savedReplayPath

4. Actions OBS

ActionConfiguration et comportementConnexion
Changer de scène (Change Scene)Change la scène de programme active selon son nom exact.WebSocket ou repli par l’API de source Navigateur
Afficher/masquer une source (Toggle Source)Affiche, masque ou inverse la visibilité d’un élément de scène. Scene et Group sont des champs de ciblage facultatifs.WebSocket
Définir une source texte (Set Text Source)Met à jour Texte (GDI+) ou Texte (FreeType 2), avec des variables de modèle.WebSocket
Contrôler une source média (Control Media Source)Lit/reprend, met en pause, redémarre, arrête, passe au suivant ou au précédent.WebSocket
Régler le volume de la source (Set Source Volume)Règle une entrée de -100 à +26 dB.WebSocket
Actualiser une source Navigateur (Refresh Browser Source)Recharge une source Navigateur sans cache.WebSocket
Activer/désactiver un filtre (Toggle Filter)Active, désactive ou inverse l’état d’un filtre de source nommé.WebSocket
Couper/réactiver le son (Mute/Unmute Audio)Coupe, réactive ou inverse l’état muet d’une entrée.WebSocket
Démarrer l’enregistrement (Start Recording)Démarre l’enregistrement OBS.WebSocket ou repli par l’API de source Navigateur
Arrêter l’enregistrement (Stop Recording)Arrête l’enregistrement OBS.WebSocket ou repli par l’API de source Navigateur
Démarrer la diffusion (Start Streaming)Démarre la sortie de diffusion OBS configurée.WebSocket ou repli par l’API de source Navigateur
Arrêter la diffusion (Stop Streaming)Arrête la sortie de diffusion OBS.WebSocket ou repli par l’API de source Navigateur
Contrôler le tampon de relecture (Control Replay Buffer)Démarre, arrête ou inverse l’état du tampon de relecture.WebSocket
Enregistrer le tampon de relecture (Save Replay Buffer)Enregistre le tampon de relecture actuellement actif.WebSocket ou repli par l’API de source Navigateur

Set Text Source et variables de flux

Le champ texte accepte les variables de message habituelles, comme {username}, {message}, {source}, et {donation}, ainsi que les valeurs ajoutées par des nœuds précédents, comme {counterValue}, {counterTarget}, et {counterRemaining}.

{username}: now {counterValue}, need {counterTarget}
Propriétés Set Text Source avec variables de modèle de compteur
Set Text Source écrit directement la valeur résolue dans l’entrée texte OBS nommée.
Pour une source Texte (GDI+) ou Texte (FreeType 2), désactivez Lire à partir d’un fichier (Read from file). Sinon, OBS peut continuer à afficher le contenu du fichier au lieu du texte envoyé par Event Flow.

Contrôles de source média

Lecture / Pause

Lecture reprend un média en pause. Pause conserve la position actuelle.

Redémarrer / Arrêter

Redémarrer repart du début. Arrêter termine la lecture et réinitialise l’entrée.

Suivant / Précédent

Parcourt les entrées prenant en charge les listes de lecture, comme Source vidéo VLC. Une source média à fichier unique peut ignorer ces actions.

Volume, son muet et filtres

Régler le volume de la source (Set Source Volume) utilise les dB, comme le mixeur OBS : 0 dB correspond à un gain inchangé, les valeurs négatives réduisent le volume et -100 dB est pratiquement muet. Le mode muet est un état distinct. Toggle Filter modifie seulement l’activation d’un filtre existant, pas ses réglages.

Tampon de relecture (Replay Buffer)

Activez d’abord le tampon de relecture dans Paramètres OBS → Sortie. Utilisez Contrôler le tampon de relecture (Control Replay Buffer) pour le démarrer/l’arrêter, puis Enregistrer le tampon de relecture (Save Replay Buffer) pour écrire le segment récent mis en mémoire tampon sur le disque.

Attention à la sortie en direct : Start/Stop Streaming et Start/Stop Recording agissent immédiatement. Utilisez des déclencheurs, autorisations et délais restrictifs pour empêcher leur activation accidentelle par des messages ordinaires.

5. Recettes utiles

Message horaire pendant le direct OBS

Dans l’éditeur Event Flow, choisissez Commencer avec un modèle → Intermédiaire → Message horaire pendant le direct OBS (Start with a template → Intermediate → Hourly message while OBS is live). Il est désactivé au départ et comprend trois branches dans un même flux :

  • OBS Stream Started → Set Gate State : ON
  • Time Interval (3600 secondes) → ON/OFF Switch → Send Message
  • OBS Stream Stopped → Set Gate State : OFF

Les deux actions Set Gate State ciblent déjà le même interrupteur, désactivé par défaut. Modifiez Envoyer un message (Send Message) pour choisir votre plateforme de chat, Twitch dans l’exemple, et votre message. Choisissez une plateforme ou All Platforms ; Reply to Source ne peut pas répondre à un événement OBS ou à un déclenchement de minuteur.

Connecter Flow Actions à OBS, gardez Social Stream et le chat de destination connectés, puis enregistrez et activez le flux avant de démarrer votre diffusion. L’interrupteur attend un événement de démarrage OBS ; le charger pendant un direct en cours ne l’active pas. Redémarrer Social Stream le remet aussi sur OFF.

Temporisation : l’intervalle suit son propre calendrier ; le premier rappel peut donc arriver moins d’une heure après le début du direct. Les rappels suivants se répètent toutes les heures tant que l’interrupteur est sur ON. Modifiez Time Interval pour une autre fréquence ; la valeur est en secondes.

Texte de compteur dans OBS

Placez Définir une source texte (Set Text Source) après le chemin compteur/vérification et utilisez :

{username}: now {counterValue}, need {counterTarget}

Exécuter une action après une vidéo

Média OBS terminé (OBS Media Ended) (filtrer sur Intro Video) → Changer de scène (Change Scene) à Main.

Redémarrage d’un média par le chat

Le message est égal à (Message Equals) !replayintro → condition d’autorisation → Contrôler une source média : redémarrer (Control Media Source: Restart).

Actualiser une page d’alertes

Le message est égal à (Message Equals) !refreshalerts → condition de modérateur → Actualiser une source Navigateur (Refresh Browser Source).

Baisser la musique pendant une alerte

Régler le volume de la source (Set Source Volume) à -24 dB → action d’alerte → Delay → rétablir à 0 dB.

Flux de relecture

Diffusion OBS démarrée (OBS Stream Started) → Contrôler le tampon de relecture : démarrer (Control Replay Buffer: Start); une commande de confiance distincte exécute Enregistrer le tampon de relecture (Save Replay Buffer).

6. Autres contrôles OBS intégrés

Social Stream Ninja possède aussi d’anciens contrôles de source Navigateur OBS dans le dock Streaming Chat. Ils n’utilisent pas le pont WebSocket Flow Actions.

OptionFonctionPrérequis
Indicateur de scène OBS actuelleAffiche la scène active dans le dock Streaming Chat.Dock chargé dans OBS avec autorisation de lecture.
Les invités peuvent utiliser !cyclePasse à la scène OBS suivante, avec une limite d’une fois toutes les 10 secondes.Activez l’option du panneau ; le dock doit être chargé dans OBS avec un accès Advanced.
Les utilisateurs autorisés peuvent utiliser !start / !stopDémarre ou arrête la diffusion depuis des utilisateurs de chat de confiance.Activez l’option du panneau ; le dock doit être chargé dans OBS avec une autorisation de contrôle Full/Advanced.
Panneau distant de contrôle OBSAffiche les scènes et permet de changer de scène ou d’activer/désactiver diffusion et enregistrement lorsque le dock OBS cible accorde le niveau de contrôle requis.Dock Streaming Chat associé à un dock exécuté dans OBS.
Testeur OBS WebSocketVérifie la version, la connexion, les scènes et les requêtes individuelles avant d’utiliser Event Flow.Ouvrir le testeur

7. Dépannage

ProblèmeVérifiez
Rien ne se passeLe flux est enregistré et activé ; Flow Actions est ouvert ; les deux utilisent le même identifiant de session.
OBS ne se connecte pasLe serveur WebSocket est activé, l’URL est ws://127.0.0.1:4455, et que le mot de passe correspond. Le port 4444 est l’ancien port par défaut de la v4.
Scène/source/filtre introuvableCopiez le nom OBS exact. Pour la visibilité, définissez Scene ou Group si l’élément est imbriqué ou hors de la scène actuelle.
Le texte ne change pasUtilisez Texte (GDI+) ou Texte (FreeType 2), vérifiez le nom de l’entrée et désactivez Lire à partir d’un fichier (Read from file).
Media Ended ne se déclenche jamaisUtilisez OBS WebSocket v5 et une véritable entrée média. Un média en boucle n’atteint pas l’état terminé.
Suivant/Précédent ne fait rienUtilisez une source acceptant les listes de lecture, comme Source vidéo VLC.
L’enregistrement de la relecture échoueActivez le tampon de relecture dans les paramètres Sortie d’OBS et démarrez-le avant l’enregistrement du tampon.
Les actions s’arrêtent lors d’un changement de scèneDésactivez Arrêter la source lorsqu’elle n’est pas visible (Shutdown source when not visible) sur la source Navigateur Flow Actions, ou gardez la page ouverte ailleurs.
Ordre de diagnostic : ouvrez le testeur → vérifier GetVersion → vérifier les scènes/entrées → tester la requête individuelle → tester le flux Event Flow complet.