Zum Inhalt springen
  • Dunkel
  • Hell
  • System

Heart-Rate Display in OBS

Event: Heart Rate Display

Einsteiger

OBS-Text-Source updated bei jedem Pulse. Pure Display ohne Logik: die Komplexität kommt erst in der Cascade-Variante.

Steps
1
Cooldown
0s/User
Cooldown
0sglobal
Zugriff
Broadcaster

Klassisches Heart-Rate-Overlay: bei jedem Pulse-Event setzen wir den Text-Wert in OBS auf den aktuellen BPM-Wert. Triggert bis zu einmal pro Sekunde, deshalb sollte die Action eine eigene Queue mit Concurrent = false und Blocking = true bekommen, sonst überholt sich der Stream selbst und blockiert andere Actions. Argument %heartRate% Aktueller BPM-Wert als Integer. Variablen-Doku kommt vom Trigger.

  1. Neue Text (GDI+) Source in OBS
  2. Name HeartRate-Display
  3. Default-Text ❤ -- BPM
  4. Font groß und lesbar (z. B. 48 pt, weiß mit schwarzem Outline)
  5. Position frei wählen, typisch obere/untere Ecke

Trigger: Integrations > HypeRate.io > Heart Rate Pulse (oder Pulsoid). Min/Max im Trigger leer lassen, damit jedes Pulse-Event ankommt.

Set GDI Text

OBS Studio Sources Set GDI Text

Schreibt den aktuellen BPM-Wert in die HeartRate-Display Source.

Connection Default
Scene (leer = alle Scenes mit der Source)
Source HeartRate-Display
Text ❤ %heartRate% BPM
  1. 1 Set GDI Text: HeartRate-Display = "❤ %heartRate% BPM"

Da der Trigger bis zu 1× pro Sekunde feuert, MUSS die Action eine eigene Queue bekommen:

SettingWert
QueueHeart Rate Queue (neu anlegen)
Concurrentdeaktiviert
Blockingaktiviert

So blockiert das Display nicht Chat-Commands oder Scene-Switches.

Pulse-EventResultat
%heartRate% = 72OBS zeigt ❤ 72 BPM
%heartRate% = 0 (Sensor-Drop)OBS zeigt ❤ 0 BPM: siehe Edge-Case
Action läuft 1.2 snächster Pulse queue’t sich, statt zu droppen
  • HR-Drop auf 0: bei kurzem Sensor-Aussetzer sendet HypeRate manchmal 0. Lösung: vor Set GDI Text ein If/Else %heartRate% Less Than 30 → Break.
  • OBS-Verbindung instabil: Updates kommen verzögert oder gar nicht. Auto-Reconnect in der OBS-Connection aktivieren.
  • Falscher Source-Name: Sub-Action fail’t still. Source-Name in SB und OBS müssen Byte-exakt matchen.
  • Action-Queue voll: bei sehr langsamem OBS-Output sammelt sich die Queue. Blocking verhindert das Backlog-Problem.
  • Color-Coded Emojis: Cascade von If/Else-Branches setzt unterschiedliche Emojis je nach Range (😴 < 60, 💚 < 100, 💛 < 140, 🔥 < 170, 🚨 ≥ 170).
  • Color-Source statt Text: OBS Studio > Sources > Set Color Source Color mit Hex-Werten pro Zone (Blau-Grün-Gelb-Orange-Rot).
  • Audio-Beat-Sync: Core > Sounds > Play Sound mit Heartbeat-Datei. Nur bei %heartRate% > 130 triggern, sonst zu nervig.
  • vTube-Studio-Bridge: siehe HR → vTube-Bridge für Live-Parameter-Update.