Kooha
Elegantly record your screen
Capture your screen in a straightforward and painless way without distractions.
Kooha is a simple screen recorder with a minimal interface. You can simply click the record button without having to configure a bunch of settings.
The main features of Kooha include the following:
- ๐ฅ Capture your screen without any hassle.
- ๐๏ธ Record your microphone, computer sounds, or both at the same time.
- ๐ผ Support for WebM, MP4, GIF, and MKV formats.
- ๐ Multiple sources selection.
- ๐ Optional hardware accelerated encoding
- ๐ฅ๏ธ Select a monitor or window to record.
- ๐ฒ Create a selection to capture certain area from your screen.
- โฒ๏ธ Set delay to prepare before you start recording.
- ๐ฑ๏ธ Hide or show mouse pointer.
- ๐พ Choose a saving location for your recording.
- โจ๏ธ Utilize helpful keyboard shortcuts.
๐ It Doesn't Work
There are many possibilities on why it may not be working. You may not have
the runtime requirements mentioned below installed, or your distro doesn't
support it. For troubleshooting purposes the screen cast compatibility page
of xdg-desktop-portal-wlr
wiki may be helpful in determining if your distro
has support for it out of the box. If your distro supports it, but it still
doesn't work, you can also check for the troubleshooting checklist.
โ๏ธ Hidden Configuration Options
Enable hardware accelerated encoding
This allows using an encoder that utilizes GPU for more efficient encoding. This
should work on AMD and Intel. Just run Kooha with the environment variable
GST_VAAPI_ALL_DRIVERS
set to 1. (e.g. GST_VAAPI_ALL_DRIVERS=1 flatpak run io.github.seadve.Kooha
or just GST_VAAPI_ALL_DRIVERS=1 kooha
in non-sandboxed installations.
Change frames per second to 60fps
You can copy and paste this to the terminal if you installed Kooha as a flatpak:
flatpak run --command=gsettings io.github.seadve.Kooha set io.github.seadve.Kooha video-frames 60
or gsettings set io.github.seadve.Kooha video-frames 60
if installed locally.
Take note that using other frames per second may cause flickering, depending on the performance of your device.
๐ Runtime Requirements
- pipewire
- gstreamer-plugin-pipewire
- xdg-desktop-portal
- xdg-desktop-portal-(e.g., gtk, kde, wlr)
๐๏ธ Building from source
GNOME Builder
GNOME Builder is the environment used for developing this application. It can use Flatpak manifests to create a consistent building and running environment cross-distro. Thus, it is highly recommended you use it.
- Download GNOME Builder.
- In Builder, click the "Clone Repository" button at the bottom, using
https://github.com/SeaDve/Kooha.git
as the URL. - Click the build button at the top once the project is loaded.
Meson
Prerequisites
The following packages are required to build Kooha. Note that these are not needed to be installed on your device when you use GNOME Builder because it takes care of the required dependencies.
- meson
- ninja
- appstream-glib
- python3
- python3-gobject
- gstreamer
- gtk4
- libadwaita
Build Instruction
git clone https://github.com/SeaDve/Kooha.git
cd Kooha
meson _build --prefix=/usr/local
ninja -C _build install
๐ Help translate Kooha
You can help Kooha translate into your native language. If you found any typos or think you can improve a translation, you can use the Weblate platform.
โ Support me and the project
Kooha is free and will always be for everyone to use. If you like the project and would like to support and fund it, you may donate through Liberapay.
๐ Acknowledgment
RecApp greatly inspired the creation of Kooha. And also, a warm thank you to all the contributors and translators from Weblate.