Simple screen recorder

Overview

Kooha
Kooha

Simple screen recorder

Download on Flathub

Description

Kooha is a simple screen recorder built with GTK. It allows you to record your screen and also audio from your microphone or desktop.

Roadmap

v 2.0

  • MP4 video format support
  • Rewrite VideoRecorder for freedesktop portal
  • Other desktop environment support

Other Modes of Installation

Distribution Package Maintainer
Arch Linux (AUR) kooha Mark Wagie

Building from source

GNOME Builder (Recommended)

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.

  1. Download GNOME Builder.
  2. In Builder, click the "Clone Repository" button at the bottom, using https://github.com/SeaDve/Kooha.git as the URL.
  3. Click the build button at the top once the project is loaded.

Manual with meson

git clone https://github.com/SeaDve/Kooha.git
cd Kooha
meson builddir --prefix=/usr/local
ninja -C builddir install

Credits

Developed by Dave Patrick and contributors.

Inspired from RecApp.

The chime used is under the Public Domain.

Donate

If you want to support development, consider donating via PayPal.

Comments
  • Support Sway WM

    Support Sway WM

    Nice screen recording program!

    Upon starting it I noticed it says "sway is not yet supported" (version 1.1.0). And I saw no mention of it in the issue tracker. So I figured I might create this issue as a feature request + tracking issue people can follow if there happens to be updates regarding support for Sway.

    Thank you.

    enhancement 
    opened by faern 76
  • Freezing on record in Ubuntu 21.04 and derivatives

    Freezing on record in Ubuntu 21.04 and derivatives

    The app completely freezes, creates the (empty) files, then (on multiple clicks) offers to wait or kill.

    I've tried all possible combinations of file format, microphone/sounds/cursor, window, selection full screen.

    NAME="Pop!_OS"
    VERSION="21.04"
    ID=pop
    ID_LIKE="ubuntu debian"
    PRETTY_NAME="Pop!_OS 21.04"
    VERSION_ID="21.04"
    HOME_URL="https://pop.system76.com"
    SUPPORT_URL="https://support.system76.com"
    BUG_REPORT_URL="https://github.com/pop-os/pop/issues"
    PRIVACY_POLICY_URL="https://system76.com/privacy"
    VERSION_CODENAME=hirsute
    UBUNTU_CODENAME=hirsute
    LOGO=distributor-logo-pop-os
    
    Linux weywot 5.13.0-7614-generic #14~1631647151~21.04~930e87c-Ubuntu SMP Fri Sep 17 00:24:58 UTC  x86_64 x86_64 x86_64 GNU/Linux
    [email protected]:/etc$ 
    

    Visible output on journald is only this (excuse if irrelevant):

    Sep 23 19:34:50 weywot systemd[4948]: Started Application launched by gnome-shell.
    Sep 23 19:34:50 weywot systemd[4948]: Started app-flatpak-io.github.seadve.Kooha-108325.scope.
    Sep 23 19:34:50 weywot systemd[4948]: app-gnome-io.github.seadve.Kooha-108325.scope: Succeeded.
    Sep 23 19:34:56 weywot xdg-desktop-por[15456]: Failed to create foreign window for XID 2036930432
    Sep 23 19:34:56 weywot xdg-desktop-por[15456]: Failed to associate portal window with parent window x11:79691780
    ...
    Sep 23 19:35:01 weywot dbus-daemon[4970]: [session uid=1000 pid=4970] Activating via systemd: service name='org.freedesktop.Tracker1' unit='tracker-store.service' requested by ':1.4' (uid=1000 pid=4963 comm="/usr/libexec/tracker-miner-fs " label="unconfined")
    Sep 23 19:35:01 weywot systemd[4948]: Starting Tracker metadata database store and lookup manager...
    Sep 23 19:35:01 weywot dbus-daemon[4970]: [session uid=1000 pid=4970] Successfully activated service 'org.freedesktop.Tracker1'
    Sep 23 19:35:01 weywot systemd[4948]: Started Tracker metadata database store and lookup manager.
    ...
    Sep 23 19:35:31 weywot tracker-store[108434]: OK
    Sep 23 19:35:31 weywot systemd[4948]: tracker-store.service: Succeeded.
    Sep 23 19:36:00 weywot systemd[4948]: app-flatpak-io.github.seadve.Kooha-108325.scope: Succeeded.
    

    Last line at "wait or kill" output.

    Open to suggestions. Thank you.

    bug 
    opened by spxak1 27
  • Distorted video on screen region recording

    Distorted video on screen region recording

    https://streamable.com/paafl1

    https://streamable.com/hrpobn

    WebM nor MKV file formats make a difference.

    Flatpak latest version. Running it on the command line outputs nothing, so I don't know where to get logs from.

    opened by juxuanu 24
  • App crashed when trying to change save location

    App crashed when trying to change save location

    System Info

    • Kooha version 2.0.0
    • Distro information and version Fedora 34 Workstation
    • Desktop Environment GNOME 40
    • Display Server Xorg
    • Flatpak? Yes.

    Describe the bug App crashed when trying to change save location:

    thread 'main' panicked at 'assertion failed: !ptr.is_null()', /run/build/kooha/vendor/glib/src/translate.rs:1508:9
    

    xdg-desktop-portal-wlr installed.

    bug 
    opened by tim77 19
  • Recording outputs 0kb file, no errors reported via UI

    Recording outputs 0kb file, no errors reported via UI

    Hi, running on arch + wayland, latest packages. There are no errors reported, it seems to run fine, but when I hit stop and go check the destination directory there is a file called 'Kooha-2021-03-21-22:34:26.webm' with size 0. running from the command line I get the following error:

    Error: gst-resource-error-quark: Resource not found. (3) ../gstreamer/plugins/elements/gstfilesrc.c(536): gst_file_src_start (): /GstPipeline:pipeline1/GstFileSrc:filesrc0:
    No such file "/tmp/tmpvideo.mkv"
    

    Doesn't matter if I select mkv or webm, result is the same. Installed from AUR

    Out of scope 
    opened by vitriol 18
  • Selection region is off on integer scaling

    Selection region is off on integer scaling

    Arch Linux, using Kooha 1.0.2, installed from AUR https://aur.archlinux.org/packages/kooha

    I have a Hi-DPI screen with 3840x2160 pixels, 290 dpi. GNOME display scaled to 200%.

    When I record a screen region, it seems that the real coordinates of the rectangle that defines the region are off by one half. Ie. when I define to record the region from (200,200) to (500,500), Kooha really records the region from (100,100) to (250,250).

    bug 
    opened by dmoebius 18
  • Fedora 34 / Gnome Kooha not working

    Fedora 34 / Gnome Kooha not working

    so, I'v recently switched to Fedora 34 to try out wayland and the new Gnome 40, I do some youtube content related to a browser game, and I was looking for a screen recorder for wayland and found Kooha, I installed it via flatpak, followed the install instructions from this github page, and used the command to set it to 60 FPs, when I try to record my screen Kooha completely freezes, then it tells me that Kooha is not responding, asks me to Force to quit or Wait, I opt for Wait, same thing happens after waiting 2-3 times, and then it starts recording my screen, but after it starts recording my screen, and I finish the recording, i click Stop recording, Kooha again freezes, then unfreezes, and continues to record my screen, I literally can't stop the recording ... anyone experiencing similar issues? would be great for any input/guidance on if im missing something or what i could be doing wrong, if you need some logs or anything relevant please ask, I will provide what ever info you need

    for starters, i'm on a AMDGPU (AMD Radeon R9 380 4GB Graphics card)

    bug Out of scope 
    opened by kronikpillow 17
  • Validating appstream file fails

    Validating appstream file fails

    Log of Meson test suite run on 2021-03-14T00:28:30.669786
    
    Inherited environment: SHELL=/bin/bash COLORTERM=truecolor SUDO_GID=0 TEXTDOMAINDIR=/usr/share/locale SUDO_COMMAND='/bin/bash -c chrootbuild kooha fs' SUDO_USER=root PWD=/build/kooha/src SOURCE_DATE_EPOCH=1615681708 LOGNAME=builduser CXXFLAGS='-march=x86-64 -mtune=generic -O2 -pipe -fno-plt' XAUTHORITY=/run/user/1000/gdm/Xauthority COMMAND_MODE=legacy LDFLAGS=-Wl,-O1,--sort-common,--as-needed,-z,relro,-z,now HOME=/build LANG=en_US.utf8 CPPFLAGS=-D_FORTIFY_SOURCE=2 MAKEFLAGS=-j17 TERM=xterm-256color USER=builduser DISPLAY=:1 SHLVL=2 LC_ALL=en_US.UTF-8 CHOST=x86_64-pc-linux-gnu PATH=/build/.local/bin:/build/.local/bin:/build/.local/bin:/home/yochanan/bin:/home/yochanan/.local/bin:/usr/local/bin:/usr/local/sbin:/usr/bin:/usr/lib/jvm/default/bin:/usr/bin/site_perl:/usr/bin/vendor_perl:/usr/bin/core_perl CFLAGS='-march=x86-64 -mtune=generic -O2 -pipe -fno-plt' SUDO_UID=0 MAIL=/var/mail/builduser OLDPWD=/build/kooha/src TEXTDOMAIN=pacman-scripts _=/usr/bin/meson 
    
    1/3 Validate desktop file   OK              0.00s
    00:28:30 MALLOC_PERTURB_=119 /usr/bin/desktop-file-validate data/io.github.seadve.Kooha.desktop
    ----------------------------------- output -----------------------------------
    ------------------------------------------------------------------------------
    
    2/3 Validate schema file    OK              0.00s
    00:28:30 MALLOC_PERTURB_=163 /usr/bin/glib-compile-schemas --strict --dry-run /build/kooha/src/Kooha/data
    ----------------------------------- output -----------------------------------
    ------------------------------------------------------------------------------
    
    3/3 Validate appstream file FAIL            1.51s   exit status 1
    00:28:30 MALLOC_PERTURB_=111 /usr/bin/appstream-util validate data/io.github.seadve.Kooha.appdata.xml
    ----------------------------------- output -----------------------------------
    stdout:
    data/io.github.seadve.Kooha.appdata.xml: FAILED:
    • attribute-invalid     : <screenshot> width (265) too small [https://raw.githubusercontent.com/SeaDve/Kooha/master/screenshots/Kooha-screenshot.png] minimum is 624px
    • attribute-invalid     : <screenshot> height too small [https://raw.githubusercontent.com/SeaDve/Kooha/master/screenshots/Kooha-screenshot.png] minimum is 351px
    • style-invalid         : <image> has vertical padding [https://raw.githubusercontent.com/SeaDve/Kooha/master/screenshots/Kooha-screenshot.png]
    • style-invalid         : <image> has horizontal padding [https://raw.githubusercontent.com/SeaDve/Kooha/master/screenshots/Kooha-screenshot.png]
    • attribute-invalid     : <screenshot> width (265) too small [https://raw.githubusercontent.com/SeaDve/Kooha/master/screenshots/Kooha-screenshot2.png] minimum is 624px
    • attribute-invalid     : <screenshot> height too small [https://raw.githubusercontent.com/SeaDve/Kooha/master/screenshots/Kooha-screenshot2.png] minimum is 351px
    • style-invalid         : <image> has vertical padding [https://raw.githubusercontent.com/SeaDve/Kooha/master/screenshots/Kooha-screenshot2.png]
    • style-invalid         : <image> has horizontal padding [https://raw.githubusercontent.com/SeaDve/Kooha/master/screenshots/Kooha-screenshot2.png]
    • attribute-invalid     : <screenshot> width (265) too small [https://raw.githubusercontent.com/SeaDve/Kooha/master/screenshots/Kooha-screenshot3.png] minimum is 624px
    • attribute-invalid     : <screenshot> height too small [https://raw.githubusercontent.com/SeaDve/Kooha/master/screenshots/Kooha-screenshot3.png] minimum is 351px
    • style-invalid         : <image> has vertical padding [https://raw.githubusercontent.com/SeaDve/Kooha/master/screenshots/Kooha-screenshot3.png]
    • style-invalid         : <image> has horizontal padding [https://raw.githubusercontent.com/SeaDve/Kooha/master/screenshots/Kooha-screenshot3.png]
    stderr:
    Validation of files failed
    ------------------------------------------------------------------------------
    
    
    Summary of Failures:
    
    3/3 Validate appstream file FAIL            1.51s   exit status 1
    
    
    Ok:                 2   
    Expected Fail:      0   
    Fail:               1   
    Unexpected Pass:    0   
    Skipped:            0   
    Timeout:            0
    
    enhancement 
    opened by yochananmarqos 16
  • Forever stuck in

    Forever stuck in "Flushing" until cancelled

    System Info io.github.seadve.Kooha 2.2.2 Flatpak: true Experimental: false

    Distribution: GNOME 43 (Flatpak runtime) Desktop Session: gnome Display Server: wayland

    GTK 4.8.1 Libadwaita 1.2.0 GStreamer 1.20.3 Pipewire 0.3.57

    Describe the bug When video recording is stopped, the app is forever stuck in the "Flushing" dialog with some disk activity around the video file. When cancelled, the file is deleted. The file is never completed correctly and is damaged.

    To Reproduce Just start recording.

    Expected behavior Should, um, record.

    Additional context This is the log after starting the recording and then cancelling it because it never finishes.

    2022-10-20T13:49:58.075179Z DEBUG kooha::recording: Pipeline changed state from `Paused` -> `Playing`
    2022-10-20T13:50:02.489243Z DEBUG kooha::recording: Sending eos event to pipeline
    2022-10-20T13:50:21.456422Z DEBUG kooha::recording: Cancelling recording
    0:00:30.901585560     2 0x7fb49c0cad20 WARN                audiosrc gstaudiosrc.c:227:audioringbuffer_thread_func:<pulsesrc0> error reading data -1 (reason: Success), skipping segment
    [I][20494.605920] pw.stream    | [        stream.c:  587 impl_send_command()] 0x562fd9b66720: command Spa:Pod:Object:Command:Node:Pause
    [I][20494.605979] pw.node      | [     impl-node.c:  379 node_update_state()] (kooha-0) running -> idle
    [I][20494.609904] pw.stream    | [        stream.c:  587 impl_send_command()] 0x562fd9b66720: command Spa:Pod:Object:Command:Node:Suspend
    [I][20494.609926] pw.node      | [     impl-node.c:  379 node_update_state()] (kooha-0) idle -> suspended
    [I][20494.609956] pw.node      | [     impl-node.c: 1814 pw_impl_node_destroy()] (kooha-0) destroy
    2022-10-20T13:50:21.462566Z DEBUG kooha::window: Cancelled recording
    0:00:30.907501646     2 0x562fd87b5690 ERROR                GST_BUS gstbus.c:1075:gst_bus_remove_watch:<bus9> no bus watch was present
    2022-10-20T13:50:21.480429Z DEBUG kooha::screencast_session: Closed screencast session response=()
    
    opened by mystrdat 15
  • audio is recorded but cuts out intermittedly

    audio is recorded but cuts out intermittedly

    having a weird problem here: any recording of audio from the microphone will go on-and-off-and-on-and-off once a second here, it's not usable.

    have build libadwaita and Kooha from git master yesterday, on up-to-date Fedora 34/Gnome 40.

    the funny thing is that yesterday this didn't happen, but today it does, even in the shortest of recordings.

    3 other applications record audio without this problem: Sound Recorder, Audacity and OBS Studio.

    but it's quite possible this is a bug in some lower-level component.

    bug 
    opened by mistmist 14
  • No microphone source found

    No microphone source found

    System Info

    • io.github.seadve.Kooha 2.1.0

    • Flatpak: true

    • Distribution: GNOME 42 (Flatpak runtime)

    • Desktop Session: ubuntu

    • Display Server: wayland

    • GTK 4.6.6

    • Libadwaita 1.2.0

    • GStreamer 1.18.6

    Describe the bug I had it working well just one-four days ago. Some updates has been installed just a few moments ago and I can't use the application now due to the missing microphone error: No microphone source found

    Caused by: Failed to find a default device

    ..however, I do have the microphone connected, all works well in the system itself. For example, I have just recorded the sound with a random software - Sound Recorder 42.0 by The GNOME Project.

    To Reproduce Steps to reproduce the behavior:

    1. Open Kooha
    2. Select "Capture a Monitor or Windows", "Record Computer Sounds", "Record from Microphone", "Show Pointer"
    3. Click on "Record". The popup window appears with "Select monitor to share with Kooha" option (I do have two options), I select "Built-in dislpay", and click "Share"
    4. The error pops up:

    No microphone source found

    Caused by: Failed to find a default device

    Expected behavior I would expect this error to not be in place because the sound works well on other applications. I assume it is related to the newest version of the Kooha or some very recent (a day-two of age) updates from Ubuntu 22.04.1 LTS

    Screenshots

    image

    image

    image

    image

    Additional context

    [email protected]:~$ RUST_BACKTRACE=1 RUST_LOG=kooha=debug GST_DEBUG=3 PIPEWIRE_DEBUG=3 flatpak run io.github.seadve.Kooha
    2022-08-20T21:00:08.587113Z  INFO kooha::application: Kooha (io.github.seadve.Kooha)
    2022-08-20T21:00:08.587126Z  INFO kooha::application: Version: 2.1.0 ()
    2022-08-20T21:00:08.587128Z  INFO kooha::application: Datadir: /app/share/kooha
    2022-08-20T21:00:17.249371Z DEBUG kooha::screencast_session: Waiting request response for method `CreateSession`
    2022-08-20T21:00:17.249688Z DEBUG kooha::screencast_session: Request response received for method `CreateSession`
    2022-08-20T21:00:17.249705Z DEBUG kooha::screencast_session: Created screencast session response=VariantDict({"session_handle": Variant { ptr: 0x7fb9d40018f0, type: VariantTy { inner: "s" }, value: "'/org/freedesktop/portal/desktop/session/1_262/kooha_0'" }})
    2022-08-20T21:00:17.249721Z DEBUG kooha::recording: ScreenCast portal version: Ok(4)
    2022-08-20T21:00:17.249725Z DEBUG kooha::recording: Available cursor modes: Ok(HIDDEN | EMBEDDED | METADATA)
    2022-08-20T21:00:17.249727Z DEBUG kooha::recording: Available source types: Ok(MONITOR | WINDOW)
    2022-08-20T21:00:17.250870Z DEBUG kooha::screencast_session: Waiting request response for method `SelectSources`
    2022-08-20T21:00:17.251106Z DEBUG kooha::screencast_session: Request response received for method `SelectSources`
    2022-08-20T21:00:17.251131Z DEBUG kooha::screencast_session: Selected sources response=VariantDict({})
    2022-08-20T21:00:17.252404Z DEBUG kooha::screencast_session: Waiting request response for method `Start`
    2022-08-20T21:00:22.737849Z DEBUG kooha::screencast_session: Request response received for method `Start`
    2022-08-20T21:00:22.737885Z DEBUG kooha::screencast_session: Started screencast session response=VariantDict({"streams": Variant { ptr: 0x7fb9c4001f60, type: VariantTy { inner: "a(ua{sv})" }, value: "[(uint32 50, {'id': <'0'>, 'source_type': <uint32 1>, 'position': <(0, 0)>, 'size': <(1920, 1080)>})]" }})
    2022-08-20T21:00:22.739431Z DEBUG kooha::screencast_session: Opened pipe wire remote response=Variant { ptr: 0x7fb9e0012870, type: VariantTy { inner: "(h)" }, value: "(handle 0,)" } fd_list=[11]
    [I][01599.559000][      pipewire.c:  571 pw_init()] version 0.3.35
    [I][01599.562036][          conf.c:  326 conf_load()] config 0x7fb9d8025ac0: loading config '/usr/share/pipewire/client.conf'
    [I][01599.562063][       context.c:  384 pw_context_new()] context 0x7fb9d8025600: parsed context.properties section
    [I][01599.562284][       context.c:  478 pw_context_new()] context 0x7fb9d8025600: parsed 2 context.spa-libs items
    [I][01599.562446][          conf.c:  419 load_module()] config 0x7fb9d8025600: loaded module libpipewire-module-protocol-native
    [I][01599.562652][          conf.c:  419 load_module()] config 0x7fb9d8025600: loaded module libpipewire-module-client-node
    [I][01599.562723][          conf.c:  419 load_module()] config 0x7fb9d8025600: loaded module libpipewire-module-client-device
    [I][01599.562805][          conf.c:  419 load_module()] config 0x7fb9d8025600: loaded module libpipewire-module-adapter
    [I][01599.562891][          conf.c:  419 load_module()] config 0x7fb9d8025600: loaded module libpipewire-module-metadata
    [I][01599.563046][          conf.c:  419 load_module()] config 0x7fb9d8025600: loaded module libpipewire-module-session-manager
    [I][01599.563054][       context.c:  482 pw_context_new()] context 0x7fb9d8025600: parsed 6 context.modules items
    [I][01599.563059][       context.c:  487 pw_context_new()] context 0x7fb9d8025600: parsed 0 context.objects items
    [I][01599.563063][       context.c:  490 pw_context_new()] context 0x7fb9d8025600: parsed 0 context.exec items
    [I][01599.563086][       context.c:  244 context_set_freewheel()] context 0x7fb9d8025600: exit freewheel
    [I][01599.563093][       context.c:  248 context_set_freewheel()] context 0x7fb9d8025600: freewheel error:Operation not supported
    [I][01599.563099][ impl-metadata.c:  196 impl_set_property()] metadata 0x7fb9d81883a0: add id:0 key:log.level type: value:0
    [I][01599.563105][ impl-metadata.c:  196 impl_set_property()] metadata 0x7fb9d81883a0: add id:0 key:clock.min-quantum type: value:32
    [I][01599.563110][ impl-metadata.c:  196 impl_set_property()] metadata 0x7fb9d81883a0: add id:0 key:clock.max-quantum type: value:8192
    [I][01599.563115][ impl-metadata.c:  196 impl_set_property()] metadata 0x7fb9d81883a0: add id:0 key:clock.force-quantum type: value:0
    [I][01599.563119][ impl-metadata.c:  196 impl_set_property()] metadata 0x7fb9d81883a0: add id:0 key:clock.force-rate type: value:0
    [I][01599.563168][  local-socket.c:   88 try_connect()] connecting to 'pipewire-0' runtime_dir:/run/user/1000
    [I][01599.563181][  local-socket.c:   88 try_connect()] connecting to 'pipewire-0' runtime_dir:/run/pipewire
    0:00:14.170800381     2 0x55f8116dd580 ERROR               pipewire gstpipewiredeviceprovider.c:613:gst_pipewire_device_provider_start:<pipewiredeviceprovider0> Failed to connect
    0:00:14.394183637     2 0x55f8116dd580 WARN                    alsa pcm_hw.c:1716:snd_pcm_hw_open: alsalib error: open '/dev/snd/pcmC2D1c' failed (-22): Invalid argument
    0:00:14.394230506     2 0x55f8116dd580 ERROR                   alsa gstalsadeviceprovider.c:57:add_device:<alsadeviceprovider0> Could not open device hw:2,1 for inspection!
    0:00:14.423768348     2 0x55f8116dd580 WARN                    alsa conf.c:5476:parse_args: alsalib error: Parameter DEV must be an integer
    0:00:14.423825096     2 0x55f8116dd580 WARN                    alsa conf.c:5583:snd_config_expand: alsalib error: Parse arguments error: Invalid argument
    0:00:14.423840613     2 0x55f8116dd580 WARN                    alsa pcm.c:2660:snd_pcm_open_noupdate: alsalib error: Unknown PCM hw:0,3:{AES0 0x02 AES1 0x82 AES2 0x00 AES3 0x02}
    0:00:14.424419441     2 0x55f8116dd580 WARN                    alsa conf.c:5476:parse_args: alsalib error: Parameter DEV must be an integer
    0:00:14.424441158     2 0x55f8116dd580 WARN                    alsa conf.c:5583:snd_config_expand: alsalib error: Parse arguments error: Invalid argument
    0:00:14.424454589     2 0x55f8116dd580 WARN                    alsa pcm.c:2660:snd_pcm_open_noupdate: alsalib error: Unknown PCM hw:0,7:{AES0 0x02 AES1 0x82 AES2 0x00 AES3 0x02}
    0:00:14.424723490     2 0x55f8116dd580 WARN                    alsa conf.c:5476:parse_args: alsalib error: Parameter DEV must be an integer
    0:00:14.424739756     2 0x55f8116dd580 WARN                    alsa conf.c:5583:snd_config_expand: alsalib error: Parse arguments error: Invalid argument
    0:00:14.424751853     2 0x55f8116dd580 WARN                    alsa pcm.c:2660:snd_pcm_open_noupdate: alsalib error: Unknown PCM hw:0,8:{AES0 0x02 AES1 0x82 AES2 0x00 AES3 0x02}
    0:00:14.424998665     2 0x55f8116dd580 WARN                    alsa conf.c:5476:parse_args: alsalib error: Parameter DEV must be an integer
    0:00:14.425019081     2 0x55f8116dd580 WARN                    alsa conf.c:5583:snd_config_expand: alsalib error: Parse arguments error: Invalid argument
    0:00:14.425031223     2 0x55f8116dd580 WARN                    alsa pcm.c:2660:snd_pcm_open_noupdate: alsalib error: Unknown PCM hw:0,9:{AES0 0x02 AES1 0x82 AES2 0x00 AES3 0x02}
    0:00:14.425265519     2 0x55f8116dd580 WARN                    alsa conf.c:5476:parse_args: alsalib error: Parameter DEV must be an integer
    0:00:14.425281174     2 0x55f8116dd580 WARN                    alsa conf.c:5583:snd_config_expand: alsalib error: Parse arguments error: Invalid argument
    0:00:14.425293805     2 0x55f8116dd580 WARN                    alsa pcm.c:2660:snd_pcm_open_noupdate: alsalib error: Unknown PCM hw:0,10:{AES0 0x02 AES1 0x82 AES2 0x00 AES3 0x02}
    0:00:14.425519293     2 0x55f8116dd580 WARN                    alsa conf.c:5476:parse_args: alsalib error: Parameter DEV must be an integer
    0:00:14.425534060     2 0x55f8116dd580 WARN                    alsa conf.c:5583:snd_config_expand: alsalib error: Parse arguments error: Invalid argument
    0:00:14.425543257     2 0x55f8116dd580 WARN                    alsa pcm.c:2660:snd_pcm_open_noupdate: alsalib error: Unknown PCM hw:0,11:{AES0 0x02 AES1 0x82 AES2 0x00 AES3 0x02}
    0:00:14.425753959     2 0x55f8116dd580 WARN                    alsa conf.c:5476:parse_args: alsalib error: Parameter DEV must be an integer
    0:00:14.425769130     2 0x55f8116dd580 WARN                    alsa conf.c:5583:snd_config_expand: alsalib error: Parse arguments error: Invalid argument
    0:00:14.425778163     2 0x55f8116dd580 WARN                    alsa pcm.c:2660:snd_pcm_open_noupdate: alsalib error: Unknown PCM hw:0,12:{AES0 0x02 AES1 0x82 AES2 0x00 AES3 0x02}
    0:00:14.426058551     2 0x55f8116dd580 WARN                    alsa conf.c:5476:parse_args: alsalib error: Parameter DEV must be an integer
    0:00:14.426073849     2 0x55f8116dd580 WARN                    alsa conf.c:5583:snd_config_expand: alsalib error: Parse arguments error: Invalid argument
    0:00:14.426083626     2 0x55f8116dd580 WARN                    alsa pcm.c:2660:snd_pcm_open_noupdate: alsalib error: Unknown PCM hw:1,0:{AES0 0x02 AES1 0x82 AES2 0x00 AES3 0x02}
    0:00:14.426386320     2 0x55f8116dd580 WARN                    alsa conf.c:5476:parse_args: alsalib error: Parameter DEV must be an integer
    0:00:14.426401991     2 0x55f8116dd580 WARN                    alsa conf.c:5583:snd_config_expand: alsalib error: Parse arguments error: Invalid argument
    0:00:14.426411240     2 0x55f8116dd580 WARN                    alsa pcm.c:2660:snd_pcm_open_noupdate: alsalib error: Unknown PCM hw:2,0:{AES0 0x02 AES1 0x82 AES2 0x00 AES3 0x02}
    0:00:14.426715362     2 0x55f8116dd580 WARN                    alsa pcm_hw.c:1716:snd_pcm_hw_open: alsalib error: open '/dev/snd/pcmC2D1p' failed (-22): Invalid argument
    0:00:14.426747580     2 0x55f8116dd580 ERROR                   alsa gstalsadeviceprovider.c:57:add_device:<alsadeviceprovider0> Could not open device hw:2,1 for inspection!
    0:00:14.443044877     2 0x55f8116dd580 WARN                    alsa conf.c:5476:parse_args: alsalib error: Parameter DEV must be an integer
    0:00:14.443054436     2 0x55f8116dd580 WARN                    alsa conf.c:5583:snd_config_expand: alsalib error: Parse arguments error: Invalid argument
    0:00:14.443057654     2 0x55f8116dd580 WARN                    alsa pcm.c:2660:snd_pcm_open_noupdate: alsalib error: Unknown PCM hw:2,3:{AES0 0x02 AES1 0x82 AES2 0x00 AES3 0x02}
    0:00:14.443221689     2 0x55f8116dd580 WARN                    alsa conf.c:5476:parse_args: alsalib error: Parameter DEV must be an integer
    0:00:14.443231342     2 0x55f8116dd580 WARN                    alsa conf.c:5583:snd_config_expand: alsalib error: Parse arguments error: Invalid argument
    0:00:14.443236411     2 0x55f8116dd580 WARN                    alsa pcm.c:2660:snd_pcm_open_noupdate: alsalib error: Unknown PCM hw:2,4:{AES0 0x02 AES1 0x82 AES2 0x00 AES3 0x02}
    0:00:14.443375564     2 0x55f8116dd580 WARN                    alsa conf.c:5476:parse_args: alsalib error: Parameter DEV must be an integer
    0:00:14.443382121     2 0x55f8116dd580 WARN                    alsa conf.c:5583:snd_config_expand: alsalib error: Parse arguments error: Invalid argument
    0:00:14.443386286     2 0x55f8116dd580 WARN                    alsa pcm.c:2660:snd_pcm_open_noupdate: alsalib error: Unknown PCM hw:2,5:{AES0 0x02 AES1 0x82 AES2 0x00 AES3 0x02}
    2022-08-20T21:00:23.022702Z DEBUG kooha::audio_device: Finding device name for class `Source`
    2022-08-20T21:00:23.022719Z DEBUG kooha::audio_device: Skipping device `pulsedevice0` as it is not the default
    2022-08-20T21:00:23.022738Z  WARN kooha::audio_device: Skipping device `pulsedevice1` as it has no node.name property. FieldNotFound { name: "node.name" }
    2022-08-20T21:00:23.022746Z DEBUG kooha::audio_device: Skipping device `pulsedevice2` as it is not the default
    2022-08-20T21:00:23.022752Z DEBUG kooha::audio_device: Skipping device `pulsedevice3` as it is not the default
    2022-08-20T21:00:23.022758Z DEBUG kooha::audio_device: Skipping device `pulsedevice4` as it is not the default
    2022-08-20T21:00:23.022763Z DEBUG kooha::audio_device: Skipping device `pulsedevice5` as it is not the default
    2022-08-20T21:00:23.022769Z DEBUG kooha::audio_device: Skipping device `pulsedevice6` as it is not the default
    2022-08-20T21:00:23.022775Z DEBUG kooha::audio_device: Skipping device `pulsedevice7` as it is not the default
    2022-08-20T21:00:23.022903Z ERROR kooha::window: No microphone source found
    
    Caused by:
        Failed to find a default device
    2022-08-20T21:00:23.039949Z DEBUG kooha::screencast_session: Closed screencast session response=Variant { ptr: 0x7fb9c4002290, type: VariantTy { inner: "()" }, value: "()" }
    [email protected]:~$ 
    
    

    p.s. Sorry if that's not Kooha's bug. At the moment it's very hard to say... Either way, other sound-related software seems to be working with no issues for now. Thanks for looking into the case when possible! Great tool!

    bug 
    opened by PauliusMacernis 13
  • Screen selection shows the same description for multiple monitors.

    Screen selection shows the same description for multiple monitors.

    System Info

    • io.github.seadve.Kooha 2.2.3

    • Flatpak: true

    • Experimental: false

    • Distribution: GNOME 43 (Flatpak runtime)

    • Desktop Session: pop

    • Display Server: x11

    • Resolution: 1920x1080, 1440x2560, 2560x1440

    • GTK 4.8.3

    • Libadwaita 1.2.0

    • GStreamer 1.20.4

    • Pipewire 0.3.59

    Describe the bug I have three monitors from the same manufacturer and are the same size. Each have a different orientation/resolution. However, the description in the screen selection shows the same text for each one.

    To Reproduce Steps to reproduce the behavior:

    1. Click record

    Expected behavior Being this is the fist time using the application, I was expecting it to show the order of the monitors, the resolution of each, or some other descriptor.

    Screenshots Screenshot_2022-12-31_10-00

    opened by bgoewert 1
  • Record doesn't work on ArchLinux / Wayland

    Record doesn't work on ArchLinux / Wayland

    System Info Archlinux Sway Window Manager

    Describe the bug Unable to begin a session.

    To Reproduce Steps to reproduce the behavior:

    1. Click Record

    Expected behavior A clear and concise description of what you expected to happen.

    Screenshots

    Failed to start recording
    
    Caused by:
        0: Check out <a href="https://github.com/SeaDve/Kooha#-it-doesnt-work">It Doesn't Work page</a> for help.
        1: Failed to create ScreencastSession
        2: Failed to create session
        3: Interaction was ended in some other way with response Variant { ptr: 0x563f47d40180, type: VariantTy { inner: "a{sv}" }, value: "@a{sv} {}" }
    

    Additional context

    $ RUST_BACKTRACE=1 RUST_LOG=kooha=debug GST_DEBUG=3 PIPEWIRE_DEBUG=3`
    (e.g., `RUST_BACKTRACE=1 RUST_LOG=kooha=debug GST_DEBUG=3 PIPEWIRE_DEBUG=3 kooha
    -bash: command substitution: line 3: syntax error: unexpected end of file
    2022-12-28T20:43:49.525137Z  INFO kooha::application: Kooha (io.github.seadve.Kooha)
    2022-12-28T20:43:49.525156Z  INFO kooha::application: Version: 2.2.3 ()
    2022-12-28T20:43:49.525161Z  INFO kooha::application: Datadir: /usr/share/kooha
    2022-12-28T20:43:51.996990Z DEBUG kooha::screencast_session: Waiting request response for method `CreateSession`
    2022-12-28T20:43:51.997427Z DEBUG kooha::screencast_session: Request response received for method `CreateSession`
    2022-12-28T20:43:51.997626Z ERROR kooha::window: Failed to start recording
    
    Caused by:
        0: Check out <a href="https://github.com/SeaDve/Kooha#-it-doesnt-work">It Doesn't Work page</a> for help.
        1: Failed to create ScreencastSession
        2: Failed to create session
        3: Interaction was ended in some other way with response Variant { ptr: 0x7f10e8002940, type: VariantTy { inner: "a{sv}" }, value: "@a{sv} {}" }
    
    opened by GreenLunar 1
  • [Feature] Capture a program and its audio

    [Feature] Capture a program and its audio

    ~~Cature a specific program.~~

    ~~User may select a program from menu (of active programs) or select an active program.~~

    ~~Kooha will~~

    Record selected program and its audio. Only the audio source of the program. Ignore all other audio streams of other sources.

    ~~Preferably, if feasible, Kooha will lock the window size and location of the selected program and will also lock placement on top of all windows.~~

    ~~I'm not sure about it though.~~ ~~Sound complicated.~~

    ~~What do you think?~~

    opened by GreenLunar 0
  • the recording is erased

    the recording is erased

    • io.github.seadve.Kooha 2.2.2

    • Flatpak: true

    • Experimental: false

    • Distribution: GNOME 43 (Flatpak runtime)

    • Desktop Session: gnome-xorg

    • Display Server: x11

    • GTK 4.8.2

    • Libadwaita 1.2.0

    • GStreamer 1.20.3

    • Pipewire 0.3.57

    Describe the bug after recording the recording is deleted by itself, I have used Wayland and Xorg in both cases the same thing happens, I am using fedora 37 with Gnome-shell 43.1

    Captura desde 2022-11-28 07-10-02 Captura desde 2022-11-28 07-10-19 Captura desde 2022-11-28 07-10-34

    (e.g., RUST_BACKTRACE=1 RUST_LOG=kooha=debug GST_DEBUG=3 PIPEWIRE_DEBUG=3 flatpak run io.github.seadve.Kooha).

    opened by jenrrysd 1
  • Recording doesn't start, flatpak run exits with code 139

    Recording doesn't start, flatpak run exits with code 139

    System Info

    - io.github.seadve.Kooha 2.2.2
    - Flatpak: true
    - Experimental: false
    
    - Distribution: GNOME 43 (Flatpak runtime)
    - Desktop Session: ubuntu
    - Display Server: wayland
    
    - GTK 4.8.2
    - Libadwaita 1.2.0
    - GStreamer 1.20.3
    - Pipewire 0.3.57
    

    Describe the bug Once I press “Record” and then “Share”, nothing happens. The flatpak run command exits with exit code 139.

    To Reproduce Steps to reproduce the behavior:

    1. env RUST_BACKTRACE=1 RUST_LOG=kooha=debug GST_DEBUG=3 PIPEWIRE_DEBUG=3 flatpak run io.github.seadve.Kooha
      
    2. Click on “Record”.

    3. Click on “Share”.

    Expected behavior Recording starts.

    Additional context

    2022-11-24T15:20:10.108968Z  INFO kooha::application: Kooha (io.github.seadve.Kooha)
    2022-11-24T15:20:10.108987Z  INFO kooha::application: Version: 2.2.2 ()
    2022-11-24T15:20:10.108990Z  INFO kooha::application: Datadir: /app/share/kooha
    2022-11-24T15:22:11.056604Z DEBUG kooha::screencast_session: Waiting request response for method `CreateSession`
    2022-11-24T15:22:11.057287Z DEBUG kooha::screencast_session: Request response received for method `CreateSession`
    2022-11-24T15:22:11.057323Z DEBUG kooha::screencast_session: Created screencast session response={'session_handle': <'/org/freedesktop/portal/desktop/session/1_403/kooha_0'>}
    2022-11-24T15:22:11.057357Z DEBUG kooha::recording: ScreenCast portal version: Ok(4)
    2022-11-24T15:22:11.057368Z DEBUG kooha::recording: Available cursor modes: Ok(HIDDEN | EMBEDDED | METADATA)
    2022-11-24T15:22:11.057379Z DEBUG kooha::recording: Available source types: Ok(MONITOR | WINDOW)
    2022-11-24T15:22:11.065662Z DEBUG kooha::screencast_session: Waiting request response for method `SelectSources`
    2022-11-24T15:22:11.066778Z DEBUG kooha::screencast_session: Request response received for method `SelectSources`
    2022-11-24T15:22:11.066817Z DEBUG kooha::screencast_session: Selected sources [email protected]{sv} {}
    2022-11-24T15:22:11.070899Z DEBUG kooha::screencast_session: Waiting request response for method `Start`
    2022-11-24T15:22:11.086634Z DEBUG kooha::screencast_session: Request response received for method `Start`
    2022-11-24T15:22:11.086705Z DEBUG kooha::screencast_session: Started screencast session response={'restore_token': <'23e2a572-fda9-488b-b3a5-9f01cd58c237'>, 'streams': <[(uint32 43, {'id': <'0'>, 'source_type': <uint32 1>, 'position': <(0, 0)>, 'size': <(2560, 1440)>})]>}
    2022-11-24T15:22:11.088731Z DEBUG kooha::screencast_session: Opened pipe wire remote response=(handle 0,) fd_list=[10]
    [I][09661.342616] pw.context   | [      pipewire.c:  662 pw_init()] version 0.3.57
    [I][09661.345368] pw.conf      | [          conf.c:  423 conf_load()] 0x55f6cd79c1a0: loaded config '/usr/share/pipewire/client.conf' with 5 items
    [I][09661.345441] pw.conf      | [          conf.c:  881 pw_context_conf_section_for_each()] handle config '/usr/share/pipewire/client.conf' section 'context.properties'
    [I][09661.345475] pw.context   | [       context.c:  260 pw_context_new()] 0x55f6cd79d280: parsed 1 context.properties items
    [I][09661.346014] pw.conf      | [          conf.c:  881 pw_context_conf_section_for_each()] handle config '/usr/share/pipewire/client.conf' section 'context.spa-libs'
    [I][09661.346075] pw.context   | [       context.c:  361 pw_context_new()] 0x55f6cd79d280: parsed 2 context.spa-libs items
    [I][09661.346098] pw.conf      | [          conf.c:  881 pw_context_conf_section_for_each()] handle config '/usr/share/pipewire/client.conf' section 'context.modules'
    [I][09661.346541] pw.conf      | [          conf.c:  602 load_module()] 0x55f6cd79d280: loaded module libpipewire-module-protocol-native
    [I][09661.346936] pw.conf      | [          conf.c:  602 load_module()] 0x55f6cd79d280: loaded module libpipewire-module-client-node
    [I][09661.347141] pw.conf      | [          conf.c:  602 load_module()] 0x55f6cd79d280: loaded module libpipewire-module-client-device
    [I][09661.347374] pw.conf      | [          conf.c:  602 load_module()] 0x55f6cd79d280: loaded module libpipewire-module-adapter
    [I][09661.347598] pw.conf      | [          conf.c:  602 load_module()] 0x55f6cd79d280: loaded module libpipewire-module-metadata
    [I][09661.347844] pw.conf      | [          conf.c:  602 load_module()] 0x55f6cd79d280: loaded module libpipewire-module-session-manager
    [I][09661.347867] pw.context   | [       context.c:  365 pw_context_new()] 0x55f6cd79d280: parsed 6 context.modules items
    [I][09661.347882] pw.context   | [       context.c:  370 pw_context_new()] 0x55f6cd79d280: parsed 0 context.objects items
    [I][09661.347896] pw.context   | [       context.c:  373 pw_context_new()] 0x55f6cd79d280: parsed 0 context.exec items
    [I][09661.347962] pw.metadata  | [ impl-metadata.c:  205 impl_set_property()] 0x55f6cd7b1b20: add id:0 key:log.level type: value:0
    [I][09661.347981] pw.metadata  | [ impl-metadata.c:  205 impl_set_property()] 0x55f6cd7b1b20: add id:0 key:clock.rate type: value:48000
    [I][09661.347997] pw.metadata  | [ impl-metadata.c:  205 impl_set_property()] 0x55f6cd7b1b20: add id:0 key:clock.allowed-rates type: value:[ 48000 ]
    [I][09661.348013] pw.metadata  | [ impl-metadata.c:  205 impl_set_property()] 0x55f6cd7b1b20: add id:0 key:clock.quantum type: value:1024
    [I][09661.348028] pw.metadata  | [ impl-metadata.c:  205 impl_set_property()] 0x55f6cd7b1b20: add id:0 key:clock.min-quantum type: value:32
    [I][09661.348044] pw.metadata  | [ impl-metadata.c:  205 impl_set_property()] 0x55f6cd7b1b20: add id:0 key:clock.max-quantum type: value:2048
    [I][09661.348058] pw.metadata  | [ impl-metadata.c:  205 impl_set_property()] 0x55f6cd7b1b20: add id:0 key:clock.force-quantum type: value:0
    [I][09661.348072] pw.metadata  | [ impl-metadata.c:  205 impl_set_property()] 0x55f6cd7b1b20: add id:0 key:clock.force-rate type: value:0
    [I][09661.348223] pw.conf      | [          conf.c:  881 pw_context_conf_section_for_each()] handle config '/usr/share/pipewire/client.conf' section 'stream.properties'
    0:02:01.007158887     2 0x55f6cc956e40 FIXME                default gstutils.c:4025:gst_pad_create_stream_id_internal:<pipewiresrc0:src> Creating random stream-id, consider implementing a deterministic way of creating a stream-id
    [I][09661.349730] pw.stream    | [        stream.c:  587 impl_send_command()] 0x55f6cd7d2550: command Spa:Pod:Object:Command:Node:Start
    

    Also, I've tried running with with Experimental features on, as well as selecting any of my two monitors. Nothing seems to work.

    opened by ainar-g 1
  • Fix tests

    Fix tests

    Now the tests finally pass.

    However, it still doesn’t run on CI out-of-box because some of the tests are not unit tests but integration tests utilizing Gtk that require a display. I successfully run it via xvfb-run, but this provides a virtual X server, not a Wayland server. I haven’t found a similar tool for Wayland yet.

    Fixes #197.

    opened by jirutka 0
Releases(v2.2.3)
  • v2.2.3(Dec 25, 2022)

  • v2.2.2(Oct 2, 2022)

  • v2.2.1(Oct 1, 2022)

  • v2.2.0(Sep 29, 2022)

    This release contains new features and fixes:

    • New area selection UI
    • Added option to change the frame rate through the UI
    • Improved delay settings flexibility
    • Added preferences window for easier configuration
    • Added KOOHA_EXPERIMENTAL env var to show experimental (unsupported) encoders like VAAPI-VP8 and VAAPI-H264
    • Added the following experimental (unsupported) encoders: VP9, AV1, and VAAPI-VP9
    • Unavailable formats/encoders are now hidden from the UI
    • Fixed broken audio on long recordings
    • Updated translations
    Source code(tar.gz)
    Source code(zip)
    kooha-2.2.0.tar.xz(15.74 MB)
    kooha-2.2.0.tar.xz.sha256sum(85 bytes)
  • v2.1.1(Aug 21, 2022)

  • v2.1.0(Aug 19, 2022)

    This release contains new features and fixes:

    • Remember previously selected video sources
    • Added ability to cancel while flushing the recording
    • Use different icons for settings toggle button to discern state more clearly
    • Added 3 seconds delay option
    • Fixed x264 encoder failing to initialize on uneven resolutions
    • Fixed minutes stuck on 00 if time is equal or greater than an hour
    • Recordings are now stored by default in ~/Videos/Kooha (This won't affect existing settings)
    • "Show in Files" button in notifications now highlights the file in the file manager
    • Improved support information in the new about window
    • Improved error handling
    • Improved codebase and stability
    • Updated translations
    Source code(tar.gz)
    Source code(zip)
    kooha-2.1.0.tar.xz(15.45 MB)
    kooha-2.1.0.tar.xz.sha256sum(85 bytes)
  • v2.0.1(Oct 19, 2021)

    This is a minor release:

    • GIF recordings now loop infinitely
    • Minor codebase improvements
    • Added Serbian Cyrillic translations
    • Added Serbian Latin translations
    • Updated Croatian translations
    • Updated Ukrainian translations
    • Updated Basque translations
    • Updated Dutch translations
    • Updated Turkish translations
    • Updated Italian translations
    • Updated Spanish translations
    • Updated Hungarian translations
    • Updated German translations
    • Updated Slovak translations
    Source code(tar.gz)
    Source code(zip)
    kooha-2.0.1.tar.xz(15.12 MB)
    kooha-2.0.1.tar.xz.sha256sum(85 bytes)
  • v2.0.0(Sep 23, 2021)

    This is a big release containing a lot of fixes and new features!

    • Added MP4 and GIF formats
    • Added feature to record a single window or monitor
    • Added optional-in hardware accelerated encoding
    • Added multiple video sources recording
    • Added much improved error handling
    • Fixed broken UI on non-default close button placement
    • Fixed major bug in GNOME 41
    • Fixed off selection region on integer scaling
    • Fixed saving the recording to a hidden directory
    • Improved performance
    • Now working for certain desktop environments and window managers
    • Full rewrite to Rust
    • Updated translations
    Source code(tar.gz)
    Source code(zip)
    kooha-2.0.0.tar.xz(15.12 MB)
  • v1.2.1(May 23, 2021)

    This release contains small fixes and improvements:

    • Focus start record button on startup
    • Improved UI and UX
    • Fixed bug when tmp folder doesn't exist
    • Updated Swedish translations
    • Updated Spanish translations
    • Updated Turkish translations
    • Updated Italian translations
    • Updated Dutch translations
    • Updated French translations
    • Updated Portuguese (Brazil) translations
    • Updated Norwegian Bokmål translations
    Source code(tar.gz)
    Source code(zip)
  • v1.2.0(May 17, 2021)

    This release brings the new GTK4 and an important fix for GNOME 40.

    • Recording performance improvements
    • Major UI improvements
    • Dynamically change the multiplexer
    • Fix GNOME 40 crashes
    • Fix crashes in non-supported environment
    • Updated Spanish translations
    • Updated Portuguese translations
    • Updated Turkish translations
    • Updated Norwegian Bokmål translations
    • Updated Italian translations
    • Updated Indonesian translations
    Source code(tar.gz)
    Source code(zip)
  • v1.1.3(May 4, 2021)

    New fixes and translations update coming this release:

    • More responsive shortcuts
    • Fix crashing when no desktop environment is set up (#57)
    • Updated Slovak Translations
    • Updated Portuguese (Brazil) Translations
    • Updated Russian Translations
    • Updated Indonesian Translations
    Source code(tar.gz)
    Source code(zip)
  • v1.1.2(Apr 25, 2021)

    This is a minor release composing of fixes and improvements:

    • Minor performance optimizations
    • Updated Dutch translations
    • Updated Turkish translations
    • Updated Spanish translations
    • Updated Indonesian translations
    • Updated Filipino translations
    • Updated Italian translations
    • Updated French translations
    • Updated German translations
    • Updated Norwegian Bokmål translations
    • Updated Chinese (Simplified) translations
    Source code(tar.gz)
    Source code(zip)
  • v1.1.1(Apr 9, 2021)

    This release is composing of minor changes:

    • Minor UI improvements
    • Code cleaning and minor performance improvements
    • Fix a bug when trying to save in an inaccessible location
    • Added Persian translations
    • Added Chinese(simplified) translations
    • Updated translations
    Source code(tar.gz)
    Source code(zip)
  • v1.1.0(Mar 25, 2021)

    This update brings new features and few bug fixes:

    • Added a processing view to avoid recording corruption
    • Added a notification after recording to show saving location
    • Added option to change framerate through Kooha's keyfile
    • Minor improvements
    Source code(tar.gz)
    Source code(zip)
  • v1.0.5(Mar 24, 2021)

    This is a small update composing of bug fixes:

    • Fix audio recording in other locales
    • Fix when using keyboard shortcuts unexpectedly
    • Minor improvements
    • Update translations
    Source code(tar.gz)
    Source code(zip)
  • v1.0.4(Mar 23, 2021)

    This release brings a couple of improvements:

    • New! Ability to select audio devices through GNOME Settings
    • Removed the annoying tong sound
    • Fixed when the selection is not divisible by 2
    • Minor UI tweaks and other bug fixes
    • Performance improvements
    • Updated Translations
    • Added Portuguese translations
    • Added Spanish translations
    • Added German translations
    • Added Russian translations
    • Added Italian translations
    Source code(tar.gz)
    Source code(zip)
  • v1.0.3(Mar 17, 2021)

    A couple of bug fixes here and improvements there:

    • Minor performance improvements
    • Bug fixes
    • Added Swedish translations
    • Added Indonesian translations
    • Update Filipino translations
    Source code(tar.gz)
    Source code(zip)
  • v1.0.2(Mar 15, 2021)

  • v1.0.1(Mar 14, 2021)

    Version 1.0.1 brings fixes to a couple of bugs:

    • Catch the error when the path of the directory no longer exists
    • Fix the bug when the path contains spaces
    • Fix missing argument argv
    • Possible fix for GioDBus: The name is not activatable
    • Make desktop environment check less strict
    Source code(tar.gz)
    Source code(zip)
  • v1.0.0(Mar 13, 2021)

    This is the 1.0 release of Kooha. The features of this release include the following:

    • Record your screen and also audio from your microphone or desktop
    • Option to show or hide the pointer
    • Option to record only an area on your screen
    • Select the saving location of the record
    • Ability to add a delay before recording starts
    • Video format settings (MKV and WebM)
    • And of course, keyboard shortcuts!
    Source code(tar.gz)
    Source code(zip)
Owner
Dave Patrick
FOSS. GTK. Python.
Dave Patrick
Get random jokes bapack2 on telegram

Jokes Bapack2 Telegram Bot Get random jokes bapack2 from jokes-bapack2-api on telegram bot Screenshot Requirements python pip pipenv python-telegram-b

Miftah Afina 2 Nov 17, 2021
A simple Python TDLib wrapper

Telegram Forwarder App Description pywtdlib (Python Wrapper TDLib) is a simple synchronous Python wrapper that makes you easy to create new Python Tel

Álvaro Fernández 2 Jan 04, 2023
PlexAutoSkip - Automatically skip content in Plex

PlexAutoSkip Automatically skip tagged content in Plex A background python scrip

Michael Higgins 97 Dec 21, 2022
This Telegram bot allows you to create direct links with pre-filled text to WhatsApp Chats

WhatsApp API Bot Telegram bot to create direct links with pre-filled text for WhatsApp Chats You can check our bot here. The bot is based on the API p

RobotTrick • רובוטריק 17 Aug 20, 2022
Unofficial YooMoney API python library

API Yoomoney - unofficial python library This is an unofficial YooMoney API python library. Summary Introduction Features Installation Quick start Acc

Aleksey Korshuk 136 Dec 30, 2022
Find the best repos to contribute to, right from Discord!

repo-finder-bot Find the best repos to contribute to, right from Discord! Add to your server FAQs Hmm. What's this? This is the Repo Finder Bot, a bot

Skyascii 61 Dec 25, 2022
A simple Discord bot that can fetch definitions and post them in chat.

A simple Discord bot that can fetch definitions and post them in chat. If you are connected to a voice channel, the bot will also read out the definition to you.

Tycho Bellers 4 Sep 29, 2022
Yet another random discord bot.

YARDB (r!) Yet another fully functional and random discord bot. I might add more features if I'm bored also don't criticize on my code. Commands: 4 Di

kayle 1 Oct 21, 2021
An open-source Discord bot that alerts your server when it's Funky Monkey Friday!

Funky-Monkey-Friday-Bot An open-source Discord bot that alerts your server when it's Funky Monkey Friday! Add it to your server here! https://discord.

Cole Swinford 0 Nov 10, 2022
Quickly visualize docker networks with graphviz.

Docker Network Graph Visualize the relationship between Docker networks and containers as a neat graphviz graph. Example Usage usage: docker-net-graph

Leo Verto 43 Dec 12, 2022
A Simple Telegram Bot By @AsmSafone to Download Files From Mega.nz and Upload It to Telegram

MegaDL-Bot A Simple Telegram Bot By @AsmSafone to Download Files From Mega.nz and Upload It to Telegram Features No Login Required All Mega.nz File Li

SAF ONE 92 Dec 02, 2022
Build a better understanding of your data in PostgreSQL.

Data Fluent for PostgreSQL Build a better understanding of your data in PostgreSQL. The following shows an example report generated by this tool. It g

Mark Litwintschik 28 Aug 30, 2022
A basic API to scrape Craigslist.

CLAPI A basic API to scrape Craigslist. Most useful for viewing posts across a broad geographic area or for viewing posts within a specific timeframe.

45 Jan 05, 2023
GitHub action to deploy serverless functions to YandexCloud

YandexCloud serverless function deploy action Deploy new serverless function version (including function creation if it does not exist). Inputs yc_acc

Много Лосося 4 Apr 10, 2022
Mazda Connected Service API wrapper based on pymazda and Flask.

Mazda Connected Service Relay Mazda Connected Service API wrapper based on pymazda and Flask. Usage Make POST calls to https://mymazda.herokuapp.com/{

Alan Chen 10 Jan 05, 2023
Very Sempil Bot Auto Filter bot

SAMANTHA_BOT Very Sempil Bot Auto Filter bot ##[ # 𝐂𝐋𝐈𝐂𝐊 𝐁𝐄𝐋𝐎𝐖 𝐈𝐌𝐀𝐆𝐄 𝐓𝐎 𝐃𝐄𝐏𝐋𝐎𝐘 👇 👇 👇 Auto Filter Manuel Filter IMDB Admin Co

DARK WEBLOAD 3 Jun 27, 2022
RDMAss - A Python Discord bot creating an interaction with RDM API

RDMAss A Python Discord bot creating an interaction with RDM API. Features Assig

5 Sep 21, 2022
Baota-docker - Deploying baota panel via docker

baota-docker Deploying baota panel via docker. 通过docker一键部署宝塔面板。 一、前言 好像很多人对这个感兴

Mr. Cat 15 Dec 12, 2022
PyFIR - Python implementations of Finite Impulse Response (FIR) filters

pyFIR Python implementations of Finite Impulse Response (FIR) filters. The algorithms are mainly (but not strictly) the ones described in WEFERS, Fran

Davi Carvalho 4 Feb 12, 2022
Price checker windows application

Price-Checker price checker windows application This application monitors the prices of selected products and displays a notification if the price has

Danila Tsareff 1 Nov 29, 2021