How to set up live streaming using OBS, Gig Performer and JACK Router

How to set up live streaming using OBS, Gig Performer and JACK Router

In this article you will learn how to set up live streaming using OBS, Gig Performer and JACK Router.

As previously mentioned in this blog article, due to Gig Performer’s stability, efficiency and feature-richness, it has found its way to being used for purposes other than live performance and in particular is being used in many live streaming scenarios very successfully (you can see examples in this and in this Gig Performer in Action thread).

Since there were recent discussions on the Community forums about JACK (e.g. here and here), we decided to provide you with some guidelines to help you set up JACK and Gig Performer with OBS. The guidelines below apply to Windows, but since JACK, OBS and Gig Performer all run on Apple computers, the approach is the same on macOS, as well.

What is JACK2

.
JACK Audio Connection Kit
(or simply JACK) is a professional sound server API and a pair of daemon implementations to provide real-time, low-latency connections for both audio and MIDI data between applications. It is great for taking the audio output from one application and sending it to one or more other applications. It is available for Windows, macOS and Linux.

Set up Jack2, OBS and Gig Performer for live streaming


What is OBS

.
OBS Studio
is a free and open source software application for video recording and live streaming, available for Windows, macOS and Linux. It provides you with high performance real time video/audio capturing and mixing.

Prepare your Windows system

.
First, let’s make a couple of preparations to avoid occasional Windows-related problems. As Gig Performer user @vindes mentioned in this thread, the best practice is to ensure that sample rates and buffer sizes are the same everywhere (this tip and many other optimization tips are also indexed here). Since I use a buffer size of 128 and a sample rate of 44.1 kHz, I make sure that all my devices in the Sound applet in the Control Panel are set to 44.1 kHz:

Windows Speaker Properties, Sample Rate 44100 kHz

In the Advanced tab, select the desired sample rate. Additionally, if you happen to have the Enhancements tab, make sure to check the Disable all enhancements check box.

Download and install necessary software

.
Download the JACK
64bit installer” from this link. Run the setup file and in the installation wizard select Full installation (with JACK-Router).

Jack2, Full Installation with JACK Router ASIO driver

This will install a new ASIO device named “JackRouter”, which will be selected in OBS Studio and Gig Performer in the steps below.

Download OBS Studio from this link. After you install it, in the Audio Settings, select the desired sample rate (make sure that the sample rate is consistent, 44.1 kHz in my case) and select your audio interface in the Global Audio Devices section.

OBS Audio Settings, sample rate and audio interface

Afterward, close the OBS Studio as we also need to install the ASIO OBS plugin.

The ASIO plugin for OBS-Studio is a plugin that allows audio capture from ASIO sound devices, which are often professional or semi-professional grade hardware for studio or home-studio use. Another benefit of this plugin is that also provides OBS Studio with multi-client capabilities (several ASIO devices can be used at the same time with OBS Studio).

Download it from this link and install it.

Configure OBS Studio to capture ASIO input

.
Start OBS Studio and click on the “+” button under the Sources pane. Once the ASIO plugin is installed, a new menu item will be available – ASIO Input Capture.

OBS Studio, ASIO Input Capture

Click on this menu item and in the next dialog click on “Create new” and then type in the name of the source (e.g. “Jack ASIO Capture”):

OBS ASIO Input Capture, Select Source dialog

Click OK and when the next dialog appears, match the parameters as shown in the screenshot below:

OBS Audio Settings for ASIO capture: select Device, OBS Channel 1 and OBS Channel 2

Click on the OK button to save the changes and then quit OBS studio.

Configure Gig Performer to use JACK Router

.
In Gig Performer’s Audio Options window select the parameters (Audio device type, Device, Sample rate, Audio buffer size) as in the screenshot below:

Gig Performer Audio Settings, JACK Router

Make sure to select the JackRouter ASIO device and to match the sample rate and audio buffer size as in other audio applications. Close Gig Performer when you finish.

QjackCtl configuration

.
Before proceeding with any steps make sure that all your audio applications are closed (OBS Studio, Gig Performer, and all other audio applications). Otherwise, you might get errors while trying to start the JACK server.

Click on the Start button, type in “QjackCtl” and then open this application:

QjackCtl Setup audio interface, Buffer Size and Sample Rate

Click on the Setup… button and then select your audio interface, Sample Rate and Buffer Size (“Frames/Period). In my case, it is always 44.1 kHz / 128. Click OK and then click on the Start button.

You can see the yellow message “Started” and that the Start button is now grayed out:

QjackCtl Start Jack Plus Graph

Next, click on the Graph button. This will list all running audio applications where “JackRouter” is selected as an ASIO device. Now start OBS Studio and you’ll see that another node is added to the graph:

QjackCtl Graph with OBS Studio

Finally, start Gig Performer and note the addition of Gig Performer to the graph:

Gig Performer and OBS Studio in the Jack Router Graph

To route Gig Performer outputs into OBS Studio, simply drag the out1 and out2 pins from the “GigPerformer4” node to the in1 and in2 pins of the “obs64” node respectively:

Gig Performer Outputs to OBS

Of course, you can easily route whatever you want and wherever you want. Feel free to experiment to find what works best for you.

The Audio Mixer in OBS Studio is useful to troubleshoot any issues.

OBS Audio Mixer, Gig Performer, Playing YT playing

In this screenshot, I can hear a YouTube video clip while also hearing outputs in Gig Performer.

If you have any questions or you want to share your feedback, please visit this Community thread.
Note: there are a couple of concerns with using JACK. Please see this community article for more information.

.
Share this article it to support Gig Performer and spread the word! 🙂

Own The Stage® with Gig Performer®

Nemanja Pudar

.
Related topics:
Gig Performer is the best companion for all your musical efforts and more
How to use a single-client ASIO driver with multiple applications on Windows
Why use a computer with Gig Performer rather than hardware



Scaling Curves


Scaling curves allow you to control the shape of the output of a widget or convert an incoming note velocity to a new velocity. Various predefined curves are available and they can be tweaked as necessary. You can also just draw your own curve as well to achieve the effect you require.

 

MIDI File Player Plugin


You can load up to 128 MIDI song files in a single plugin instance. Switch from one song to another, mute tracks and/or change their channel numbers. Tempo can be controlled by individual songs or you can use the global tempo and tap tempo to control the BPM interactively.

 

Favorites and Presets


Create a sound by placing and interconnecting your desired plugins, such as a synth, some effects and perhaps a mixer. Select them all and then save the selection as a named favorite. The favorite will subsequently show up in all plugin insert menus, making it easy for you to recreate that configuration whenever you need it again. This feature is also very powerful for creating your needed sounds on your studio computer and then transferring them to your touring laptop.

 

Probabilistic Sound Designer


Parameters you select in an open plugin are captured into the Probabilistic Sound Designer dialog window. When you click Randomize, you're only adjusting those selected parameters. Each entry in the PSD dialog has a curve but unlike widgets where the curve controls scaling, in the PSD the curves are used to define the probability of particular values being selected. Make sure the filter cutoff never gets too slow so as to block all sound. Perhaps adjust the max range of the VCA attack parameter so that the sound doesn't have too much delay. Constrain the octave ranges of the oscillators, perhaps ensuring that 1/3rd of the time we select 8' and 2/3rds of the time we select 4'. The possibilities are endless.

 

More Widgets


Numerous new widgets are included in Gig Performer - a new sustain pedal, plastic knobs, drum pads and more colored sliders. Shapes can be colored with different borders and fill colors and morphed from rectangular to circular. Your creativity is now the limit to creating fabulous front panels in Gig Performer.

 

MIDI Message Helper


Select MIDI devices by name. Choose the MIDI message type and adjust the appropriate parameters for the specific type

 

  

Layout management


Gig Performer supports arbitrary resizing. Layout your widgets the way you want - resize the main window and the widgets will grow or shrink as necessary to maintain the same interrelationships. No matter what size screen you have, your front panels will still be neat and usable.

 

Undo Support


If you move your widgets around and/or resize them, or even delete them by mistake, the Undo facility will correct your mistake. Minor moves to a widget by mistake will no longer spoil your design

 

Plugin Channel Count


Some plugins support a large number of outputs and they depend on the traditional channel strip to control how many ports should be available.   When you only need a stereo pair, it is convenient not to have a large horizontal block. In Gig Performer, the number of available ports  is controlled by the channel count override, which can be applied to individual plugins and will be remembered when the gigfile is reloaded or if the plugin is saved as a favorite.

 

Input muting and output fading


Rather than a single audio length tail, Gig Performer 4 gives you the ability to control input muting and output fading separately. Input muting controls how much time it takes for audio input to be silenced when you leave the rackspace. Output fading controls how much time will be taken for audio to fade out when you leave the rackspace.

 

Faster Plugin Finder


Instead of searching through menus of perhaps hundreds of plugins (you know who you are!), the Quick Plugin Finder makes it easy to find the plugin you need by simply typing partial strings. For example, as shown here, to find the Modartt Pianoteq 7 plugins, it's enough to type pia mod 7 (in any order, by the way)  to restrict the list of available plugins to those matching your query. The Quick Plugin Finder also knows about manufacturers, presets and favorites.

 

  

Touch Friendly Input


Any entry field can be changed by either dragging your mouse (or finger) up or down, or by using the large popup touchpad where you can just tap on the squares to enter a value. The large popup keypad also does validation so you can't enter an invalid value. You can also just tap the BPM field to pop up a larger view where you can quickly change tempo, tranpose, trigger Tap Tempo and enable Ableton Link, the last allowing you to synchronize Gig Performer with any other application that also supports Ableton Link.

 

New Tuner Display


The tuner view makes it easy for guitarists to quickly check and adjust their tuning. You can toggle into the tuner view from any other view and toggle right back as soon as you're done. All output will be silenced automatically while you're in tuning mode. You can adjust the concert reference pitch from its default of 440 Hz to suit your own needs. The tuner view fills the entire screen so you can easily see it from a distance.