hyprwm / xdg-desktop-portal-hyprland

xdg-desktop-portal backend for Hyprland
BSD 3-Clause "New" or "Revised" License
298 stars 48 forks source link

Screensharing not working with 1.1.0 or 1.0.0 but is working with 0.5. #99

Closed pbosab closed 1 year ago

pbosab commented 1 year ago

hyprland v0.29.1-94-g3785defa (+nvidia patch) xdg-desktop-portal-hyprland 1.1.0 obs 29.1.3-1

screencast isn't working, just a black window. if i downgrade xdph to 0.5 it works.

xdg-desktop-portal-hyprland -v (removed "[TRACE] [core] got poll event") ``` [LOG] Initializing xdph... [LOG] XDG_CURRENT_DESKTOP set to Hyprland [LOG] Gathering exported interfaces [LOG] | Got interface: wl_shm (ver 1) [LOG] | Got interface: wl_drm (ver 2) [LOG] | Got interface: zwp_linux_dmabuf_v1 (ver 4) [LOG] | Got interface: wl_compositor (ver 6) [LOG] | Got interface: wl_subcompositor (ver 1) [LOG] | Got interface: wl_data_device_manager (ver 3) [LOG] | Got interface: zwlr_export_dmabuf_manager_v1 (ver 1) [LOG] | Got interface: zwlr_data_control_manager_v1 (ver 2) [LOG] | Got interface: zwp_primary_selection_device_manager_v1 (ver 1) [LOG] | Got interface: wp_viewporter (ver 1) [LOG] | Got interface: zwlr_gamma_control_manager_v1 (ver 1) [LOG] | Got interface: zwlr_output_power_manager_v1 (ver 1) [LOG] | Got interface: xdg_wm_base (ver 5) [LOG] | Got interface: wl_seat (ver 8) [LOG] | Got interface: wp_presentation (ver 1) [LOG] | Got interface: org_kde_kwin_idle (ver 1) [LOG] | Got interface: ext_idle_notifier_v1 (ver 1) [LOG] | Got interface: zwlr_layer_shell_v1 (ver 4) [LOG] | Got interface: org_kde_kwin_server_decoration_manager (ver 1) [LOG] | Got interface: zxdg_decoration_manager_v1 (ver 1) [LOG] | Got interface: zwlr_output_manager_v1 (ver 4) [LOG] | Got interface: zwlr_input_inhibit_manager_v1 (ver 1) [LOG] | Got interface: zwp_keyboard_shortcuts_inhibit_manager_v1 (ver 1) [LOG] | Got interface: zwp_pointer_constraints_v1 (ver 1) [LOG] | Got interface: zwp_relative_pointer_manager_v1 (ver 1) [LOG] | Got interface: zwp_virtual_keyboard_manager_v1 (ver 1) [LOG] | Got interface: zwlr_virtual_pointer_manager_v1 (ver 2) [LOG] | Got interface: zwlr_foreign_toplevel_manager_v1 (ver 3) [LOG] | Got interface: wp_drm_lease_device_v1 (ver 1) [LOG] | Got interface: zwp_tablet_manager_v2 (ver 1) [LOG] | Got interface: zwp_idle_inhibit_manager_v1 (ver 1) [LOG] | Got interface: zxdg_exporter_v1 (ver 1) [LOG] | Got interface: zxdg_importer_v1 (ver 1) [LOG] | Got interface: zxdg_exporter_v2 (ver 1) [LOG] | Got interface: zxdg_importer_v2 (ver 1) [LOG] | Got interface: zwp_pointer_gestures_v1 (ver 3) [LOG] | Got interface: zwp_text_input_manager_v3 (ver 1) [LOG] | Got interface: zwp_input_method_manager_v2 (ver 1) [LOG] | Got interface: xdg_activation_v1 (ver 1) [LOG] | Got interface: ext_session_lock_manager_v1 (ver 1) [LOG] | Got interface: wp_cursor_shape_manager_v1 (ver 1) [LOG] | Got interface: wp_single_pixel_buffer_manager_v1 (ver 1) [LOG] | Got interface: xwayland_shell_v1 (ver 1) [LOG] | Got interface: hyprland_toplevel_export_manager_v1 (ver 2) [LOG] | Got interface: wp_fractional_scale_manager_v1 (ver 1) [LOG] | Got interface: zwp_text_input_manager_v1 (ver 1) [LOG] | Got interface: hyprland_global_shortcuts_manager_v1 (ver 1) [LOG] [globalshortcuts] registered [LOG] | Got interface: zwlr_screencopy_manager_v1 (ver 3) [LOG] [pipewire] connected [LOG] [screencopy] init successful [LOG] | Got interface: zxdg_output_manager_v1 (ver 3) [LOG] | Got interface: wl_output (ver 4) [LOG] | Got interface: wl_output (ver 4) [LOG] [screencopy] Registered for toplevel export [LOG] [core] dmabufFeedbackMainDevice [TRACE] [core] createGBMDevice: render node /dev/dri/renderD128 [TRACE] [core] dmabufFeedbackFormatTable [TRACE] [core] dmabufFeedbackTrancheTargetDevice [TRACE] [core] dmabufFeedbackTrancheFormats [TRACE] [core] dmabufFeedbackTrancheDone [TRACE] [core] dmabufFeedbackDone [TRACE] [toplevel] New toplevel at 0x55bd4a7977a0 [TRACE] [toplevel] New toplevel at 0x55bd4a797900 [TRACE] [toplevel] New toplevel at 0x55bd4a797a90 [TRACE] [toplevel] toplevel at 0x55bd4a795e20 set title to xdg-desktop-portal-hyprland -v > xdph.log [TRACE] [toplevel] toplevel at 0x55bd4a795e20 set class to kitty [TRACE] [toplevel] toplevel at 0x55bd4a795e80 set title to Google — Mozilla Firefox [TRACE] [toplevel] toplevel at 0x55bd4a795e80 set class to firefox [TRACE] [toplevel] toplevel at 0x55bd4a797810 set title to Wayland to X Recording bridge — Xwayland Video Bridge [TRACE] [toplevel] toplevel at 0x55bd4a797810 set class to xwaylandvideobridge [LOG] Found output name DVI-D-1 [LOG] Found output name HDMI-A-1 [TRACE] [toplevel] New toplevel at 0x55bd4a7a2610 [TRACE] [toplevel] toplevel at 0x55bd4a797870 set class to kitty [TRACE] [toplevel] toplevel at 0x55bd4a797870 set title to zsh [TRACE] [toplevel] toplevel at 0x55bd4a797870 set title to zsh [TRACE] [toplevel] toplevel at 0x55bd4a797870 set title to ~ [TRACE] [toplevel] toplevel at 0x55bd4a797870 set title to obs [LOG] [screencopy] New session: [LOG] [screencopy] | /org/freedesktop/portal/desktop/request/1_40/obs1 [LOG] [screencopy] | /org/freedesktop/portal/desktop/session/1_40/obs1 [LOG] [screencopy] | appid: [TRACE] [internal] Create Session /org/freedesktop/portal/desktop/session/1_40/obs1 [TRACE] [internal] Create Request /org/freedesktop/portal/desktop/request/1_40/obs1 [LOG] [screencopy] SelectSources: [LOG] [screencopy] | /org/freedesktop/portal/desktop/request/1_40/obs2 [LOG] [screencopy] | /org/freedesktop/portal/desktop/session/1_40/obs1 [LOG] [screencopy] | appid: [LOG] [screencopy] option cursor_mode to 2 [LOG] [screencopy] option persist_mode to 2 [LOG] [screencopy] unused option multiple [LOG] [screencopy] unused option types [LOG] [screencopy] restore data invalid / missing, prompting [LOG] execAndGet: WAYLAND_DISPLAY=wayland-1 QT_QPA_PLATFORM="wayland" XCURSOR_SIZE=24 HYPRLAND_INSTANCE_SIGNATURE=3785defaf12b9d99137b2f4c74ab82c51cf733e1_1695230738 XDPH_WINDOW_SHARING_LIST="1249474464[HC>]kitty[HT>]xdg-desktop-portal-hyprland -v > xdph.log[HE>]1249474816[HC>]firefox[HT>]Google — Mozilla Firefox[HE>]1249475216[HC>]xwaylandvideobridge[HT>]Wayland to X Recording bridge — Xwayland Video Bridge[HE>]1249519120[HC>]kitty[HT>]obs[HE>]" hyprland-share-picker 2>&1 [LOG] [sc] Selection: /window:1249474816 [LOG] [screencopy] SHAREDATA returned selection 1 [TRACE] [toplevel] New toplevel at 0x55bd4a7a3040 [TRACE] [toplevel] toplevel at 0x55bd4a7994f0 set class to com.obsproject.Studio [TRACE] [toplevel] toplevel at 0x55bd4a7994f0 set title to OBS 29.1.3-1 - Profile: Untitled - Scenes: Untitled [TRACE] [toplevel] toplevel at 0x55bd4a7994f0 set title to OBS 29.1.3-1 - Profile: Untitled - Scenes: Untitled [TRACE] [toplevel] New toplevel at 0x55bd4a79caa0 [TRACE] [toplevel] toplevel at 0x55bd4a7990f0 set class to hyprland-share-picker [TRACE] [toplevel] toplevel at 0x55bd4a7990f0 set title to MainPicker [TRACE] [toplevel] toplevel at 0x55bd4a7990f0 set title to MainPicker [TRACE] [toplevel] toplevel at 0x55bd4a7990f0 closed [LOG] [screencopy] Start: [LOG] [screencopy] | /org/freedesktop/portal/desktop/request/1_40/obs3 [LOG] [screencopy] | /org/freedesktop/portal/desktop/session/1_40/obs1 [LOG] [screencopy] | appid: [LOG] [screencopy] | parent_window: [TRACE] [screencopy] frame callbacks initialized [TRACE] [sc] hlOnBuffer for 0x55bd4a7981f0 [TRACE] [sc] hlOnDmabuf for 0x55bd4a7981f0 [TRACE] [sc] hlOnBufferDone for 0x55bd4a7981f0 [TRACE] [sc] hlOnBufferDone: no stream [TRACE] [pw] New stream name xdph-streaming-001292 [TRACE] [pw] build_modifierlist: count 14 [LOG] [pw] Building modifiers for dma [TRACE] [pw] pwStreamStateChange on 0x55bd4a7a3120 from unconnected to connecting, node id 4294967295 [TRACE] [pw] Stream got nodeid 4294967295 [TRACE] [pw] pwStreamStateChange on 0x55bd4a7a3120 from connecting to paused, node id 95 [LOG] [screencopy] Sharing initialized [TRACE] [sc] queued frame in 16.666666666666668ms [TRACE] [pw] pwStreamParamChanged on 0x55bd4a7a3120 [TRACE] [pw] invalid call in pwStreamParamChanged [TRACE] [pw] pwStreamParamChanged on 0x55bd4a7a3120 [TRACE] [pipewire] pw requested dmabuf [TRACE] [pw] don't fixate [TRACE] [pw] build_modifierlist: count 14 [LOG] [pw] Building modifiers for dma [TRACE] [pw] Format fixated: [TRACE] [pw] | buffer_type DMA (No fixate) [TRACE] [pw] | format: 8 [TRACE] [pw] | modifier: 0 [TRACE] [pw] | size: 2548x1051 [TRACE] [pw] | framerate 60 [TRACE] [pw] pwStreamParamChanged on 0x55bd4a7a3120 [TRACE] [pipewire] pw requested dmabuf [TRACE] [pw] Format renegotiated: [TRACE] [pw] | buffer_type DMA [TRACE] [pw] | format: 8 [TRACE] [pw] | modifier: 0 [TRACE] [pw] | size: 2548x1051 [TRACE] [pw] | framerate 60 [TRACE] [pw] pwStreamAddBuffer with 0x55bd4a7a3738 on 0x55bd4a7a3120 [TRACE] [pw] createBuffer: type dma [TRACE] [pw] buffer datas 1 [TRACE] [pw] pwStreamAddBuffer with 0x55bd4a7a3768 on 0x55bd4a7a3120 [TRACE] [pw] createBuffer: type dma [TRACE] [pw] buffer datas 1 [TRACE] [pw] pwStreamAddBuffer with 0x55bd4a7a3798 on 0x55bd4a7a3120 [TRACE] [pw] createBuffer: type dma [TRACE] [pw] buffer datas 1 [TRACE] [pw] pwStreamAddBuffer with 0x55bd4a7a37c8 on 0x55bd4a7a3120 [TRACE] [pw] createBuffer: type dma [TRACE] [pw] buffer datas 1 [TRACE] [pw] pwStreamStateChange on 0x55bd4a7a3120 from paused to streaming, node id 95 [TRACE] [screencopy] frame callbacks initialized [TRACE] [sc] hlOnBuffer for 0x55bd4a7981f0 [TRACE] [sc] hlOnDmabuf for 0x55bd4a7981f0 [TRACE] [sc] hlOnBufferDone for 0x55bd4a7981f0 [TRACE] [sc] pw format 8 size 2548x1051 [TRACE] [sc] hl format 875713112 size 2548x1051 [TRACE] [sc] wlrOnBufferDone: dequeue, no current buffer [TRACE] [pw] dequeue on 0x55bd4a7a3120 [TRACE] [sc] wlr frame copied [TRACE] [sc] hlOnFailed for 0x55bd4a7981f0 [TRACE] [toplevel] New toplevel at 0x55bd4a7a9d10 [TRACE] [toplevel] toplevel at 0x55bd4a7a8910 set class to com.obsproject.Studio [TRACE] [toplevel] toplevel at 0x55bd4a7a8910 set title to Confirm Remove [TRACE] [toplevel] toplevel at 0x55bd4a7a8910 set title to Confirm Remove [TRACE] [internal] Close Session 0x55bd4a797a10 [TRACE] [toplevel] toplevel at 0x55bd4a7a8910 closed [TRACE] [pw] pwStreamStateChange on 0x55bd4a7a3120 from streaming to paused, node id 95 [TRACE] [pw] pwStreamRemoveBuffer with 0x55bd4a7a3738 on 0x55bd4a7a3120 [TRACE] [pw] pwStreamRemoveBuffer with 0x55bd4a7a3768 on 0x55bd4a7a3120 [TRACE] [pw] pwStreamRemoveBuffer with 0x55bd4a7a3798 on 0x55bd4a7a3120 [TRACE] [pw] pwStreamRemoveBuffer with 0x55bd4a7a37c8 on 0x55bd4a7a3120 [TRACE] [pw] pwStreamParamChanged on 0x55bd4a7a3120 [TRACE] [pw] invalid call in pwStreamParamChanged [TRACE] [pw] pwStreamParamChanged on 0x55bd4a7a3120 [TRACE] [pw] invalid call in pwStreamParamChanged [TRACE] [toplevel] New toplevel at 0x55bd4a7a9730 [TRACE] [toplevel] toplevel at 0x55bd4a7a7870 set class to com.obsproject.Studio [TRACE] [toplevel] toplevel at 0x55bd4a7a7870 set title to Create/Select Source [TRACE] [toplevel] toplevel at 0x55bd4a7a7870 set title to Create/Select Source [LOG] [screencopy] New session: [LOG] [screencopy] | /org/freedesktop/portal/desktop/request/1_40/obs4 [LOG] [screencopy] | /org/freedesktop/portal/desktop/session/1_40/obs2 [LOG] [screencopy] | appid: [TRACE] [internal] Create Session /org/freedesktop/portal/desktop/session/1_40/obs2 [TRACE] [internal] Create Request /org/freedesktop/portal/desktop/request/1_40/obs4 [TRACE] [toplevel] toplevel at 0x55bd4a7a7870 closed [LOG] [screencopy] SelectSources: [LOG] [screencopy] | /org/freedesktop/portal/desktop/request/1_40/obs5 [LOG] [screencopy] | /org/freedesktop/portal/desktop/session/1_40/obs2 [LOG] [screencopy] | appid: [LOG] [screencopy] option cursor_mode to 2 [LOG] [screencopy] option persist_mode to 2 [LOG] [screencopy] unused option multiple [LOG] [screencopy] unused option types [LOG] [screencopy] restore data invalid / missing, prompting [LOG] execAndGet: WAYLAND_DISPLAY=wayland-1 QT_QPA_PLATFORM="wayland" XCURSOR_SIZE=24 HYPRLAND_INSTANCE_SIGNATURE=3785defaf12b9d99137b2f4c74ab82c51cf733e1_1695230738 XDPH_WINDOW_SHARING_LIST="1249474464[HC>]kitty[HT>]xdg-desktop-portal-hyprland -v > xdph.log[HE>]1249474816[HC>]firefox[HT>]Google — Mozilla Firefox[HE>]1249475216[HC>]xwaylandvideobridge[HT>]Wayland to X Recording bridge — Xwayland Video Bridge[HE>]1249519120[HC>]kitty[HT>]obs[HE>]1249521728[HC>]com.obsproject.Studio[HT>]OBS 29.1.3-1 - Profile: Untitled - Scenes: Untitled[HE>]" hyprland-share-picker 2>&1 [LOG] [sc] Selection: /screen:DVI-D-1 [LOG] [screencopy] SHAREDATA returned selection 0 [TRACE] [toplevel] New toplevel at 0x55bd4a7a7c30 [TRACE] [toplevel] toplevel at 0x55bd4a7a7870 set class to com.obsproject.Studio [TRACE] [toplevel] toplevel at 0x55bd4a7a7870 set title to Properties for 'Screen Capture (PipeWire)' [TRACE] [toplevel] toplevel at 0x55bd4a7a7870 set title to Properties for 'Screen Capture (PipeWire)' [TRACE] [toplevel] New toplevel at 0x55bd4a7a84c0 [TRACE] [toplevel] toplevel at 0x55bd4a7a7970 set class to hyprland-share-picker [TRACE] [toplevel] toplevel at 0x55bd4a7a7970 set title to MainPicker [TRACE] [toplevel] toplevel at 0x55bd4a7a7970 set title to MainPicker [TRACE] [toplevel] toplevel at 0x55bd4a7a7970 closed [TRACE] [pw] pwStreamParamChanged on 0x55bd4a7a3120 [TRACE] [pw] invalid call in pwStreamParamChanged [TRACE] [pw] pwStreamParamChanged on 0x55bd4a7a3120 [TRACE] [pw] invalid call in pwStreamParamChanged [LOG] [screencopy] Start: [LOG] [screencopy] | /org/freedesktop/portal/desktop/request/1_40/obs6 [LOG] [screencopy] | /org/freedesktop/portal/desktop/session/1_40/obs2 [LOG] [screencopy] | appid: [LOG] [screencopy] | parent_window: [TRACE] [screencopy] frame callbacks initialized [TRACE] [sc] wlrOnBuffer for 0x55bd4a79dc00 [TRACE] [sc] wlrOnDmabuf for 0x55bd4a79dc00 [TRACE] [sc] wlrOnBufferDone for 0x55bd4a79dc00 [TRACE] [sc] wlrOnBufferDone: no stream [TRACE] [pw] New stream name xdph-streaming-579155 [TRACE] [pw] build_modifierlist: count 14 [LOG] [pw] Building modifiers for dma [TRACE] [pw] pwStreamStateChange on 0x55bd4a7aa080 from unconnected to connecting, node id 4294967295 [TRACE] [pw] Stream got nodeid 4294967295 [TRACE] [pw] pwStreamStateChange on 0x55bd4a7aa080 from connecting to paused, node id 93 [LOG] [screencopy] Sharing initialized [TRACE] [sc] queued frame in 16.666666666666668ms [TRACE] [pw] pwStreamParamChanged on 0x55bd4a7aa080 [TRACE] [pw] invalid call in pwStreamParamChanged [TRACE] [pw] pwStreamParamChanged on 0x55bd4a7aa080 [TRACE] [pipewire] pw requested dmabuf [TRACE] [pw] don't fixate [TRACE] [pw] build_modifierlist: count 14 [LOG] [pw] Building modifiers for dma [TRACE] [pw] Format fixated: [TRACE] [pw] | buffer_type DMA (No fixate) [TRACE] [pw] | format: 8 [TRACE] [pw] | modifier: 0 [TRACE] [pw] | size: 1920x1080 [TRACE] [pw] | framerate 60 [TRACE] [pw] pwStreamParamChanged on 0x55bd4a7aa080 [TRACE] [pipewire] pw requested dmabuf [TRACE] [pw] Format renegotiated: [TRACE] [pw] | buffer_type DMA [TRACE] [pw] | format: 8 [TRACE] [pw] | modifier: 0 [TRACE] [pw] | size: 1920x1080 [TRACE] [pw] | framerate 60 [TRACE] [pw] pwStreamAddBuffer with 0x55bd4a7abda8 on 0x55bd4a7aa080 [TRACE] [pw] createBuffer: type dma [TRACE] [pw] buffer datas 1 [TRACE] [pw] pwStreamAddBuffer with 0x55bd4a7abdd8 on 0x55bd4a7aa080 [TRACE] [pw] createBuffer: type dma [TRACE] [pw] buffer datas 1 [TRACE] [pw] pwStreamAddBuffer with 0x55bd4a7abe08 on 0x55bd4a7aa080 [TRACE] [pw] createBuffer: type dma [TRACE] [pw] buffer datas 1 [TRACE] [pw] pwStreamAddBuffer with 0x55bd4a7abe38 on 0x55bd4a7aa080 [TRACE] [pw] createBuffer: type dma [TRACE] [pw] buffer datas 1 [TRACE] [pw] pwStreamStateChange on 0x55bd4a7aa080 from paused to streaming, node id 93 [TRACE] [screencopy] frame callbacks initialized [TRACE] [sc] wlrOnBuffer for 0x55bd4a79dc00 [TRACE] [sc] wlrOnDmabuf for 0x55bd4a79dc00 [TRACE] [sc] wlrOnBufferDone for 0x55bd4a79dc00 [TRACE] [sc] pw format 8 size 1920x1080 [TRACE] [sc] wlr format 875713112 size 1920x1080 [TRACE] [sc] wlrOnBufferDone: dequeue, no current buffer [TRACE] [pw] dequeue on 0x55bd4a7aa080 [TRACE] [sc] wlr frame copied [TRACE] [sc] wlrOnFailed for 0x55bd4a79dc00 [TRACE] [toplevel] toplevel at 0x55bd4a7a7870 closed [TRACE] [toplevel] New toplevel at 0x55bd4a7b1dc0 [TRACE] [toplevel] toplevel at 0x55bd4a7b1210 set class to com.obsproject.Studio [TRACE] [toplevel] toplevel at 0x55bd4a7b1210 set title to Confirm Remove [TRACE] [toplevel] toplevel at 0x55bd4a7b1210 set title to Confirm Remove [TRACE] [internal] Close Session 0x55bd4a7a98f0 [TRACE] [toplevel] toplevel at 0x55bd4a7b1210 closed [TRACE] [pw] pwStreamStateChange on 0x55bd4a7aa080 from streaming to paused, node id 93 [TRACE] [pw] pwStreamRemoveBuffer with 0x55bd4a7abda8 on 0x55bd4a7aa080 [TRACE] [pw] pwStreamRemoveBuffer with 0x55bd4a7abdd8 on 0x55bd4a7aa080 [TRACE] [pw] pwStreamRemoveBuffer with 0x55bd4a7abe08 on 0x55bd4a7aa080 [TRACE] [pw] pwStreamRemoveBuffer with 0x55bd4a7abe38 on 0x55bd4a7aa080 [TRACE] [pw] pwStreamParamChanged on 0x55bd4a7aa080 [TRACE] [pw] invalid call in pwStreamParamChanged [TRACE] [pw] pwStreamParamChanged on 0x55bd4a7aa080 [TRACE] [pw] invalid call in pwStreamParamChanged ```
obs log ``` debug: Found portal inhibitor debug: Attempted path: share/obs/obs-studio/locale/en-US.ini debug: Attempted path: /usr/share/obs/obs-studio/locale/en-US.ini debug: Attempted path: share/obs/obs-studio/locale.ini debug: Attempted path: /usr/share/obs/obs-studio/locale.ini debug: Attempted path: share/obs/obs-studio/themes/Yami.qss debug: Attempted path: /usr/share/obs/obs-studio/themes/Yami.qss info: Platform: Wayland info: CPU Name: Intel(R) Core(TM) i7-4770K CPU @ 3.50GHz info: CPU Speed: 3400.454MHz info: Physical Cores: 4, Logical Cores: 8 info: Physical Memory: 11882MB Total, 9013MB Free info: Kernel Version: Linux 6.5.3-zen1-1-zen info: Distribution: "Arch Linux" Unknown info: Desktop Environment: Hyprland (Hyprland) info: Session Type: wayland info: Qt Version: 6.5.2 (runtime), 6.5.1 (compiled) info: Portable mode: false info: OBS 29.1.3-1 (linux) info: --------------------------------- info: --------------------------------- info: audio settings reset: samples per sec: 48000 speakers: 3 max buffering: 960 milliseconds buffering type: dynamically increasing info: --------------------------------- info: Initializing OpenGL... info: Using EGL/Wayland info: Initialized EGL 1.5 info: Loading up OpenGL on adapter NVIDIA Corporation NVIDIA GeForce GTX 1060 6GB/PCIe/SSE2 info: OpenGL loaded successfully, version 3.3.0 NVIDIA 535.104.05, shading language 3.30 NVIDIA via Cg compiler info: --------------------------------- info: video settings reset: base resolution: 1920x1080 output resolution: 1920x1080 downscale filter: Lanczos fps: 60/1 format: NV12 YUV mode: sRGB/Partial info: NV12 texture support not available info: P010 texture support not available info: Audio monitoring device: name: Monitor of Sound Core3D [Sound Blaster Recon3D / Z-Series] (SB1570 SB Audigy Fx) Analog Stereo id: alsa_output.pci-0000_05_00.0.analog-stereo.monitor info: --------------------------------- warning: Failed to load 'en-US' text for module: 'decklink-captions.so' warning: Failed to load 'en-US' text for module: 'decklink-output-ui.so' libDeckLinkAPI.so: cannot open shared object file: No such file or directory warning: A DeckLink iterator could not be created. The DeckLink drivers may not be installed warning: Failed to initialize module 'decklink.so' info: [pipewire] Available captures: info: [pipewire] - Desktop capture info: [pipewire] - Window capture info: NVENC supported info: VAAPI: API version 1.21 info: FFmpeg VAAPI H264 encoding supported info: FFmpeg VAAPI HEVC encoding supported info: --------------------------------- info: Loaded Modules: info: text-freetype2.so info: rtmp-services.so info: obs-x264.so info: obs-vst.so info: obs-transitions.so info: obs-outputs.so info: obs-libfdk.so info: obs-filters.so info: obs-ffmpeg.so info: linux-v4l2.so info: linux-pulseaudio.so info: linux-pipewire.so info: linux-pipewire-audio.so info: linux-jack.so info: linux-capture.so info: linux-alsa.so info: image-source.so info: frontend-tools.so info: decklink-output-ui.so info: decklink-captions.so info: --------------------------------- QWidget::setTabOrder: 'first' and 'second' must be in the same window info: ==== Startup complete =============================================== info: All scene data cleared info: ------------------------------------------------ info: Switched to scene 'Scene 2' info: ------------------------------------------------ info: Loaded scenes: info: - scene 'Scene 2': info: ------------------------------------------------ info: PipeWire initialized info: User added source 'Screen Capture (PipeWire)' (pipewire-desktop-capture-source) to scene 'Scene 2' info: [pipewire] Screencast session created info: [pipewire] Asking for desktop info: [pipewire] desktop selected, setting up screencast info: [pipewire] Server version: 0.3.80 info: [pipewire] Library version: 0.3.80 info: [pipewire] Header version: 0.3.72 info: [pipewire] Created stream 0x561e63afb310 info: [pipewire] Stream 0x561e63afb310 state: "connecting" (error: none) info: [pipewire] Playing stream 0x561e63afb310 info: [pipewire] Stream 0x561e63afb310 state: "paused" (error: none) info: [pipewire] Negotiated format: info: [pipewire] Format: 8 (Spa:Enum:VideoFormat:BGRx) info: [pipewire] Modifier: 0x0 info: [pipewire] Size: 1920x1080 info: [pipewire] Framerate: 0/1 info: [pipewire] Negotiated format: info: [pipewire] Format: 8 (Spa:Enum:VideoFormat:BGRx) info: [pipewire] Modifier: 0x0 info: [pipewire] Size: 1920x1080 info: [pipewire] Framerate: 0/1 info: [pipewire] Stream 0x561e63afb310 state: "streaming" (error: none) info: ==== Shutting down ================================================== 'loop->recurse > 0' failed at ../pipewire/src/pipewire/thread-loop.c:426 pw_thread_loop_wait() info: [pipewire] Stream 0x561e63afb310 state: "paused" (error: none) info: [pipewire] Stream 0x561e63afb310 state: "unconnected" (error: none) info: All scene data cleared info: ------------------------------------------------ info: [Scripting] Total detached callbacks: 0 info: Freeing OBS context data info: == Profiler Results ============================= info: run_program_init: 592.004 ms info: ┣OBSApp::AppInit: 3.049 ms info: ┃ ┗OBSApp::InitLocale: 0.653 ms info: ┗OBSApp::OBSInit: 544.004 ms info: ┣obs_startup: 3.463 ms info: ┗OBSBasic::OBSInit: 484.675 ms info: ┣OBSBasic::InitBasicConfig: 0.118 ms info: ┣OBSBasic::ResetAudio: 0.187 ms info: ┣OBSBasic::ResetVideo: 50.974 ms info: ┣OBSBasic::InitOBSCallbacks: 0.003 ms info: ┣OBSBasic::InitHotkeys: 0.021 ms info: ┣obs_load_all_modules2: 368.884 ms info: ┃ ┣obs_init_module(decklink-captions.so): 0 ms info: ┃ ┣obs_init_module(decklink-output-ui.so): 0 ms info: ┃ ┣obs_init_module(decklink.so): 0.081 ms info: ┃ ┣obs_init_module(frontend-tools.so): 22.711 ms info: ┃ ┣obs_init_module(image-source.so): 0.007 ms info: ┃ ┣obs_init_module(linux-alsa.so): 0.004 ms info: ┃ ┣obs_init_module(linux-capture.so): 0 ms info: ┃ ┣obs_init_module(linux-jack.so): 0.002 ms info: ┃ ┣obs_init_module(linux-pipewire-audio.so): 0.011 ms info: ┃ ┣obs_init_module(linux-pipewire.so): 1.16 ms info: ┃ ┣obs_init_module(linux-pulseaudio.so): 0.007 ms info: ┃ ┣obs_init_module(linux-v4l2.so): 0.108 ms info: ┃ ┣obs_init_module(obs-ffmpeg.so): 191.733 ms info: ┃ ┃ ┗nvenc_check: 0.564 ms info: ┃ ┣obs_init_module(obs-filters.so): 0.024 ms info: ┃ ┣obs_init_module(obs-libfdk.so): 0.002 ms info: ┃ ┣obs_init_module(obs-outputs.so): 0.006 ms info: ┃ ┣obs_init_module(obs-transitions.so): 0.013 ms info: ┃ ┣obs_init_module(obs-vst.so): 0.004 ms info: ┃ ┣obs_init_module(obs-x264.so): 0.002 ms info: ┃ ┣obs_init_module(rtmp-services.so): 1.04 ms info: ┃ ┗obs_init_module(text-freetype2.so): 0.012 ms info: ┣OBSBasic::InitService: 0.038 ms info: ┣OBSBasic::ResetOutputs: 0.244 ms info: ┣OBSBasic::CreateHotkeys: 0.029 ms info: ┣OBSBasic::InitPrimitives: 0.142 ms info: ┗OBSBasic::Load: 30.473 ms info: obs_hotkey_thread(25 ms): min=0 ms, median=0 ms, max=0.001 ms, 99th percentile=0.001 ms, 100% below 25 ms info: audio_thread(Audio): min=0.01 ms, median=0.032 ms, max=0.184 ms, 99th percentile=0.08 ms info: obs_graphics_thread(16.6667 ms): min=0.125 ms, median=0.911 ms, max=38.814 ms, 99th percentile=2.907 ms, 99.9061% below 16.667 ms info: ┣tick_sources: min=0.001 ms, median=0.007 ms, max=36.906 ms, 99th percentile=0.013 ms info: ┣output_frame: min=0.055 ms, median=0.161 ms, max=1.442 ms, 99th percentile=0.292 ms info: ┃ ┗gs_context(video->graphics): min=0.055 ms, median=0.161 ms, max=1.441 ms, 99th percentile=0.291 ms info: ┃ ┣render_video: min=0.035 ms, median=0.098 ms, max=1.415 ms, 99th percentile=0.169 ms info: ┃ ┃ ┗render_main_texture: min=0.028 ms, median=0.08 ms, max=1.405 ms, 99th percentile=0.13 ms info: ┃ ┗gs_flush: min=0.004 ms, median=0.013 ms, max=1.231 ms, 99th percentile=0.052 ms info: ┗render_displays: min=0.01 ms, median=0.472 ms, max=7.751 ms, 99th percentile=1.562 ms info: ================================================= info: == Profiler Time Between Calls ================== info: obs_hotkey_thread(25 ms): min=25.032 ms, median=25.1 ms, max=25.995 ms, 99.8594% within ±2% of 25 ms (0% lower, 0.140647% higher) info: obs_graphics_thread(16.6667 ms): min=11.169 ms, median=16.667 ms, max=38.818 ms, 99.4361% within ±2% of 16.667 ms (0.281955% lower, 0.281955% higher) info: ================================================= info: Number of memory leaks: 0 ```

tell me if you need something else.

vaxerski commented 1 year ago

euweweuyeyegehehheheheehehahahahahaha

vaxerski commented 1 year ago

patch.txt try

pbosab commented 1 year ago

patch.txt try

this is the log: ``` [LOG] Initializing xdph... [LOG] XDG_CURRENT_DESKTOP set to Hyprland [LOG] Gathering exported interfaces [LOG] | Got interface: wl_shm (ver 1) [LOG] | Got interface: wl_drm (ver 2) [LOG] | Got interface: zwp_linux_dmabuf_v1 (ver 4) [LOG] | Got interface: wl_compositor (ver 6) [LOG] | Got interface: wl_subcompositor (ver 1) [LOG] | Got interface: wl_data_device_manager (ver 3) [LOG] | Got interface: zwlr_export_dmabuf_manager_v1 (ver 1) [LOG] | Got interface: zwlr_data_control_manager_v1 (ver 2) [LOG] | Got interface: zwp_primary_selection_device_manager_v1 (ver 1) [LOG] | Got interface: wp_viewporter (ver 1) [LOG] | Got interface: zwlr_gamma_control_manager_v1 (ver 1) [LOG] | Got interface: zwlr_output_power_manager_v1 (ver 1) [LOG] | Got interface: xdg_wm_base (ver 5) [LOG] | Got interface: wl_seat (ver 8) [LOG] | Got interface: wp_presentation (ver 1) [LOG] | Got interface: org_kde_kwin_idle (ver 1) [LOG] | Got interface: ext_idle_notifier_v1 (ver 1) [LOG] | Got interface: zwlr_layer_shell_v1 (ver 4) [LOG] | Got interface: org_kde_kwin_server_decoration_manager (ver 1) [LOG] | Got interface: zxdg_decoration_manager_v1 (ver 1) [LOG] | Got interface: zwlr_output_manager_v1 (ver 4) [LOG] | Got interface: zwlr_input_inhibit_manager_v1 (ver 1) [LOG] | Got interface: zwp_keyboard_shortcuts_inhibit_manager_v1 (ver 1) [LOG] | Got interface: zwp_pointer_constraints_v1 (ver 1) [LOG] | Got interface: zwp_relative_pointer_manager_v1 (ver 1) [LOG] | Got interface: zwp_virtual_keyboard_manager_v1 (ver 1) [LOG] | Got interface: zwlr_virtual_pointer_manager_v1 (ver 2) [LOG] | Got interface: zwlr_foreign_toplevel_manager_v1 (ver 3) [LOG] | Got interface: wp_drm_lease_device_v1 (ver 1) [LOG] | Got interface: zwp_tablet_manager_v2 (ver 1) [LOG] | Got interface: zwp_idle_inhibit_manager_v1 (ver 1) [LOG] | Got interface: zxdg_exporter_v1 (ver 1) [LOG] | Got interface: zxdg_importer_v1 (ver 1) [LOG] | Got interface: zxdg_exporter_v2 (ver 1) [LOG] | Got interface: zxdg_importer_v2 (ver 1) [LOG] | Got interface: zwp_pointer_gestures_v1 (ver 3) [LOG] | Got interface: zwp_text_input_manager_v3 (ver 1) [LOG] | Got interface: zwp_input_method_manager_v2 (ver 1) [LOG] | Got interface: xdg_activation_v1 (ver 1) [LOG] | Got interface: ext_session_lock_manager_v1 (ver 1) [LOG] | Got interface: wp_cursor_shape_manager_v1 (ver 1) [LOG] | Got interface: wp_single_pixel_buffer_manager_v1 (ver 1) [LOG] | Got interface: xwayland_shell_v1 (ver 1) [LOG] | Got interface: hyprland_toplevel_export_manager_v1 (ver 2) [LOG] | Got interface: wp_fractional_scale_manager_v1 (ver 1) [LOG] | Got interface: zwp_text_input_manager_v1 (ver 1) [LOG] | Got interface: hyprland_global_shortcuts_manager_v1 (ver 1) [LOG] [globalshortcuts] registered [LOG] | Got interface: zwlr_screencopy_manager_v1 (ver 3) [LOG] [pipewire] connected [LOG] [screencopy] init successful [LOG] | Got interface: zxdg_output_manager_v1 (ver 3) [LOG] | Got interface: wl_output (ver 4) [LOG] | Got interface: wl_output (ver 4) [LOG] [screencopy] Registered for toplevel export [LOG] [core] dmabufFeedbackMainDevice [TRACE] [core] createGBMDevice: render node /dev/dri/renderD128 [TRACE] [core] dmabufFeedbackFormatTable [TRACE] [core] dmabufFeedbackTrancheTargetDevice [TRACE] [core] dmabufFeedbackTrancheFormats [TRACE] [core] dmabufFeedbackTrancheDone [TRACE] [core] dmabufFeedbackDone [TRACE] [toplevel] New toplevel at 0x55e1fc5e77a0 [TRACE] [toplevel] New toplevel at 0x55e1fc5e7900 [TRACE] [toplevel] New toplevel at 0x55e1fc5e7a90 [TRACE] [toplevel] toplevel at 0x55e1fc5e5e20 set title to ~ [TRACE] [toplevel] toplevel at 0x55e1fc5e5e20 set class to kitty [TRACE] [toplevel] toplevel at 0x55e1fc5e5e80 set title to xdg-desktop-portal-hyprland -v > xdph.log [TRACE] [toplevel] toplevel at 0x55e1fc5e5e80 set class to kitty [TRACE] [toplevel] toplevel at 0x55e1fc5e7810 set title to Wayland to X Recording bridge — Xwayland Video Bridge [TRACE] [toplevel] toplevel at 0x55e1fc5e7810 set class to xwaylandvideobridge [LOG] Found output name DVI-D-1 [LOG] Found output name HDMI-A-1 [TRACE] [toplevel] toplevel at 0x55e1fc5e5e20 set title to obs [TRACE] [toplevel] New toplevel at 0x55e1fc5e9890 [TRACE] [toplevel] toplevel at 0x55e1fc5e71c0 set class to com.obsproject.Studio [TRACE] [toplevel] toplevel at 0x55e1fc5e71c0 set title to OBS 29.1.3-1 - Profile: Untitled - Scenes: Untitled [TRACE] [toplevel] toplevel at 0x55e1fc5e71c0 set title to OBS 29.1.3-1 - Profile: Untitled - Scenes: Untitled [TRACE] [toplevel] New toplevel at 0x55e1fc5e70e0 [TRACE] [toplevel] toplevel at 0x55e1fc5f25f0 set class to com.obsproject.Studio [TRACE] [toplevel] toplevel at 0x55e1fc5f25f0 set title to Create/Select Source [TRACE] [toplevel] toplevel at 0x55e1fc5f25f0 set title to Create/Select Source [LOG] [screencopy] New session: [LOG] [screencopy] | /org/freedesktop/portal/desktop/request/1_153/obs1 [LOG] [screencopy] | /org/freedesktop/portal/desktop/session/1_153/obs1 [LOG] [screencopy] | appid: [TRACE] [internal] Create Session /org/freedesktop/portal/desktop/session/1_153/obs1 [TRACE] [internal] Create Request /org/freedesktop/portal/desktop/request/1_153/obs1 [TRACE] [toplevel] toplevel at 0x55e1fc5f25f0 closed [LOG] [screencopy] SelectSources: [LOG] [screencopy] | /org/freedesktop/portal/desktop/request/1_153/obs2 [LOG] [screencopy] | /org/freedesktop/portal/desktop/session/1_153/obs1 [LOG] [screencopy] | appid: [LOG] [screencopy] option cursor_mode to 2 [LOG] [screencopy] option persist_mode to 2 [LOG] [screencopy] unused option multiple [LOG] [screencopy] unused option types [LOG] [screencopy] restore data invalid / missing, prompting [LOG] execAndGet: WAYLAND_DISPLAY=wayland-1 QT_QPA_PLATFORM="wayland" XCURSOR_SIZE=24 HYPRLAND_INSTANCE_SIGNATURE=0dbd9970031940b50f9cce4c88989c2830d2a15f_1695235151 XDPH_WINDOW_SHARING_LIST="4234049440[HC>]kitty[HT>]obs[HE>]4234049792[HC>]kitty[HT>]xdg-desktop-portal-hyprland -v > xdph.log[HE>]4234050192[HC>]xwaylandvideobridge[HT>]Wayland to X Recording bridge — Xwayland Video Bridge[HE>]4234057872[HC>]com.obsproject.Studio[HT>]OBS 29.1.3-1 - Profile: Untitled - Scenes: Untitled[HE>]" hyprland-share-picker 2>&1 [LOG] [sc] Selection: /screen:DVI-D-1 [LOG] [screencopy] SHAREDATA returned selection 0 [TRACE] [toplevel] New toplevel at 0x55e1fc5f31d0 [TRACE] [toplevel] toplevel at 0x55e1fc5f25f0 set class to com.obsproject.Studio [TRACE] [toplevel] toplevel at 0x55e1fc5f25f0 set title to Properties for 'Screen Capture (PipeWire)' [TRACE] [toplevel] toplevel at 0x55e1fc5f25f0 set title to Properties for 'Screen Capture (PipeWire)' [TRACE] [toplevel] New toplevel at 0x55e1fc5f2c00 [TRACE] [toplevel] toplevel at 0x55e1fc5e8910 set class to hyprland-share-picker [TRACE] [toplevel] toplevel at 0x55e1fc5e8910 set title to MainPicker [TRACE] [toplevel] toplevel at 0x55e1fc5e8910 set title to MainPicker [TRACE] [toplevel] toplevel at 0x55e1fc5e8910 closed [LOG] [screencopy] Start: [LOG] [screencopy] | /org/freedesktop/portal/desktop/request/1_153/obs3 [LOG] [screencopy] | /org/freedesktop/portal/desktop/session/1_153/obs1 [LOG] [screencopy] | appid: [LOG] [screencopy] | parent_window: [TRACE] [screencopy] frame callbacks initialized [TRACE] [sc] wlrOnBuffer for 0x55e1fc5e9a10 [TRACE] [sc] wlrOnDmabuf for 0x55e1fc5e9a10 [TRACE] [sc] wlrOnBufferDone for 0x55e1fc5e9a10 [TRACE] [sc] wlrOnBufferDone: no stream [TRACE] [pw] New stream name xdph-streaming-577316 [TRACE] [pw] build_modifierlist: count 14 [LOG] [pw] Building modifiers for dma [TRACE] [pw] pwStreamStateChange on 0x55e1fc5f2c70 from unconnected to connecting, node id 4294967295 [TRACE] [pw] Stream got nodeid 4294967295 [TRACE] [pw] pwStreamStateChange on 0x55e1fc5f2c70 from connecting to paused, node id 91 [LOG] [screencopy] Sharing initialized [TRACE] [sc] queued frame in 16.666666666666668ms [TRACE] [pw] pwStreamParamChanged on 0x55e1fc5f2c70 [TRACE] [pw] invalid call in pwStreamParamChanged [TRACE] [pw] pwStreamParamChanged on 0x55e1fc5f2c70 [TRACE] [pipewire] pw requested dmabuf [TRACE] [pw] don't fixate [TRACE] [pw] build_modifierlist: count 14 [LOG] [pw] Building modifiers for dma [TRACE] [pw] Format fixated: [TRACE] [pw] | buffer_type DMA (No fixate) [TRACE] [pw] | format: 8 [TRACE] [pw] | modifier: 0 [TRACE] [pw] | size: 1920x1080 [TRACE] [pw] | framerate 60 [TRACE] [pw] pwStreamParamChanged on 0x55e1fc5f2c70 [TRACE] [pipewire] pw requested dmabuf [TRACE] [pw] Format renegotiated: [TRACE] [pw] | buffer_type DMA [TRACE] [pw] | format: 8 [TRACE] [pw] | modifier: 0 [TRACE] [pw] | size: 1920x1080 [TRACE] [pw] | framerate 60 [TRACE] [pw] pwStreamAddBuffer with 0x55e1fc5f3918 on 0x55e1fc5f2c70 [TRACE] [pw] createBuffer: type dma [TRACE] [pw] buffer datas 1 [TRACE] [pw] pwStreamAddBuffer with 0x55e1fc5f3948 on 0x55e1fc5f2c70 [TRACE] [pw] createBuffer: type dma [TRACE] [pw] buffer datas 1 [TRACE] [pw] pwStreamAddBuffer with 0x55e1fc5f3978 on 0x55e1fc5f2c70 [TRACE] [pw] createBuffer: type dma [TRACE] [pw] buffer datas 1 [TRACE] [pw] pwStreamAddBuffer with 0x55e1fc5f39a8 on 0x55e1fc5f2c70 [TRACE] [pw] createBuffer: type dma [TRACE] [pw] buffer datas 1 [TRACE] [pw] pwStreamStateChange on 0x55e1fc5f2c70 from paused to streaming, node id 91 [TRACE] [screencopy] frame callbacks initialized [TRACE] [sc] wlrOnBuffer for 0x55e1fc5e9a10 [TRACE] [sc] wlrOnDmabuf for 0x55e1fc5e9a10 [TRACE] [sc] wlrOnBufferDone for 0x55e1fc5e9a10 [TRACE] [sc] pw format 8 size 1920x1080 [TRACE] [sc] wlr format 875713112 size 1920x1080 [TRACE] [sc] wlrOnBufferDone: dequeue, no current buffer [TRACE] [pw] dequeue on 0x55e1fc5f2c70 [TRACE] [sc] wlr frame copied [ERR] [sc] wlrOnFailed for 0x55e1fc5e9a10 [TRACE] [core] adding timer for 16.666666ms [TRACE] [core] got timer event ... ```

and then keep repeating

[TRACE] [screencopy] frame callbacks initialized
[TRACE] [core] calling timer 0x55e1fc5e83f0
[TRACE] [sc] wlrOnBuffer for 0x55e1fc5e9a10
[TRACE] [sc] wlrOnDmabuf for 0x55e1fc5e9a10
[TRACE] [sc] wlrOnBufferDone for 0x55e1fc5e9a10
[TRACE] [sc] pw format 8 size 1920x1080
[TRACE] [sc] wlr format 875713112 size 1920x1080
[TRACE] [sc] wlr frame copied
[ERR] [sc] wlrOnFailed for 0x55e1fc5e9a10
[TRACE] [core] adding timer for 16.666666ms
[TRACE] [core] got timer event

btw always black screen.

vaxerski commented 1 year ago

for some reason nvidia makes every buffer fail, hm

topaxi commented 1 year ago

I just came here because screensharing (via Firefox, haven't tested anything else) broke on my arch installation.

Downgrading back to 0.5.0 fixes the issue for me.

I'm using the integrated AMD GPU though, no nvidia involved.

vaxerski commented 1 year ago

can someone add the output of WAYLAND_DEBUG=1 with xdph -v?

topaxi commented 1 year ago

Sorry for the noise, the problem was on my end after the upgrade, I fixed it by reloading the systemd units and manually restarting the portal via:

systemctl --user daemon-reload
systemctl --user restart xdg-desktop-portal-hyprland

and sharing in firefox works again :)

vaxerski commented 1 year ago

if we want this to go forward, I'll ask for a WAYLAND_DEBUG=1 xdph -v log, or, more importantly, a hyprland log, preferably after https://github.com/hyprwm/Hyprland/commit/2e1842b5ff140bc81a604c663482221d86c30cff

VeilSilence commented 1 year ago

Kitty + fish. What i did: set WAYLAND_DEBUG 1 killall xdg-desktop-portal-hyprand /usr/lib/xdg-desktop-portal-hyprland -v > xdph_debug2.txt xdph_debug2.txt hyprland.log obs.txt https://github.com/hyprwm/Hyprland/commit/2e1842b5ff140bc81a604c663482221d86c30cff commit

vaxerski commented 1 year ago

Nothing in the log indicates anything's amiss, unlike what was seen in logs of @pbosab

What's the issue in your case? Black share?

VeilSilence commented 1 year ago

Black screen in obs. Brave/firefox mozilla pipewire test. Screensharing in brave/firefox didn't work also. Screenshots works. Discord screensharing works as before. Update: xwaylandvideobridge and discord stream my desktop as was before. obs-vkcapture works. Screen capture via pipewire don't sadly.

MathisP75 commented 1 year ago

Here's what I get when running the same thing as VeilSilence and recording in OBS with the latest version of the portal and hyprland-nvidia-git. I also get a black screen. xdph_debug2.txt image

MathisP75 commented 1 year ago

Adding bitdepth,10 at the end of a monitor's config in hyprland.conf fixes the issue for some reason, as reported by TwistedRisers on Discord.

pbosab commented 1 year ago

just seen a post by the same guy on reddit, going home and will report in 3-4 hours

VeilSilence commented 1 year ago

Confirm, adding bitdepth,10 fixes the issue in OBS/Brave pipewire test.

vaxerski commented 1 year ago

@MathisP75 @VeilSilence can I get a hyprland log from you enabling 10 bit?

VeilSilence commented 1 year ago

hyprland.log with bitdepth,10 xdph_debug.txt in same session also. Don't get it how it works and why tbh. Only one of mine monitors support 10 bits. OBS says: Format: 8 (Spa:Enum:VideoFormat:BGRx) as usual. EDIT: tried to remove bitdepth,10 on my old second monitor. After i did that, obs again cannot screenshare anything on this monitor. EDIT2: compiled manually hyprland from source, but without nvidia patch and... screensharing works also with bitdepth,10. hyprland.log without nvidia patch. I will test games/emulators without patch.

MathisP75 commented 1 year ago

In this log, I launched Hyprland without the 10 bit monitor in my config, launched OBS and picked my monitor (black screen). I then re enabled the 10 bit monitor in my settings, re launched OBS, which still gave me a black screen, until I restarted the hyprland portal, which then made it work. hyprland.log

vaxerski commented 1 year ago

weird, as both logs don't show anything amiss... ugh.

pbosab commented 1 year ago

can confirm adding bitdepth,10 solve the issue here too.

vaxerski commented 1 year ago

OBS says: Format: 8 (Spa:Enum:VideoFormat:BGRx) as usual.

does it also say that on 0.5, where it supposedly works? This, IIRC, should not be BGRX but XRGB

pbosab commented 1 year ago

obs with xdph 0.5.0

info: [pipewire] Stream 0x55f7b8694270 state: "connecting" (error: none)
info: [pipewire] Playing stream 0x55f7b8694270
info: [pipewire] Stream 0x55f7b8694270 state: "paused" (error: none)
info: [pipewire] Negotiated format:
info: [pipewire]     Format: 8 (Spa:Enum:VideoFormat:BGRx)
info: [pipewire]     Modifier: 0x0
info: [pipewire]     Size: 1920x1080
info: [pipewire]     Framerate: 0/1
info: [pipewire] Negotiated format:
info: [pipewire]     Format: 8 (Spa:Enum:VideoFormat:BGRx)
info: [pipewire]     Modifier: 0x300000000cdb014
info: [pipewire]     Size: 1920x1080
info: [pipewire]     Framerate: 0/1
info: [pipewire] Stream 0x55f7b8694270 state: "streaming" (error: none)
vaxerski commented 1 year ago

I believe this is a deliberate attack on hyprland by the MI6.

Anyways, are yall on nvidia or is this a broader issue?

vaxerski commented 1 year ago

also I believe we have two different issues here.

from what I can see, @pbosab has an explicit error in the communication, while @MathisP75 and @VeilSilence do not have any errors whatsoever, stream looks like it should be just fine, but aint.

vaxerski commented 1 year ago

Don't get it how it works and why tbh. Only one of mine monitors support 10 bits.

your driver somehow allowed 10-bit for both.

MathisP75 commented 1 year ago

Two different issues fixed by the same very specific change? That would be odd.

vaxerski commented 1 year ago

well, the logs here: https://github.com/hyprwm/xdg-desktop-portal-hyprland/issues/99#issuecomment-1731681455

do not show as if anything is amiss. xdph receives buffers with the correct parameters and passes them on to pipewire without any errors.

Mind providing logs of your own of the failing sessions?

VeilSilence commented 1 year ago

This is Nvidia attack on Hyprland for sure. Nvidia user. Nvidia Driver have zero support for 10 bits on Linux as far as i know. [ERR] Output DP-1 -> 10 bit enabled, but failed format DRM_FORMAT_XRGB2101010. Trying BGR. [LOG] 10bit format DRM_FORMAT_XBGR2101010 succeeded for output DP-1 [LOG] Monitor HDMI-A-1: requested 1920x1080@60.000000, found available mode: 1920x1080@60000mHz, applying. [ERR] Output HDMI-A-1 -> 10 bit enabled, but failed format DRM_FORMAT_XRGB2101010. Trying BGR. [LOG] 10bit format DRM_FORMAT_XBGR2101010 succeeded for output HDMI-A-1 My take is "key" in this lines. It failed to apply XRGB format, and then succeded?

vaxerski commented 1 year ago

it succeeded applying XBGR, quite common. IIRC my AMD laptop also does 10bit on XBGR and not XRGB

VeilSilence commented 1 year ago

Also i didn't noticed any "color changes" after adding this line. For now, hyprland without nvidia patch works good by far with bitdepth,10 Maybe wlroots devs will know more.

TheM1Stery commented 1 year ago

Screensharing actually was working but only through flatpak apps(xwayland video bridge, discord-screenaudio), but when i tried OBS i was getting the black screen. I updated hyprland to the latest commit and added bitdepth, 10 to fix it. I also have nvidia patches for screen sharing

maotovisk commented 1 year ago

Applying the bitdepth, 10 fix makes it work but it somehow comes with a sort of fps penalty on xdph-1.1, it is very noticeable in obs preview.

recording at 1920x1080@120fps, same settings xdph-0.5 xdph-1.1

I also tried it with sway and while it works fine with v0.5, it won't work with v1.1, even when enforcing 10 bit depth, black screen.

Tested with both the patched hyprland-nvidia package on AUR and the official hyprland package.

OS: Arch Linux GPU: NVIDIA GeForce RTX 3060 (535.113.01)

logs of xdph while running obs:

vaxerski commented 1 year ago

doesn't look like a performance penalty but like xdph setting 60fps instead of 120fps:

image

vaxerski commented 1 year ago

can someone post, from a failing session (8 bit one):

hyprland log on today's (right now committed a thing) git

pw-dump > dump.log while the screenshare is running (can be black screen too, as long as it's supposed to be active)

edit: got one in private

vaxerski commented 1 year ago

test with above, should be fixed.

VeilSilence commented 1 year ago

With Nvidia patch: 8 bit/10 bit screenshots/screen capture works without issues. Without Nvidia patch: 8 bit - only screenshots. 10 bits - screenshots/screen capture works. Before, i couldn't even make screenshots on 8 bit without nvidia patch. Interesting.

vaxerski commented 1 year ago

I'd call this fixed then :)

pbosab commented 1 year ago

I'd call this fixed then :)

can confirm on my side too, had to go back to nvidia patch but everything is working. good job @vaxerski and thanks.

TLATER commented 1 year ago

Still an issue here, also nvidia, with patches, not working with xdph 1.2.2, but working with 0.5.0. Screenshots have always worked fine, no issues there, but screenshares just show up empty.

Sincerely hope I'm not just too stupid to get the right software, but I've triple checked the commits I'm using (hyprwm/xdg-desktop-portal-hyprland@3606b35 and hyprwm/Hyprland@d83357f) and rebuilt with debug enabled. I am on NixOS, but manually used appropriate overrides to get the right software versions, and ran the commands manually after checking the right builds were used rather than using them through any systemd units.

hyprland log on today's (right now committed a thing) git

hyprland.log hyprland.log

pw-dump > dump.log while the screenshare is running (can be black screen too, as long as it's supposed to be active)

dump.log dump.log

I note that none of the messages added in hyprwm/Hyprland@8abb6e1cee3e967ff414af0d6a1a31ebced95f5b show up, so maybe I am just too stupid. Apologies in advance.

Edit: Yep, I see where I went wrong, that's not the log, that's just stdout output. One sec while I try this one more time, this time actually getting the logs.

Edit2: Apparently still no log messages from hyprwm/Hyprland@8abb6e1cee3e967ff414af0d6a1a31ebced95f5b, but this time these are actual logs.

vaxerski commented 1 year ago

please provide a hyprland log, not an obs log.

TLATER commented 1 year ago

Third time's a charm, I hope:

hyprland.log dump.log

vaxerski commented 1 year ago

nothing looks amiss so it's not this issue.

Bill-Klay commented 4 months ago

Adding bitdepth,10 at the end of a monitor's config in hyprland.conf fixes the issue for some reason, as reported by TwistedRisers on Discord.

OMG you wouldn't believe to what lengths I went to fix this issue. After a recent pipewire upgrade I wasn't able to share my screen. Started from reading xdg-desktop-portal-hyprland logs reaching to pipewire out of buffer logs. Tried multiple browsers and different VoIP tools to replicate the issue to confirm whether it was a pipewire problem. Messed around with buffer allocation and reinstalling display portal. All to find out that adding bitdepth, 10 to your hyprland.conf configuration for the monitor settings adjusts the color depth of your display output. Thank you.

Luks17 commented 3 months ago

Can confirm adding 10 bit support to the monitor fixes screen sharing, I'm not using nvidia but was having the same problems described on this issue.