hyprland-wiki/pages/Useful Utilities/Screen-Sharing.md

44 lines
1.5 KiB
Markdown
Raw Normal View History

---
weight: 4
title: Screen sharing
---
2022-08-13 18:25:43 +02:00
Screensharing is done through PipeWire on Wayland.
2022-08-12 20:46:36 +02:00
2023-09-28 18:51:00 +02:00
## Prerequisites
2022-08-12 20:46:36 +02:00
2024-07-31 00:00:24 +02:00
Make sure you have `pipewire`, `wireplumber` and
[`xdg-desktop-portal-hyprland`](../../Hypr-Ecosystem/xdg-desktop-portal-hyprland)
installed, enabled and running if you don't have them yet.
2022-08-12 20:46:36 +02:00
## Screensharing
2022-08-13 01:47:48 +02:00
Read
[this amazing gist by Bruno Ancona Sala](https://gist.github.com/brunoanc/2dea6ddf6974ba4e5d26c3139ffb7580)
2022-08-13 01:47:48 +02:00
for a great tutorial.
2022-08-12 20:46:36 +02:00
## XWayland
If your screensharing application is running under XWayland (like Discord or
Skype), it can only see other XWayland windows and cannot share an entire
screen or a Wayland window.
The KDE team has implemented a workaround for this called
[xwaylandvideobridge](https://invent.kde.org/system/xwaylandvideobridge). You
can use
[this AUR package](https://aur.archlinux.org/packages/xwaylandvideobridge-git)
on Arch Linux. Note that Hyprland currently doesn't support the way it tries to
hide the main window, so you will have to create some window rules to achieve
the same effect. See
[this issue](https://invent.kde.org/system/xwaylandvideobridge/-/issues/1) for
more information. For example:
```ini
2024-07-31 00:00:24 +02:00
windowrulev2 = opacity 0.0 override, class:^(xwaylandvideobridge)$
windowrulev2 = noanim, class:^(xwaylandvideobridge)$
windowrulev2 = noinitialfocus, class:^(xwaylandvideobridge)$
windowrulev2 = maxsize 1 1, class:^(xwaylandvideobridge)$
windowrulev2 = noblur, class:^(xwaylandvideobridge)$
windowrulev2 = nofocus, class:^(xwaylandvideobridge)$
2023-05-27 12:17:24 +02:00
```