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
    otheos@weywot:/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

    paulius@paulius-ThinkPad-P15-Gen-2i:~$ 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: "()" }
    paulius@paulius-ThinkPad-P15-Gen-2i:~$ 
    
    

    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 response=@a{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
Handles SDVX EXCEED GEAR result screen photos and attempts to read it.

Handles SDVX EXCEED GEAR result screen photos and attempts to read it.

silverhawke 1 Jan 8, 2022
Simple-nft-tutorial - A simple tutorial on making nft/memecoins on algorand

nft/memecoin Tutorial on Algorand Let's make a simple NFT/memecoin on the Algora

null 2 Feb 5, 2022
A simple Python wrapper for the Amazon.com Product Advertising API ⛺

Amazon Simple Product API A simple Python wrapper for the Amazon.com Product Advertising API. Features An object oriented interface to Amazon products

Yoav Aviram 789 Dec 26, 2022
A simple library for interacting with Amazon S3.

BucketStore is a very simple Amazon S3 client, written in Python. It aims to be much more straight-forward to use than boto3, and specializes only in

Jacobi Petrucciani 219 Oct 3, 2022
A simple Python wrapper for the archive.is capturing service

archiveis A simple Python wrapper for the archive.is capturing service. Installation pipenv install archiveis Python Usage Import it. >>> import archi

PastPages 157 Dec 28, 2022
Simple Craigslist wrapper

python-craigslist A simple Craigslist wrapper. License: MIT-Zero. Disclaimer I don't work for or have any affiliation with Craigslist. This module was

Julio M. Alegria 370 Dec 22, 2022
The simple way of using Imgur.

PyImgur The simple way of using Imgur. You can upload images, download images, read comments, update your albums, message people and more. In fact, yo

Andreas Damgaard Pedersen 120 Dec 6, 2022
:snake: A simple library to fetch data from the iTunes Store API made for Python >= 3.5

itunespy itunespy is a simple library to fetch data from the iTunes Store API made for Python 3.5 and beyond. Important: Since version 1.6 itunespy no

Fran González 56 Dec 22, 2022
Simple library for logging to Loggly

#Hoover A python wrapper used to hit the Loggly. API For more information on Hoover see http://wiki.loggly.com/hooverguide ##Install With this git rep

Hoover Loggly 34 May 19, 2021
Simple integrate of API musixmatch.com with python

Python Musixmatch Simple integrate of API musixmatch.com with python Quick start $ pip install pymusixmatch or $ python setup.py install Authenticatio

Hudson Brendon 79 Dec 20, 2022
PRAW, an acronym for "Python Reddit API Wrapper", is a python package that allows for simple access to Reddit's API.

PRAW: The Python Reddit API Wrapper PRAW, an acronym for "Python Reddit API Wrapper", is a Python package that allows for simple access to Reddit's AP

Python Reddit API Wrapper Development 3k Dec 29, 2022
Simple integrate of API udemy.com with python

Pyudemy Simple integrate of API udemy.com with python Quick start $ pip install pyudemy or $ python setup.py install Authentication To make any calls

Hudson Brendon 30 Jan 2, 2023
A simple script that will watch a stream for you and earn the channel points.

Credits Main idea: https://github.com/gottagofaster236/Twitch-Channel-Points-Miner Bet system (Selenium): https://github.com/ClementRoyer/TwitchAutoCo

Alessandro Maggio 1.1k Jan 8, 2023
A simple telegram bot to download from Zee5 links

Zee5 Downloader If you find any bugs, report at @TroJanzSupport My Features: ?? Upload as file/video from any NON-DRM Zee5 link ?? Permanent thumbnail

TroJanzHEX 95 Dec 20, 2022
PRAW, an acronym for "Python Reddit API Wrapper", is a python package that allows for simple access to Reddit's API.

PRAW: The Python Reddit API Wrapper PRAW, an acronym for "Python Reddit API Wrapper", is a Python package that allows for simple access to Reddit's AP

Python Reddit API Wrapper Development 3k Dec 29, 2022
A very simple Salesforce.com REST API client for Python

Simple Salesforce Simple Salesforce is a basic Salesforce.com REST API client built for Python 3.5, 3.6, 3.7 and 3.8. The goal is to provide a very lo

simple salesforce 1.4k Dec 29, 2022
A simple worker for OpenClubhouse to sync data.

OpenClubhouse-Worker This is a simple worker for OpenClubhouse to sync CH channel data.

null 100 Dec 17, 2022
Simple progressbar for discord

⚙️ DiscordProgressbar ?? Установка | Installation pip install discordbar ?? Документация | Documentation ?? Связаться со мной | Сontact with me ?? Ли

DenyS 26 Nov 30, 2022