Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Part of the recordings is black & white squares #228

Closed
romgrk opened this issue Mar 26, 2023 · 2 comments
Closed

Part of the recordings is black & white squares #228

romgrk opened this issue Mar 26, 2023 · 2 comments

Comments

@romgrk
Copy link

romgrk commented Mar 26, 2023

System Info

- io.github.seadve.Kooha 2.2.3
- Flatpak: false
- Experimental: false

- Distribution: Arch Linux
- Desktop Session: gnome
- Display Server: wayland

- GTK 4.10.1
- Libadwaita 1.3.1
- GStreamer 1.22.1
- Pipewire 0.3.67

Describe the bug
When I record a screencast, part of the recorded video is the black & white squares pattern shown in the screenshot. Which part of the video has that pattern goes from 10-90%, depending on the recording, and doesn't always fall in a precise place. It's usually not at the start nor the end of the video.

To Reproduce
Steps to reproduce the behavior:

  1. Record a screencast with options: capture window, desktop-audio yes, microphone no, mouse no. Video format tried: webm & avi
  2. After the recording has ended, the output video show the pattern when viewed in a video player (tried VLC and gnome player)

Expected behavior
No pattern

Screenshots
If applicable, add screenshots to help explain your problem.
image

Additional context
I didn't have the stuff below running with the recording, but I can create one with this enabled if you think it would be useful.

If applicable, please attach the logs from running Kooha in the
terminal with the following environment variables: `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 flatpak run io.github.seadve.Kooha`).
@zamsyt
Copy link

zamsyt commented Apr 27, 2023

It was working fine for me before, but suddenly I seem to only ever get the checkerboard, even in the area selection window
Select Area window showing checkerboard

System info
- io.github.seadve.Kooha 2.2.3
- Flatpak: true
- Experimental: false

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

- GTK 4.8.3
- Libadwaita 1.2.4
- GStreamer 1.20.6
- Pipewire 0.3.69

I'm on openSUSE Tumbleweed

Debug log of me opening the area selection window
2023-04-27T20:27:21.661376Z  INFO kooha::application: Kooha (io.github.seadve.Kooha)
2023-04-27T20:27:21.661398Z  INFO kooha::application: Version: 2.2.3 ()
2023-04-27T20:27:21.661409Z  INFO kooha::application: Datadir: /app/share/kooha
2023-04-27T20:27:27.331814Z DEBUG kooha::screencast_session: Waiting request response for method `CreateSession`
2023-04-27T20:27:27.332682Z DEBUG kooha::screencast_session: Request response received for method `CreateSession`
2023-04-27T20:27:27.332735Z DEBUG kooha::screencast_session: Created screencast session response=Variant { ptr: 0x565018d91dc0, type: VariantTy { inner: "a{sv}" }, value: "{'session_handle': <'/org/freedesktop/portal/desktop/session/1_128/kooha_0'>}" }
2023-04-27T20:27:27.332789Z DEBUG kooha::recording: ScreenCast portal version: Ok(4)
2023-04-27T20:27:27.332803Z DEBUG kooha::recording: Available cursor modes: Ok(HIDDEN | EMBEDDED | METADATA)
2023-04-27T20:27:27.332817Z DEBUG kooha::recording: Available source types: Ok(MONITOR | WINDOW | VIRTUAL)
2023-04-27T20:27:27.335536Z DEBUG kooha::screencast_session: Waiting request response for method `SelectSources`
2023-04-27T20:27:27.336251Z DEBUG kooha::screencast_session: Request response received for method `SelectSources`
2023-04-27T20:27:27.336284Z DEBUG kooha::screencast_session: Selected sources response=Variant { ptr: 0x565018d47940, type: VariantTy { inner: "a{sv}" }, value: "@a{sv} {}" }
2023-04-27T20:27:27.338905Z DEBUG kooha::screencast_session: Waiting request response for method `Start`
2023-04-27T20:27:32.770952Z DEBUG kooha::screencast_session: Request response received for method `Start`
2023-04-27T20:27:32.771055Z DEBUG kooha::screencast_session: Started screencast session response=Variant { ptr: 0x565018d35c80, type: VariantTy { inner: "a{sv}" }, value: "{'streams': <[(uint32 55, {'id': <'0'>, 'source_type': <uint32 1>, 'position': <(1920, 0)>, 'size': <(1920, 1080)>})]>}" }
2023-04-27T20:27:32.774826Z DEBUG kooha::screencast_session: Opened pipe wire remote response=(handle 0,) fd_list=[10]
2023-04-27T20:27:32.787273Z DEBUG kooha::pipeline: pipewiresrc needs copy: false
[I][00216.704660] pw.context   | [      pipewire.c:  647 pw_init()] version 0.3.69
[I][00216.708400] pw.conf      | [          conf.c:  403 conf_load()] 0x565018f1dd50: loaded config '/usr/share/pipewire/client.conf' with 5 items
[I][00216.708461] pw.conf      | [          conf.c:  950 pw_context_conf_section_for_each()] handle config '/usr/share/pipewire/client.conf' section 'context.properties'
[I][00216.708486] pw.context   | [       context.c:  241 pw_context_new()] 0x565018f1d720: parsed 1 context.properties items
[I][00216.709091] pw.conf      | [          conf.c:  950 pw_context_conf_section_for_each()] handle config '/usr/share/pipewire/client.conf' section 'context.spa-libs'
[I][00216.709149] pw.context   | [       context.c:  342 pw_context_new()] 0x565018f1d720: parsed 2 context.spa-libs items
[I][00216.709178] pw.conf      | [          conf.c:  950 pw_context_conf_section_for_each()] handle config '/usr/share/pipewire/client.conf' section 'context.modules'
[I][00216.709197] pw.module    | [   impl-module.c:  162 pw_context_load_module()] 0x565018f1d720: name:libpipewire-module-protocol-native args:(null)
[I][00216.709633] pw.conf      | [          conf.c:  582 load_module()] 0x565018f1d720: loaded module libpipewire-module-protocol-native
[I][00216.709663] pw.module    | [   impl-module.c:  162 pw_context_load_module()] 0x565018f1d720: name:libpipewire-module-client-node args:(null)
[I][00216.710316] pw.conf      | [          conf.c:  582 load_module()] 0x565018f1d720: loaded module libpipewire-module-client-node
[I][00216.710585] pw.module    | [   impl-module.c:  162 pw_context_load_module()] 0x565018f1d720: name:libpipewire-module-client-device args:(null)
[I][00216.710981] pw.conf      | [          conf.c:  582 load_module()] 0x565018f1d720: loaded module libpipewire-module-client-device
[I][00216.711012] pw.module    | [   impl-module.c:  162 pw_context_load_module()] 0x565018f1d720: name:libpipewire-module-adapter args:(null)
[I][00216.711354] pw.conf      | [          conf.c:  582 load_module()] 0x565018f1d720: loaded module libpipewire-module-adapter
[I][00216.711383] pw.module    | [   impl-module.c:  162 pw_context_load_module()] 0x565018f1d720: name:libpipewire-module-metadata args:(null)
[I][00216.711692] pw.conf      | [          conf.c:  582 load_module()] 0x565018f1d720: loaded module libpipewire-module-metadata
[I][00216.711724] pw.module    | [   impl-module.c:  162 pw_context_load_module()] 0x565018f1d720: name:libpipewire-module-session-manager args:(null)
[I][00216.712048] pw.conf      | [          conf.c:  582 load_module()] 0x565018f1d720: loaded module libpipewire-module-session-manager
[I][00216.712069] pw.context   | [       context.c:  346 pw_context_new()] 0x565018f1d720: parsed 6 context.modules items
[I][00216.712083] pw.context   | [       context.c:  351 pw_context_new()] 0x565018f1d720: parsed 0 context.objects items
[I][00216.712106] pw.context   | [       context.c:  354 pw_context_new()] 0x565018f1d720: parsed 0 context.exec items
[W][00216.712159] default      | [        thread.c:  101 impl_acquire_rt()] acquire_rt thread:0x7fb7caffd640 prio:-1 not implemented
[I][00216.712193] pw.metadata  | [ impl-metadata.c:  185 impl_set_property()] 0x565018f2ba60: add id:0 key:log.level type: value:0
[I][00216.712215] pw.metadata  | [ impl-metadata.c:  185 impl_set_property()] 0x565018f2ba60: add id:0 key:clock.rate type: value:48000
[I][00216.712234] pw.metadata  | [ impl-metadata.c:  185 impl_set_property()] 0x565018f2ba60: add id:0 key:clock.allowed-rates type: value:[ 48000 ]
[I][00216.712253] pw.metadata  | [ impl-metadata.c:  185 impl_set_property()] 0x565018f2ba60: add id:0 key:clock.quantum type: value:1024
[I][00216.712271] pw.metadata  | [ impl-metadata.c:  185 impl_set_property()] 0x565018f2ba60: add id:0 key:clock.min-quantum type: value:32
[I][00216.712293] pw.metadata  | [ impl-metadata.c:  185 impl_set_property()] 0x565018f2ba60: add id:0 key:clock.max-quantum type: value:2048
[I][00216.712311] pw.metadata  | [ impl-metadata.c:  185 impl_set_property()] 0x565018f2ba60: add id:0 key:clock.force-quantum type: value:0
[I][00216.712328] pw.metadata  | [ impl-metadata.c:  185 impl_set_property()] 0x565018f2ba60: add id:0 key:clock.force-rate type: value:0
[I][00216.712528] pw.conf      | [          conf.c:  950 pw_context_conf_section_for_each()] handle config '/usr/share/pipewire/client.conf' section 'stream.properties'
0:00:11.148020126     2 0x7fb8080bc640 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][00216.744268] pw.stream    | [        stream.c:  603 impl_send_command()] 0x565018f69fc0: command Spa:Pod:Object:Command:Node:Start
[I][00216.744564] pw.node      | [     impl-node.c:  388 node_update_state()] (kooha-0) creating -> running
2023-04-27T20:27:32.852734Z DEBUG kooha::area_selector: Pipeline changed state from `Null` -> `Ready`
2023-04-27T20:27:32.852914Z DEBUG kooha::area_selector: Pipeline changed state from `Ready` -> `Paused`
0:00:11.213579807     2 0x7fb8080c0980 FIXME               basesink gstbasesink.c:3395:gst_base_sink_default_event:<gtk4paintablesink0> stream-start event without group-id. Consider implementing group-id handling in the upstream elements
0:00:11.214383509     2 0x7fb8080b8b60 ERROR              videometa gstvideometa.c:242:default_map: plane 0, no memory at offset 0
0:00:11.214405368     2 0x7fb8080b8b60 ERROR                default video-frame.c:168:gst_video_frame_map_id: failed to map video frame plane 0
0:00:11.214418137     2 0x7fb8080b8b60 WARN         videoaggregator gstvideoaggregator.c:829:gst_video_aggregator_parallel_convert_pad_prepare_frame_start:<compositor0> Could not map input buffer
0:00:11.235999470     2 0x7fb8080b8b60 ERROR              videometa gstvideometa.c:242:default_map: plane 0, no memory at offset 0
0:00:11.236024889     2 0x7fb8080b8b60 ERROR                default video-frame.c:168:gst_video_frame_map_id: failed to map video frame plane 0
0:00:11.236042297     2 0x7fb8080b8b60 WARN         videoaggregator gstvideoaggregator.c:829:gst_video_aggregator_parallel_convert_pad_prepare_frame_start:<compositor0> Could not map input buffer
2023-04-27T20:27:32.888466Z DEBUG kooha::area_selector: Pipeline changed state from `Paused` -> `Playing`
0:00:11.250648161     2 0x7fb8080b8b60 ERROR              videometa gstvideometa.c:242:default_map: plane 0, no memory at offset 0
0:00:11.250675196     2 0x7fb8080b8b60 ERROR                default video-frame.c:168:gst_video_frame_map_id: failed to map video frame plane 0
0:00:11.250690167     2 0x7fb8080b8b60 WARN         videoaggregator gstvideoaggregator.c:829:gst_video_aggregator_parallel_convert_pad_prepare_frame_start:<compositor0> Could not map input buffer
0:00:11.278111812     2 0x7fb8080b8b60 ERROR              videometa gstvideometa.c:242:default_map: plane 0, no memory at offset 0
0:00:11.278142556     2 0x7fb8080b8b60 ERROR                default video-frame.c:168:gst_video_frame_map_id: failed to map video frame plane 0
0:00:11.278164003     2 0x7fb8080b8b60 WARN         videoaggregator gstvideoaggregator.c:829:gst_video_aggregator_parallel_convert_pad_prepare_frame_start:<compositor0> Could not map input buffer
0:00:11.306576192     2 0x7fb8080b8b60 ERROR              videometa gstvideometa.c:242:default_map: plane 0, no memory at offset 0
0:00:11.306597762     2 0x7fb8080b8b60 ERROR                default video-frame.c:168:gst_video_frame_map_id: failed to map video frame plane 0
0:00:11.306612875     2 0x7fb8080b8b60 WARN         videoaggregator gstvideoaggregator.c:829:gst_video_aggregator_parallel_convert_pad_prepare_frame_start:<compositor0> Could not map input buffer
[I][00217.530705] pw.stream    | [        stream.c:  603 impl_send_command()] 0x565018f69fc0: command Spa:Pod:Object:Command:Node:Pause
[I][00217.531226] pw.node      | [     impl-node.c:  388 node_update_state()] (kooha-0) running -> idle
[I][00217.532191] pw.stream    | [        stream.c:  603 impl_send_command()] 0x565018f69fc0: command Spa:Pod:Object:Command:Node:Suspend
[I][00217.532464] pw.node      | [     impl-node.c:  388 node_update_state()] (kooha-0) idle -> suspended
[I][00217.532677] pw.node      | [     impl-node.c: 1904 pw_impl_node_destroy()] (kooha-0) destroy
2023-04-27T20:27:33.623879Z DEBUG kooha::window: Cancelled area select
2023-04-27T20:27:33.636921Z DEBUG kooha::screencast_session: Closed screencast session response=()

@SeaDve
Copy link
Owner

SeaDve commented Feb 8, 2024

Thanks for reporting. This seems to be fixed by #235. Feel free to reopen if it is still reproducible. Thanks again!

@SeaDve SeaDve closed this as completed Feb 8, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants