Skip to main content

Split Audio Source for OBS (Browser)

It separates TTS control from the audio output in OBS, which is handy with several audio tracks. Both links are in the Links for OBS block on the Text-to-speech page.

The idea: you have two clients

  • Controller (for a dock): controls voicing and, if there are no players, can play the sound itself
  • Player (a browser source on a scene): outputs the sound to the audio track you need

If there is at least one player, the controller only controls the players and does not play sound itself. If there are no players, the controller plays the sound itself.

Step 1. Add the controller to an OBS dock​

If the controller is already in a dock after How to Add Message Voicing, go to step 2.

  1. Open Docks -> Custom Browser Docks

    The Docks menu in OBS with Custom Browser Docks selected

  2. Type a dock name and paste the Controller — into a dock link. It looks like this: https://apiv2.jeetbot.cc/voiceover/controller/?token=...

    The Custom Browser Docks window: the JeetBot name and the controller link

  3. Click "Apply" and "Close". A dock window with the voicing controls appears.

    The controller in an OBS dock

The controller is for start/pause and general control. It does not have to output sound if you have a player added.

Step 2. Add the player as a "Browser" source to a scene​

  1. In OBS, add a Browser source to the scene you need

    4_1_step.png

  2. Paste the Player — into a Browser source link. It looks like this: https://apiv2.jeetbot.cc/voiceover/player/?token=...

  3. Set a size (for example, 800x600). The picture does not matter, it is an audio source

  4. Make sure the source shows audio activity during a test voicing

    4_2_step.png

If you have several scenes​

  • Add one player per scene where you need TTS output
  • The player detects that it is on the active scene; players on inactive scenes turn themselves off

Step 3. Bind the source to a separate audio track​

  1. Open Audio Mixer -> the gear icon of the player source -> Advanced Audio Properties
  2. Turn off the tracks you do not need and turn on the one you need (for example, only Track 3)
  3. In the OBS recording/streaming settings, enable that track in the recording/stream profile

This way TTS voice goes to a separate track, not mixed with game audio or the microphone.

How it works​

  • No players on the scene: sound comes from the controller (in the dock window)
  • At least one player: the controller controls the players; sound comes only from the players

You control it in the dock and play it in the scene on the track you need.

Tips​

  • You can add several players on different scenes: sound plays on the active scene
  • Players on inactive scenes turn off automatically and output no sound
  • If you hear nothing, check the track settings in Advanced Audio Properties and the source volume
  • The controller can be collapsed. It does not have to be visible, but its tab must stay active