Confused on Steam Play and Proton? Be sure to check out our guide.
We do often include affiliate links to earn us some pennies. See more here.
Livestreaming is seriously a lot of fun and it's something I've wanted to do for a long time. Thanks to projects like FFmpeg and Libav you can also do that on Linux with relative ease, but little under a year ago I started my own project to make it even easier.

Castawesome is a free/libre open source GUI front-end to ffmpeg or avconv that allows you to quickly setup your own livestream on Twitch.tv, YouTube or Hitbox.tv to play games, talk or whatever you want to do in front of a live audience on the other side of the monitor. It's meant to offer a more user-friendly option to manually editing Bash scripts or inputting parameters to a long ffmpeg command in terminal. Of course it doesn't offer as wide feature set as Open Broadcaster Software or XSplit, but in it's current state it handles the basics like screen regions, framerates and bitrates and I am implementing new features as soon as I know what and how.

I've prepared a screencast for you that covers the installation and configuration of the software (BTW, sorry if I wasn't completely clear in the commentary, talking tech in English isn't exactly my strongest suit). If you want a bit clearer instructions (that might be a little bit out-dated by now) you can also check the README file.

YouTube Thumbnail
YouTube videos require cookies, you must accept their cookies to view. View cookie preferences.
Accept Cookies & Show   Direct Link

As Castawesome is fully 100% free and open source software available under GPLv3, you are welcome to hack, break and fix it if you want. If you encounter any bugs or you have feature suggestions etc. then please share them with me either down in the comments or in the discussions on the SourceForge page.

Note: If your livestream doesn't appear to load properly, then you might have to upgrade your avconv/ffmpeg installation. This is a known bug in at least avconv and it seems to happen especially on distros based on Ubuntu. Thanks to the Venn from LinuxGameCast I found this PPA that fixed the issue for me: https://launchpad.net/~jon-severinsson/+archive/ffmpeg.

Oh, one last thing. You might want to follow the official GOL Livestream page on Twitch. I am not exactly sure when we will livestream there, but if you guys are interested we might do something there someday.

Official GOL Livestream: http://www.twitch.tv/gamingonlinux
Castawesome's SourceForge page: http://sourceforge.net/projects/castawesome/ Article taken from GamingOnLinux.com.
0 Likes
About the author -
author picture
I'm a Linux gamer from Finland. I like reading, long walks on the beach, dying repeatedly in roguelikes and ripping and tearing in FPS games. I also sometimes write code and sometimes that includes hobbyist game development.
See more from me
The comments on this article are closed.
All posts need to follow our rules. For users logged in: please hit the Report Flag icon on any post that breaks the rules or contains illegal / harmful content. Guest readers can email us for any issues.
12 comments

Samsai Jan 6, 2014
That’s nice. I’m a programmer and not afraid of long command lines, but finding the good parameters for ffmpeg can take a lot of time. Can Castawesome record only a window? Record sound without Pulseaudio (with ALSA)? Save to disk instead of livestream? (Yeah I’m not really interested in livestreaming at this point!)
It can do both windowed and fullscreen video input and audio input through Pulseaudio, but sadly it supports only one audio device at a time, unless you use null sinks. Saving the recording to disk is something that can be done and I've actually done that few times to test the video quality, but it's not officially a feature, because tools like SimpleScreenRecorder do that a lot better. I might add that into the project for testing purposes though.
Lucki Jan 6, 2014
Maybe i don't get the point of your program, but as you already use Simple Screen Recorder to record this video, why don't you use it also for livestreaming? With OpenGL-recording you don't even need to set up a screen region.

SSR is already great for capturing video, so i think, Linux needs a better way to arrange the video with overlays, pause-screens, moving text for the background song, … - like xsplit.
Maybe you can hook up into SSR and focus your program on the streaming.
minj Jan 6, 2014
Is there anything to gain by using avconv rather than ffmpeg?
Samsai Jan 6, 2014
Maybe i don't get the point of your program, but as you already use Simple Screen Recorder to record this video, why don't you use it also for livestreaming? With OpenGL-recording you don't even need to set up a screen region.

SSR is already great for capturing video, so i think, Linux needs a better way to arrange the video with overlays, pause-screens, moving text for the background song, … - like xsplit.
Maybe you can hook up into SSR and focus your program on the streaming.
Well, SSR actually supports experimental livestreaming on its own, I just find the UI too clunky for that. Also, I started this project before I had any knowledge about high quality multimedia apps like SSR (back when I recorded all my videos with the horrible RecordMyDesktop) and since then I have been keeping this project alive while waiting for someone to make a better livestreaming application. I think I lack the skills to make anything similar to XSplit or OBS.

Is there anything to gain by using avconv rather than ffmpeg?
I don't think there is. As far as I know they are pretty much identical.
hardpenguin Jan 7, 2014
Why not just bundle all necessary libraries (FFmpeg etc) in proper versions along with Castawesome? :3
Magevania Jan 7, 2014
What about the badwidth requirements for these "broadcasting" tasks?
pwburkhardt Jan 7, 2014
Is there a way to record and save the videos witout streaming for a normal Lets Play?
Samsai Jan 7, 2014
Why not just bundle all necessary libraries (FFmpeg etc) in proper versions along with Castawesome? :3
I've thought about this, but for now I've been relying on software provided by the distribution for maintenance reasons.

What about the badwidth requirements for these "broadcasting" tasks?
It's completely dependent on the settings you use. I have 0.8 mbps upload speed and I can get a stable stream with 856x480 resolution (with 1280x720 input resolution), 400k bitrate and 25 FPS framerate. If your upload speed is less than 0.5 mbps or if you are on an unstable mobile connection then streaming might get a bit difficult.

Is there a way to record and save the videos witout streaming for a normal Lets Play?
Castawesome is meant to be a livestreaming tool and I don't think it would make a very good desktop/game recorder, but SimpleScreenRecorder works for that. I've made an article with a tutorial video about it some time ago here: http://www.gamingonlinux.com/articles/linux-game-recording-the-process-behind-creating-gol-casts.2421

I use that for the videos I post here on GOL and I've also been making LP videos on my personal channel using it for 5 months now. The videos are in Finnish, but they should give you an idea what the end result will be like: http://www.youtube.com/user/MrSamsai/videos
graafgatenkaas Feb 3, 2014
is it possible to stream audio from your computer and mic at the same time?
Danny Feb 21, 2014
just a little nitpick.. could you package the sources withing another folder in the tarball?
I prefer to use tar and.. well, my download folder is even worse of a mess now.
Samsai Feb 21, 2014
just a little nitpick.. could you package the sources withing another folder in the tarball?
I prefer to use tar and.. well, my download folder is even worse of a mess now.
Oh right, I didn't think of that. I'll package it again and update the Makefile to create better archives in the future. Sorry for the inconvenience, hopefully you can get your directory sorted.
jd Jun 6, 2014
My audio is all garbled, and crackly... what am i doing wrong... linux mint 17 all avconv up to date latest pulseaudio, monitoring built in analog stereo. forced resample in /etc/pulse/daemon.conf
; default-sample-format = s16le
; default-sample-rate = 44100
; alternate-sample-rate = 44100
While you're here, please consider supporting GamingOnLinux on:

Reward Tiers: Patreon. Plain Donations: PayPal.

This ensures all of our main content remains totally free for everyone! Patreon supporters can also remove all adverts and sponsors! Supporting us helps bring good, fresh content. Without your continued support, we simply could not continue!

You can find even more ways to support us on this dedicated page any time. If you already are, thank you!
The comments on this article are closed.