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
A simple Telegram bot which handles images in whole different way

zeroimagebot thezeroimagebot 🌟 I Can Edit Dimension Of An image which is required by @stickers 🌟 I Can Extract Text From An Image 🌟 !!! New Updates

RAVEEN KUMAR 4 Jul 01, 2021
Bifrost C2. Open-source post-exploitation using Discord API

Bifrost Command and Control What's Bifrost? Bifrost is an open-source Discord BOT that works as Command and Control (C2). This C2 uses Discord API for

38 Dec 05, 2022
Boto3 code assistance for any API in any IDE, always up to date

botostubs Gives you code assistance for any boto3 API in any IDE. Get started by running pip install botostubs Demo Features PyPI package automaticall

Jeshan Giovanni BABOOA 94 Nov 14, 2022
Backend for Indipe client

Betsushi Betsu (別), the japanese word meaning "another" and Shiharai (支払い) meaning "payment". Hence the name Betsushi was derived. Introduction This i

Sudodevs 3 Feb 09, 2022
WhatsApp API Python ChatBot

WhatsApp Api Python - Esta documentação tem como objetivo exemplificar o uso do Moorse Whatsapp API na linguagem Python.

Douglas Alves 2 Jan 06, 2022
A Discord bot coded in Python

Perseverance-Bot By Toricane Replit Code | GitHub Code | Discord Server | Website Perseverance is a multi-purpose bot coded in Python. It has moderati

4 Mar 30, 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
Python3 library that can retrieve Chrome-based browser's saved login info.

Passax EDUCATIONAL PURPOSES ONLY Python3 library that can retrieve Chrome-based browser's saved login info. Requirements secretstorage~=3.3.1 pywin32=

Auax 1 Jan 25, 2022
短信发送 Python 程序(包含1000+有效接口)

短信轰炸 Python 程序(包含1000+有效接口) 前言 这是一个爬取网络上在线轰炸的接口,后通过 Python 异步 请求接口以达到 手机短信轰炸 的目的。 此为开源项目,仅供娱乐学习使用,使用者所带来的一切后果与作者无关,使用请遵守相关的法律法规,合理使用,请勿滥用。 食用方法 1. 爬取接

蓝鲸落 10.2k Jan 02, 2023
An incomplete add-on extension to Pyrogram, to create telegram bots a bit more easily

PyStark A star ⭐ from you means a lot An incomplete add-on extension to Pyrogram

Stark Bots 36 Dec 23, 2022
Telegram bot for stream music on telegram, powered by py-tgcalls and Pyrogram

Telegram Streamer Bot Telegram bot for stream music on telegram, powered by py-tgcalls and Pyrogram ✨ Features Coming soon, help me to improve it 🛠 C

Shohih Abdul 11 Oct 21, 2022
Visualize size of directories, s3 buckets.

Dir Sizer This is a work in progress, right now consider this an Alpha or Proof of Concept level. dir_sizer is a utility to visualize the size of a di

Scott Seligman 13 Dec 08, 2022
Bot playing "mathbattle" game from Telegram messenger

mathbattlebot Bot playing mathbattle game from Telegram messenger Installing: run in command line pip3 install -r requirements.txt Running: Example c

Egor 1 May 30, 2022
Kyura-Userbot: a modular Telegram userbot that runs in Python3 with a sqlalchemy database

Kyura-Userbot Telegram Kyura-Userbot adalah userbot Telegram modular yang berjal

Kyura 17 Oct 29, 2022
Most Powerful Chatbot On Telegram Bot

About Hello, I am Lycia [リュキア], An Intelligent ChatBot. If You Are Feeling Lonely, You can Always Come to me and Chat With Me! How To Host The easiest

RedAura 8 May 26, 2021
A discord bot with information and template tracking for pxls.space.

pyCharity A discord bot with information and template tracking for pxls.space. Inspired by Mikarific's Charity bot. Try out the beta version on your s

1 Dec 03, 2021
Cogs version of iso6.9 with the help of thatOneArchUser

iso6.9-cogs (debloated) This is a cogs version of iso6.9 by αrchιshα#5518. iso6.9 is a Discord bot written in Python and is used to make your Discord

Kamilla Youver 2 Jun 10, 2022
𝐀 𝐦𝐨𝐝𝐮𝐥𝐚𝐫 𝐓𝐞𝐥𝐞𝐠𝐫𝐚𝐦 𝐆𝐫𝐨𝐮𝐩 𝐦𝐚𝐧𝐚𝐠𝐞𝐦𝐞𝐧𝐭 𝐛𝐨𝐭 𝐰𝐢𝐭𝐡 𝐮𝐥𝐭𝐢𝐦𝐚𝐭𝐞 𝐟𝐞𝐚𝐭𝐮𝐫𝐞𝐬

𝐇𝐨𝐰 𝐓𝐨 𝐃𝐞𝐩𝐥𝐨𝐲 For easiest way to deploy this Bot click on the below button 𝐌𝐚𝐝𝐞 𝐁𝐲 𝐒𝐮𝐩𝐩𝐨𝐫𝐭 𝐆𝐫𝐨𝐮𝐩 𝐒𝐨𝐮𝐫𝐜𝐞𝐬 𝐆𝐞𝐧𝐞?

Mukesh Solanki 2 Oct 06, 2021
A python bot that will allow you to have maximum luck during Veve drops.

VeveBot You can follow me here Github | Twitter Features: - Click on the purchase at the time of the drop. - Be able to choose to do more than one tes

Rodz 1 Dec 04, 2021
A tool for creating credentials for accessing S3 buckets

s3-credentials A tool for creating credentials for accessing S3 buckets For project background, see s3-credentials: a tool for creating credentials fo

Simon Willison 138 Jan 06, 2023