Zum Inhalt

MIDI als Trigger und Sub-Action

Streamer.bot kann MIDI-Events empfangen (z.B. Akai APC, Korg Nano-Kontrol) UND MIDI-Events senden (z.B. um andere MIDI-Software zu steuern). Klassisch: Hardware-Pad triggert OBS-Scene.

Doku: https://docs.streamer.bot/api/triggers/core/midi/message

MIDI-Device anschließen

  1. MIDI-Hardware via USB anschließen
  2. Windows erkennt das Gerät automatisch
  3. Test mit Tool wie "MIDI-OX" (Windows) ob Events ankommen

Manche Software (z.B. loopMIDI) erlaubt virtuelle MIDI-Devices für rein-software-basierte Workflows.

MIDI-Trigger in Streamer.bot

Pfad: Core → MIDI → Message

Feld Bedeutung
Device Welches MIDI-Gerät
Message Type Note On, Note Off, Control Change, etc.
Channel MIDI-Channel (0-15)
Note / Controller Note-Number oder CC-Number
Value Velocity / CC-Value

Mit Filter-Optionen kannst du z.B. nur auf "Note On, Channel 1, Note 36" reagieren.

Action: Pad triggert Scene-Switch

Setup

MIDI-Pad gedrückt → OBS wechselt zur Scene.

Action: [MIDI] Pad → Scene Switch

Trigger: Core → MIDI → Message

Feld Wert
Device APC Mini mk2 (oder dein Device)
Message Type Note On
Channel 0
Note 36 (das C-Pad untenlinks)
Sub-Actions:
└── OBS Studio → Set Active Scene: "Main"

So jede Pad-Belegung → eigene Action. Bei 8x8 Grid hast du 64 Trigger.

MIDI als Sub-Action

Streamer.bot kann auch MIDI SENDEN um andere Software zu steuern:

Sub-Action Pfad
Note On Core → MIDI → Note On
Note Off Core → MIDI → Note Off
Control Change Core → MIDI → Control Change
Generic Event Core → MIDI → Generic Event

Use-Case: bei Twitch-Sub einen MIDI-Note-On an deine DAW (Ableton) senden → bestimmter Sound spielt automatisch.

[Event] Sub → MIDI Trigger
Trigger: Twitch → Subscriptions → Subscription
└── MIDI Note On:
     Device: loopMIDI Port 1
     Channel: 0
     Note: 60 (Middle C)
     Velocity: 100

In Ableton kannst du dann auf MIDI Note 60 ein Sample triggern.

Use-Case: Korg NanoKontrol → OBS-Audio-Mixer

Slider auf Korg = Lautstärke einer OBS-Audio-Source.

Action: [MIDI] Slider 1 → Mic Volume

Trigger: Core → MIDI → Message

Feld Wert
Device nanoKONTROL2 SLIDER/KNOB
Message Type Control Change
Channel 0
Controller 0 (Slider 1)
Sub-Actions:
└── Send Raw OBS Request:   (OBS Studio → Raw)
     Function: SetInputVolume
     Args: {"inputName": "Mic", "inputVolumeDb": <berechneter Wert>}

Hier wird's tricky: CC-Value ist 0-127, OBS-Volume in dB-Wert. Inline-Function-Math kann das mappen, aber komplex. Pragmatisch: ein C#-Snippet ODER fertige Plugin nutzen.

Use-Case: Stream Deck Alternative

Wenn du Stream Deck nicht magst aber günstige MIDI-Pads:

  • Akai APC Mini (50-90€) als Mini-Stream-Deck
  • 8x8 Grid + Buttons = 72+ Trigger
  • Jede Note kann eine SB-Action triggern

Vorteil ggü. Stream Deck: günstig + DAW-kompatibel.

Variante: Persistent Velocity tracken

Bei Drum-Pads kannst du die Velocity (= wie hart gedrückt) auswerten:

[MIDI] Hard Hit → Loud Action
Trigger: MIDI Message (Note On, Note 36)
├── 1. If/Else: %velocity% Greater Than 100
│   ├── Play Sound: loud-effect.mp3 (Volume 90)
│   └── Break
└── 2. Play Sound: subtle-effect.mp3 (Volume 50)

Sanftes Tippen = leiser Sound, harter Schlag = lauter Sound.

Häufige Fallen

  • MIDI-Device wird nicht erkannt — Treiber prüfen. Manche brauchen USB-MIDI-Class-Driver-Override
  • MIDI-Channel verwechselt — manche Devices fangen bei 1 an, andere bei 0. SB nutzt 0-basiert
  • Latency bei vielen MIDI-Events — pro Sekunde mehrere CC-Updates können langsam werden. Throttling nötig
  • MIDI-Loop — wenn du selbst MIDI sendest UND dein Device das gleiche empfängt, Feedback-Loop. Channels trennen
  • Mehrere MIDI-Devices gleich — wenn 2 nanoKONTROL angeschlossen, eindeutige Device-Namen prüfen

Quellen