Blue-Recorder, a Simple Screen Recorder Written in Rust

https://github.com/xlmnxp/blue-recorder

A simple desktop recorder for Linux systems. Built using GTK4 and ffmpeg.

  • It supports recording audio and video on almost all Linux interfaces with support for Wayland display server on GNOME session.
  • The following formats are currently supported: mkv, avi, mp4, wmv, gif and nut.
  • You can stop the recording process easily by right-clicking the icon and choosing "Stop Record". Or middle-clicking the recording icon in the notifications area (but doesn't work on all interfaces).
  • You can choose the audio input source you want from the list.
  • You can also set the default values you want by simply changing them in the interface, and the program will save them for you for the next time you open it.

it based on Green Recorder and rewritten in Rust with improvements

Installation

Blue Recorder available as Snap and Flatpak package

Get it from the Snap Store Download on Flathub

Build from source

Blue Recorder depend in the following dependencies

ffmpeg
gtk
gdk
gio
gettext
libappindicator3
x11-utils
pulseaudio

install dependencies Ubuntu and Debian based distros

sudo apt install build-essential clang cargo libappindicator3-1 x11-utils gettext pulseaudio ffmpeg

the use Cargo to build it

git clone https://github.com/xlmnxp/blue-recorder
cd <Project Directory>
cargo build --release
cp -a data interfaces po target/release

then you will find the executable file at <Project Directory>/target/release/blue-recorder

License

GNU General Public License version 3
License Copyright: Copyright © 2007 Free Software Foundation, Inc.
License License: "Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed." (www.gnu.org/licenses/gpl-3.0.en.html).
License Contact: Free Software Foundation (fsf.org).
SPDX short identifier: GPL-3.0-only
Further resources...

read the license

{
"by": "alexzeitler",
"descendants": 51,
"id": 40247528,
"kids": [
40249228,
40250706,
40254787,
40258055,
40249954,
40251527,
40247737
],
"score": 96,
"time": 1714743450,
"title": "Blue-Recorder, a Simple Screen Recorder Written in Rust",
"type": "story",
"url": "https://github.com/xlmnxp/blue-recorder"
}
{
"author": "xlmnxp",
"date": null,
"description": "Simple Screen Recorder written in Rust based on Green Recorder - xlmnxp/blue-recorder",
"image": "https://opengraph.githubassets.com/2ddce3fe907221ce0092fa694575d0f4c41dd73dbabc4c4f1d938472cc7e8fc8/xlmnxp/blue-recorder",
"logo": "https://logo.clearbit.com/github.com",
"publisher": "GitHub",
"title": "GitHub - xlmnxp/blue-recorder: Simple Screen Recorder written in Rust based on Green Recorder",
"url": "https://github.com/xlmnxp/blue-recorder"
}
{
"url": "https://github.com/xlmnxp/blue-recorder",
"title": "GitHub - xlmnxp/blue-recorder: Simple Screen Recorder written in Rust based on Green Recorder",
"description": "A simple desktop recorder for Linux systems. Built using GTK4 and ffmpeg. It supports recording audio and video on almost all Linux interfaces with support for Wayland display server on GNOME session. The...",
"links": [
"https://github.com/xlmnxp/blue-recorder"
],
"image": "https://opengraph.githubassets.com/2ddce3fe907221ce0092fa694575d0f4c41dd73dbabc4c4f1d938472cc7e8fc8/xlmnxp/blue-recorder",
"content": "<div><article>\n<p><a target=\"_blank\" href=\"https://github.com/xlmnxp/blue-recorder/blob/master/screenshots/screenshot1.png\"><img src=\"https://github.com/xlmnxp/blue-recorder/raw/master/screenshots/screenshot1.png\" /></a></p>\n<p>A simple desktop recorder for Linux systems. Built using GTK4 and ffmpeg.</p>\n<ul>\n<li>It supports recording audio and video on almost all Linux interfaces with support for Wayland display server on GNOME session.</li>\n<li>The following formats are currently supported: mkv, avi, mp4, wmv, gif and nut.</li>\n<li>You can stop the recording process easily by right-clicking the icon and choosing \"Stop Record\". Or middle-clicking the recording icon in the notifications area (but doesn't work on all interfaces).</li>\n<li>You can choose the audio input source you want from the list.</li>\n<li>You can also set the default values you want by simply changing them in the interface, and the program will save them for you for the next time you open it.</li>\n</ul>\n<p>it based on <a target=\"_blank\" href=\"https://github.com/mhsabbagh/green-recorder\">Green Recorder</a> and rewritten in Rust with improvements</p>\n<p></p><h2>Installation</h2><a target=\"_blank\" href=\"https://github.com/xlmnxp/blue-recorder#installation\"></a><p></p>\n<p>Blue Recorder available as Snap and Flatpak package</p>\n<p><a target=\"_blank\" href=\"https://snapcraft.io/blue-recorder\"><img alt=\"Get it from the Snap Store\" src=\"https://camo.githubusercontent.com/2c59b03ae976fd0e65789f40dada889afea9b3c4e6d9ba473576c8ef56855434/68747470733a2f2f736e617063726166742e696f2f7374617469632f696d616765732f6261646765732f656e2f736e61702d73746f72652d626c61636b2e737667\" /></a> <a target=\"_blank\" href=\"https://flathub.org/apps/details/sa.sy.bluerecorder\"><img alt=\"Download on Flathub\" src=\"https://camo.githubusercontent.com/ffb1caef8cb3ac47f113e18237edb74f7d550f3a0a68fb24db9eca5062d7ce17/68747470733a2f2f666c61746875622e6f72672f6173736574732f6261646765732f666c61746875622d62616467652d656e2e706e67\" /></a></p>\n<p></p><h2>Build from source</h2><a target=\"_blank\" href=\"https://github.com/xlmnxp/blue-recorder#build-from-source\"></a><p></p>\n<p>Blue Recorder depend in the following dependencies</p>\n<div><pre><code>ffmpeg\ngtk\ngdk\ngio\ngettext\nlibappindicator3\nx11-utils\npulseaudio\n</code></pre></div>\n<p>install dependencies Ubuntu and Debian based distros</p>\n<div><pre><code>sudo apt install build-essential clang cargo libappindicator3-1 x11-utils gettext pulseaudio ffmpeg\n</code></pre></div>\n<p>the use <code>Cargo</code> to build it</p>\n<div><pre><code>git clone https://github.com/xlmnxp/blue-recorder\ncd &lt;Project Directory&gt;\ncargo build --release\ncp -a data interfaces po target/release\n</code></pre></div>\n<p>then you will find the executable file at\n<code>&lt;Project Directory&gt;/target/release/blue-recorder</code></p>\n<p></p><h2>License</h2><a target=\"_blank\" href=\"https://github.com/xlmnxp/blue-recorder#license\"></a><p></p>\n<div><pre><code>GNU General Public License version 3\nLicense Copyright: Copyright © 2007 Free Software Foundation, Inc.\nLicense License: \"Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed.\" (www.gnu.org/licenses/gpl-3.0.en.html).\nLicense Contact: Free Software Foundation (fsf.org).\nSPDX short identifier: GPL-3.0-only\nFurther resources...\n</code></pre></div>\n<p><a target=\"_blank\" href=\"https://github.com/xlmnxp/blue-recorder/blob/master/LICENSE.md\">read the license</a></p>\n</article></div>",
"author": "",
"favicon": "https://github.githubassets.com/favicons/favicon.svg",
"source": "github.com",
"published": "",
"ttr": 52,
"type": "object"
}