Open PeeK1e opened 2 months ago
Same issue
Seeing this as well for capturing a monitor/window, however I can't even get to the region selection as it gets stuck on loading:
Edit: Restarting fixed both issues. Will try to grab some more useful info if it happens again
By "restarting fixed both issues" do you mean you were able to record the area successfully?
By "restarting fixed both issues" do you mean you were able to record the area successfully?
Yep, I could both record windows/monitors and capture screen regions
That's so weird, that will make this harder to debug.
In my case the only indication that something went wrong before it pauses is this message in the terminal:
(kooha:3002): Gtk-WARNING **: 13:22:57.522: Calling org.freedesktop.portal.Inhibit.Inhibit failed: GDBus.Error:org.freedesktop.DBus.Error.UnknownMethod: No such interface “org.freedesktop.portal.Inhibit” on object at path /org/freedesktop/portal/desktop
(I'm using a WM with no inhibit interface)
I'm planning to investigate further today.
That's so weird, that will make this harder to debug.
In my case the only indication that something went wrong before it pauses is this message in the terminal:
(kooha:3002): Gtk-WARNING **: 13:22:57.522: Calling org.freedesktop.portal.Inhibit.Inhibit failed: GDBus.Error:org.freedesktop.DBus.Error.UnknownMethod: No such interface “org.freedesktop.portal.Inhibit” on object at path /org/freedesktop/portal/desktop
(I'm using a WM with no inhibit interface)
I'm planning to investigate further today.
That errors seems unrelated with the issue, you may need to enable debug logs via RUST_LOG=kooha=debug
.
Based on the log it seems like a pipewire issue. Kooha sets the pipeline to Playing but it never actually plays. I see "Changed from Paused to Playing" events for each element in the pipeline but no "Pipeline changed state from Paused to Playing" like I do with the working full screen recording.
After clearing config with dconf reset -f /io/github/seadve/Kooha/
I have not been able to reproduce the issue.
After clearing config with
dconf reset -f /io/github/seadve/Kooha/
I have not been able to reproduce the issue.
Yep it seems to reliably work now after running dconf reset
. I'll report back if the issue persists on my main machine aswell.
Ran into the same issue:
$ RUST_LOG=kooha=debug kooha
2024-07-11T10:53:30.272843Z INFO kooha::application: Kooha (io.github.seadve.Kooha)
2024-07-11T10:53:30.272857Z INFO kooha::application: Version: 2.3.0 ()
2024-07-11T10:53:30.272859Z INFO kooha::application: Datadir: /nix/store/rzw2zhmg477pjnbjrsphwmfqah8fv3ra-kooha-2.3.0/share/kooha
(kooha:9108): Gdk-WARNING **: 10:53:33.834: Compositor doesn't support moving popups, relying on remapping
2024-07-11T10:53:34.138837Z DEBUG kooha::recording: Created screencast proxy version=Ok(5) available_cursor_modes=Ok(CursorMode(HIDDEN | EMBEDDED)) available_source_types=Ok(SourceType(MONITOR))
2024-07-11T10:53:34.140073Z DEBUG kooha::recording: Selecting sources cursor_mode=CursorMode(EMBEDDED) source_type=SourceType(MONITOR) is_multiple_sources=false restore_token="c791ee21-a8b2-4ce3-bc08-97510459c275" persist_mode=Persistent
2024-07-11T10:53:34.141604Z DEBUG kooha::recording: Starting session window_identifier=wayland:f92a7b199de422c0d36ba0b8f0b1753c
2024-07-11T10:53:34.150896Z DEBUG kooha::area_selector: Using gl pipeline
2024-07-11T10:53:34.170411Z DEBUG kooha::area_selector: Pipeline changed state from `Null` -> `Ready`
2024-07-11T10:53:34.170459Z DEBUG kooha::area_selector: Pipeline changed state from `Ready` -> `Paused`
2024-07-11T10:53:34.234269Z DEBUG kooha::area_selector: Pipeline changed state from `Paused` -> `Playing`
2024-07-11T10:53:36.052656Z DEBUG kooha::pipeline: file_path=/home/me/Kooha/Kooha-2024-07-11-10-53-34.webm framerate=Fraction(Ratio { numer: 24, denom: 1 }) profile="webm-vp8" fd=16 stream_len=1 streams=[Stream { node_id: 84, id: None, position: Some((0, 0)), size: Some((1920, 1080)), source_type: Some(SourceType(MONITOR)) }] record_desktop_audio=true record_microphone=false select_area_data=Some(SelectAreaData { selection: Selection { x: 310.10156, y: 19.16406, width: 297.7422, height: 218.99217 }, paintable_rect: Rect { x: 4.0, y: 0.0, width: 736.0, height: 414.0 }, stream_size: (1920, 1080) })
2024-07-11T10:53:36.053404Z DEBUG kooha::pipeline: raw_top_crop=49.993202209472656 raw_left_crop=798.5258178710938 raw_right_crop=344.75537109375 raw_bottom_crop=458.72283935546875
2024-07-11T10:53:36.053418Z DEBUG kooha::pipeline: top_crop=50 left_crop=798 right_crop=344 bottom_crop=458
2024-07-11T10:53:36.066165Z DEBUG kooha::device: Finding device name for class `Sink`
2024-07-11T10:53:36.066182Z DEBUG kooha::device: Skipping device `pulsedevice0` as it has unknown device class `Audio/Source`
2024-07-11T10:53:36.066192Z DEBUG kooha::device: Skipping device `pulsedevice1` as it has unknown device class `Audio/Source`
2024-07-11T10:53:36.066197Z DEBUG kooha::device: Skipping device `pulsedevice2` as it has unknown device class `Audio/Source`
2024-07-11T10:53:36.066202Z DEBUG kooha::device: Skipping device `pulsedevice3` as it has unknown device class `Audio/Source`
2024-07-11T10:53:36.066207Z DEBUG kooha::device: Skipping device `pulsedevice4` as it has unknown device class `Audio/Source`
2024-07-11T10:53:36.066214Z DEBUG kooha::device: Skipping device `pulsedevice5` as it has unknown device class `Audio/Source`
2024-07-11T10:53:36.066229Z DEBUG kooha::device: Skipping device `pulsedevice6` as it is not the default
2024-07-11T10:53:36.066240Z DEBUG kooha::device: Skipping device `pulsedevice7` as it is not the default
2024-07-11T10:53:36.066250Z DEBUG kooha::device: Skipping device `pulsedevice8` as it is not the default
2024-07-11T10:53:36.066584Z DEBUG kooha::pipeline: Found desktop audio with name `alsa_output.pci-0000_00_1f.3-platform-skl_hda_dsp_generic.HiFi__hw_sofhdadsp__sink.monitor`
2024-07-11T10:53:36.091747Z DEBUG kooha::recording: Pipeline changed state from `Null` -> `Ready`
2024-07-11T10:53:36.091927Z DEBUG kooha::recording: Pipeline changed state from `Ready` -> `Paused`
Did you reset dconf as described?
Sure:
$ dconf reset -f /io/github/seadve/Kooha/ && echo dconf reset ok
dconf reset ok
$ RUST_LOG=kooha=debug kooha
<... the same ...>
Getting the dconf values (where the issue is reproducible) would be helpful in providing insights on what is causing the issue. I'm not sure how to get it outside flatpak, but the file should be somewhere in <parent>/glib-2.0/settings/keyfile
.
I'm using it on NixOS, and after the upgrading, it works now.
$ dconf dump /
[io/github/seadve/Kooha]
capture-mode='selection'
screencast-restore-token='5a07f3f0-3def-4426-b5f7-b0e8fb1d242f'
selection=(103.0703125, 223.01951599121094, 641.53125, 395.91796875)
selection-context=((4
Hi and thanks for the tool :slightly_smiling_face:
2.3.0
Debug Info
```txt - io.github.seadve.Kooha 2.3.0 - Flatpak: false - Experimental Features: [] - Language: en_US.UTF-8, en_US, en.UTF-8, en, C - CPU: AMD Ryzen 7 5800X3D 8-Core Processor - GPU: Advanced Micro Devices, Inc. [AMD/ATI] Navi 21 [Radeon RX 6800/6800 XT / 6900 XT] (rev c1) - Distribution: EndeavourOS - Desktop Session:Running on EndeavourOS but it now basically is a normal Arch install. My Window Manager is Sway
Bug summary
When opening Kooha, selecting a region and then starting a recording, Kooha counts down and immediately pauses the recording. When trying to stop most of the times the app freezes and needs to be killed with
SIGTERM
.Sometimes it works though. but there are a lot of Warnings. If i can get it to work ill post the logs of a working recording later.
On full screen recordings, it always works.
Steps to reproduce
Expected behavior
Record a region.
Relevant logs, screenshots, screencasts, etc.
Failed Log
```txt 2024-06-23T13:49:55.625113Z INFO kooha::application: Kooha (io.github.seadve.Kooha) 2024-06-23T13:49:55.625121Z INFO kooha::application: Version: 2.3.0 () 2024-06-23T13:49:55.625123Z INFO kooha::application: Datadir: /usr/share/kooha 2024-06-23T13:49:57.686965Z DEBUG kooha::recording: Created screencast proxy version=Ok(5) available_cursor_modes=Ok(CursorMode(HIDDEN | EMBEDDED)) available_source_types=Ok(SourceType(MONITOR)) 2024-06-23T13:49:57.688160Z DEBUG kooha::recording: Selecting sources cursor_mode=CursorMode(EMBEDDED) source_type=SourceType(MONITOR) is_multiple_sources=false restore_token="" persist_mode=Persistent 2024-06-23T13:49:58.403030Z DEBUG kooha::recording: Starting session window_identifier=wayland:b294be3387fbd631b6ea21ddf0e852d8 [I][01571.893988] pw.context | [ pipewire.c: 647 pw_init()] version 1.0.6 2024-06-23T13:49:58.423625Z DEBUG kooha::area_selector: Using gl pipeline [I][01571.900303] pw.conf | [ conf.c: 408 conf_load()] 0x5957ac2e52d0: loaded config '/etc/pipewire/client.conf' with 5 items [I][01571.900334] pw.conf | [ conf.c: 972 pw_conf_section_for_each()] handle config '/etc/pipewire/client.conf' section 'context.properties' [I][01571.900344] pw.context | [ context.c: 253 pw_context_new()] 0x5957ac2ea1c0: parsed 1 context.properties items [I][01571.900953] pw.conf | [ conf.c: 972 pw_conf_section_for_each()] handle config '/etc/pipewire/client.conf' section 'context.spa-libs' [I][01571.900973] pw.context | [ context.c: 354 pw_context_new()] 0x5957ac2ea1c0: parsed 2 context.spa-libs items [I][01571.900981] pw.conf | [ conf.c: 972 pw_conf_section_for_each()] handle config '/etc/pipewire/client.conf' section 'context.modules' [I][01571.900988] pw.module | [ impl-module.c: 157 pw_context_load_module()] 0x5957ac2ea1c0: name:libpipewire-module-protocol-native args:(null) [I][01571.901195] pw.conf | [ conf.c: 592 load_module()] 0x5957ac2ea1c0: loaded module libpipewire-module-protocol-native [I][01571.901208] pw.module | [ impl-module.c: 157 pw_context_load_module()] 0x5957ac2ea1c0: name:libpipewire-module-client-node args:(null) [I][01571.901392] pw.conf | [ conf.c: 592 load_module()] 0x5957ac2ea1c0: loaded module libpipewire-module-client-node [I][01571.901402] pw.module | [ impl-module.c: 157 pw_context_load_module()] 0x5957ac2ea1c0: name:libpipewire-module-client-device args:(null) [I][01571.901522] pw.conf | [ conf.c: 592 load_module()] 0x5957ac2ea1c0: loaded module libpipewire-module-client-device [I][01571.901533] pw.module | [ impl-module.c: 157 pw_context_load_module()] 0x5957ac2ea1c0: name:libpipewire-module-adapter args:(null) [I][01571.901657] pw.conf | [ conf.c: 592 load_module()] 0x5957ac2ea1c0: loaded module libpipewire-module-adapter [I][01571.901667] pw.module | [ impl-module.c: 157 pw_context_load_module()] 0x5957ac2ea1c0: name:libpipewire-module-metadata args:(null) [I][01571.901790] pw.conf | [ conf.c: 592 load_module()] 0x5957ac2ea1c0: loaded module libpipewire-module-metadata [I][01571.901800] pw.module | [ impl-module.c: 157 pw_context_load_module()] 0x5957ac2ea1c0: name:libpipewire-module-session-manager args:(null) [I][01571.901931] pw.conf | [ conf.c: 592 load_module()] 0x5957ac2ea1c0: loaded module libpipewire-module-session-manager [I][01571.901940] pw.context | [ context.c: 358 pw_context_new()] 0x5957ac2ea1c0: parsed 6 context.modules items [I][01571.901947] pw.context | [ context.c: 363 pw_context_new()] 0x5957ac2ea1c0: parsed 0 context.objects items [I][01571.901954] pw.context | [ context.c: 366 pw_context_new()] 0x5957ac2ea1c0: parsed 0 context.exec items [I][01571.901999] default | [ thread.c: 105 impl_acquire_rt()] acquire_rt thread:0x70d9696006c0 prio:-1 not implemented [I][01571.902013] pw.metadata | [ impl-metadata.c: 186 impl_set_property()] 0x5957ac2eb8d0: add id:0 key:log.level type: value:0 [I][01571.902021] pw.metadata | [ impl-metadata.c: 186 impl_set_property()] 0x5957ac2eb8d0: add id:0 key:clock.rate type: value:48000 [I][01571.902028] pw.metadata | [ impl-metadata.c: 186 impl_set_property()] 0x5957ac2eb8d0: add id:0 key:clock.allowed-rates type: value:[ 48000 ] [I][01571.902034] pw.metadata | [ impl-metadata.c: 186 impl_set_property()] 0x5957ac2eb8d0: add id:0 key:clock.quantum type: value:1024 [I][01571.902040] pw.metadata | [ impl-metadata.c: 186 impl_set_property()] 0x5957ac2eb8d0: add id:0 key:clock.min-quantum type: value:32 [I][01571.902046] pw.metadata | [ impl-metadata.c: 186 impl_set_property()] 0x5957ac2eb8d0: add id:0 key:clock.max-quantum type: value:2048 [I][01571.902052] pw.metadata | [ impl-metadata.c: 186 impl_set_property()] 0x5957ac2eb8d0: add id:0 key:clock.force-quantum type: value:0 [I][01571.902058] pw.metadata | [ impl-metadata.c: 186 impl_set_property()] 0x5957ac2eb8d0: add id:0 key:clock.force-rate type: value:0 [I][01571.902136] pw.conf | [ conf.c: 972 pw_conf_section_for_each()] handle config '/etc/pipewire/client.conf' section 'stream.properties' [E][01571.902187] mod.protocol-native | [module-protocol-: 1009 process_remote()] 0x5957ac2ebe50: could not find proxy 2 [E][01571.902204] mod.protocol-native | [module-protocol-: 1009 process_remote()] 0x5957ac2ebe50: could not find proxy 2 [E][01571.902214] mod.protocol-native | [module-protocol-: 1009 process_remote()] 0x5957ac2ebe50: could not find proxy 2 0:00:02.812624777 345268 0x70d970001b70 FIXME default gstutils.c:4088:gst_element_decorate_stream_id_internal: