Guide to Live Streaming on Linux

Introduction

I’ve been using Linux for the past 5 years as a daily driver and also streaming on Twitch. The process being different from Windows, I decided to write a little guide for it. I have not tried streaming on YouTube, Facebook or any other service, but I assume this guide will also be useful.

Streaming Software

On Windows you would either use StreamLabs OBS(SLOBS) or OBS Studio. On Linux, only OBS Studio is available as SLOBS is a proprietary software and for windows 10. I do not recommend using the package from the repo as it is outdated and that version has a lot of bugs that were fixed in later version and did not appear in the previous versions such as capture cards not working properly. The git version also has a browser so there is no longer a need to install obs-linuxbrowser-bin. The package won’t build if it is installed anyway. OBS on Linux also has no game capture, just use window capture to capture your game. Desktop capture seems to make proton games laggy, I would suggest to avoid it.

The dashboard/alert software by StreamLabs (not SLOBS, the old TwitchAlerts) also does not support Linux. I suggest simply opening a tab in your browser on your dashboard.

Streaming Hardware

This is the more tricky section. If you use hardware that requires proprietary drivers/software, it might not support Linux. Let’s start with capture cards, both Elgato and AverMedia do not have Linux support. Blackmagic Design does offer Linux support and the drivers can be found in the AUR, the package is called decklink. You do not need any additional plugin for OBS, once you install that package you will be able to add a blackmagic device source. I personally use a Blackmagic Intensity Pro 4K, but I used to have an Elgato HD60 Pro on Windows, but I got rid of it due to no Linux support. You will notice Blackmagic products are more expansive, but they are also higher quality.

Your microphone will work(most likely) on Linux, but if you use any proprietary software to adjust it, it might not be available. I use an AT2020 USB and have no issues, it works out of of the box with alsamixer and does not require any specific software. The Blue Yeti is also a great option without any software.

Webcams work out of the box on Linux. Same as other hardware, proprietary software might not be available. Webcams can easily be adjusted on OBS on both Windows and Linux. I never bothered installing my webcam software on Windows either as I only use it with OBS and all the options are in there.

Some of you might be using or considering an Elgato Streamdeck. Even if streamdecks require proprietary software by Elgato which is only available on Windows 10, they do work. I personally do not own one, but I have seen Linux creators use them for macros.

Conclusion

If you have any questions and suggestions, feel free to let me know. This is my first time writing a tech-related guide outside of work and school.

11 Likes

Thank you for taking the time to post this :yum:

1 Like

I see people asking about this all the time, so I thought I’d write about it.

2 Likes

Interesting guide, I am using Internet DJ Console (idjc) voor music streaming to shoutcast/icecast servers. But that is something different.

Maybe I can write a small guide how I have set that up, if people are interested. idjc using JACK audio system, unfortunately I am not that known with that yet.

@zangoku @MiVo

Thank you for this contribution, can I use this guide to add it on the community contrbutions on Discovery/ And in MiVo’s case, when that guide is done?

BTW, I will add your name as the contributor and writer of that article.

2 Likes

You are welcome to!

That could be very interesting indeed.

I think that should be a great addition for this guide :slight_smile:

Little demo:

  • Suppresses even claps (unless they overlay directly with voice on top) and all the noise except voice
  • Have a little bit of latency, but pretty acceptable
4 Likes

ha he got fuzzy hair now :yum:

1 Like

I edited the guide as the package obs-studio is no longer maintained and has bugs. Therefore I suggest switching to obs-studio-git which also does not require obs-linuxbrowser-bin.

2 Likes

I was planning to write a small manual for Internet DJ Console (IDJC), the latest version 0.8.17 is now about 4 years old. One of the required packages called python2-mutagen is now orphaned, and I will not be surprised that IDJC itself will be orphaned too in the near future, if that don’t get a new update.

An alternative can be Mixxx, I have not used that one much, the only downside is that Mixxx can not work correctly with USB microphones.

For those using the git version and using cef-minimal, you won’t be able to update it unless you switch to cef-minimal-obs-studio-browser. The versions mismatch and it does not let you. For those under pipewire, it works out of the box. The audio monitoring issue has also been fixed where it would just buzz if you moved the slider below 0.0db. Awesome work by the devs on the issue I reported.

I was unable to edit the post and add the info, but here it is. I will be keeping the guide up to date for as long as I stream.

In the meantime idjc 0.9.3 is out, but still gives some problems. With compiling it you can get the following:

checking for LIBAVCODEC… yes
checking for avcodec_decode_audio4 in -lavcodec… no
configure: error: “configure with --disable-libav or update ffmpeg/libav”

What you need to do is adding --disable-libav to ./configure . Only the filetypes are limited, you are not able to play all file formats. I don’t have the knowlegde yet to edit pkbuild, so I always download the source from the website of idjc, and not installing it from aur. This is what I can share at this moment, in the hope to help others.

1 Like