Hey! This post is quite popular on The Googles but it’s a little outdated now. Apologies if some of this doesn’t work for you – most of it should do though! I’ll try and update it with a new version soon.
Earlier this year I streamed the talks from the International Conference on Computational Creativity live on Twitch. We had almost 100 unique viewers in total over the course of the conference, extending the conference’s reach to people who couldn’t afford to attend, were from universities without travel budgets, or people who were just curious about what a conference talk about computational creativity might look like. It was a huge success and more events like this should stream their talks (where appropriate – many events avoid video recording for important reasons like the privacy, comfort or freedom of their speakers). I was asked several times for a guide on how to set up a stream like this – and I’ve finally written it.
This guide took a little longer than expected because shortly after the conference Twitch seemingly dropped their support for FLME, the tool I’d been using to Stream. However, the good news is that the far superior Open Broadcaster Software (OBS) now has a Mac OS download, so the wait was worth it.
This guide will show you how to broadcast a live webcam feed to Twitch using OBS. I’ll be adding a second post later about equipment and other considerations. This is just your basic how-to about streaming. I’m using a Macbook Pro running Mountain Lion to do this. Streaming is intensive – my Mac whirrs up like a jet engine and gets very hot. But it doesn’t need much of an internet connection, funnily enough. ICCC 2014 was streamed over campus wireless, and we didn’t have any connection problems.
Step 1 – Download OBS
You can download OBS on the tool’s website, here. This guide is based on OBS Multiplatform 0.4.2. Download, install it, and when you start you’ll see something like this:
The main window is a preview of what you’ll eventually broadcast. At the bottom are four panels. Left to right: Scenes are pre-set collections of data sources that you can save and switch to quickly. This is handy if you want to cut from, say, the live conference stream to a “We’ll Be Right Back” stream to show during coffee breaks. Sources let you customise the current scene by adding various data sources. Sources are things like video streams (webcams, monitor displays or just static images) or audio streams (music, microphones). Mixer lets you adjust audio levels of your data sources, and also test that they’re working. Finally, the panel of buttons lets you record, stream, and change key settings.
Step 2 – Set Up The Stream
Depending on what you want to stream you’ll need different sources. For us, we want to stream a conference that’s going on in the room with us. So we need two sources, in my case that’s the webcam and the microphone. Click the plus arrow underneath the Sources window and select Video Capture Device from the menu. A new window will appear:
You can rename the device if you want, we’ll leave this as-is, and click OK. You then need to decide what kind of video capture stream you want.
OBS autodetects anything your machine has, so when you click on the button next to ‘Device’ you should see things like a webcam or FaceTime built-in camera. Select your device and then close the window (I had to click the red close button in the top-left). You should now be taken back to your preview, and you’ll be seeing the output of your webcam.
If it’s a bit small, like in the shot above, you can resize it by dragging any of the handles on the corners or edges. The black area is what will be shown on the stream, so resize it accordingly. I won’t put you through the terror of a full-size screenshot of my face. Next we need to add the microphone so your attendees can hear you. Click the Plus sign under the Sources box again, and choose Audio Input Capture. Click OK after renaming it, and you should see a window similar to the one where we selected the webcam.
Step 3 – Registering A Stream
We’re using twitch.tv for this guide. Twitch is currently mostly used for gaming streams, but it has a great infrastructure, lots of servers, and effortlessly exports to YouTube. Head over to the site and click the Sign Up button in the top-right.
When you do you’ll get a popup prompting you for various info. Fill it all in and you’ll be automatically logged in. The only thing to bear in mind is your username: you’ll be broadcasting at www.twitch.tv/<yourusername> so pick a good one.
Twitch has a lot of options to customise and so on, so many that it’s really another guide in itself. However, one thing you should do right now, before you forget, is tell Twitch to automatically archive your broadcasts. Go to your settings page by clicking your username and choosing Settings:
Then go to ‘Channel & Videos’ and check ‘Automatically archive my broadcasts’.
By default, Twitch will remove these archives after a few weeks. But it’ll give you time to edit and cut them – if you don’t check that box, your channel will just stream and not record the videos. That’s the only other thing we need to do on Twitch for now. All we need to set up the streaming is to get a special code called a Stream Key. You can get this by accessing your dashboard at http://www.twitch.tv/<yourusername>/dashboard or from the main menu:
Click ‘Stream Key’ on the far right and then click Show Key to display your key. This is the only thing someone needs to broadcast to your channel – don’t show it to anyone you wouldn’t want streaming for you, and definitely don’t accidentally put the key on your stream! Copy the key into the clipboard and then go back to OBS.
We’re almost done. Click ‘Settings’ on the main OBS window. It’s on the right-hand side. When the Settings window appears, click on ‘Stream’ on the list of options on the left.
Congratulations! You’re set up and ready to stream. Hit ‘Start Streaming’ and your selected sources will be uploaded to Twitch and broadcast to the world. This has already been a really long post, so we’ll save the extras for another time. If you have any questions or comments, please leave them below and I’ll try and get back to you. Good luck!