Here’s a guide for live streaming your TidalCycles session to YouTube.
This is the set-up I use so it’s specific to Mac with SuperDirt and Atom. There a load of ways to achieve this so it would be great to see the guide expand.
Requirements
- TidalCycles (obviously)
- SuperCollider
- SuperDirt
- Atom (or your preferred text editor)
- Soundflowerbed
- OBS
Instructions
Soundflowerbed
- Launch SoundFlowerbed
- A status icon will appear in the top menu strip. Click it and tick the ‘Built-in output’ option under Soundflower (2ch)
- Also on the top menu strip, click the speaker icon and from the output device options select Soundflower (2ch)
SuperCollider
- Launch SuperCollider
- Run the following command in SuperCollider by pasting it in the input window and hitting Shift + return anywhere on the line:
Server.default.options.outDevice_("Soundflower (2ch)")
- Hit Cmd + Shift + L to recompile the class library
- Launch SuperDirt with:
SuperDirt.start
In the post window you should see something like:
"Built-in Microph" Input Device Streams: 1 0 channels 2 "Soundflower (2ch)" Output Device Streams: 1 0 channels 2
This confirms that SuperCollider will output to SoundFlowerbed, which will act as the audio input to OBS for the stream.
Atom / other text editor
- Launch Atom and save a new .tidal file
- Exit full screen if that’s how the application is currently set. This is to overcome an issue with OBS detecting full screen application windows.
- It’s also worth increasing your editor font size a few points so it’s clear in the stream.
OBS
- Launch OBS
- In the Sources menu click the + sign and select Window Capture from the list of available options.
- In the next screen select the application and file name combination that matches your text editor.
- Switch back to your text editor and set it to full screen mode. Then head back to OBS.
- You should see a stream of your text editor being rendered in OBS.
- Click the + sign again to add your audio stream. Select audio output capture and select Soundflower.
YouTube
- Log into YouTube with an account you want to use to broadcast your performance to the world.
- Click your user avatar in the top-right corner of the screen and select Creator Studio.
- From the left-hand panel select Live streaming > Stream now
- Enter basic information for your stream.
- Under the encoder set-up section at the bottom, click Reveal to display your encoder key and copy it. This will be used to authenticate your stream with YouTube.
Back to OBS
-
- Enter Settings and select Stream from the left-hand panel.
- Apply these settings:Stream type: Streaming Services
Service: YouTube / YouTube Gaming
Server: Primary YouTube ingest server
Stream Key: paste the key you were given on YouTube
- Enter Settings and select Stream from the left-hand panel.
OBS Output Stream settings
You may wish to experiment with different settings for your stream (the bitrate in particular), I found these work for a decent resolution and audio quality, without encountering buffering issues.
Encoder: x264
Rescale output: 1024 x 640
Rate control: CBR
Bitrate: 500
Keyframe interval: 0
CPU usage preset: very fast
Profile: none
Tune: none
Start streaming
You’re good to go.
- Click Start Streaming in OBS. In a few seconds the steam will be live on YouTube.
- When you’ve finished click Stop Streaming and YouTube will create a recording in your channel. You can choose whether to share, edit, delete, and so on.
And finally, here’s one I made earlier.