diff options
author | Liang Qi <liang.qi@qt.io> | 2024-06-05 11:25:00 +0200 |
---|---|---|
committer | Liang Qi <liang.qi@qt.io> | 2024-06-22 17:12:15 +0200 |
commit | 217df8f8371145064dd6fa515ac5c533042d08f9 (patch) | |
tree | b6a8199a3c9feefc400a73c0e511037b61398390 /src/plugins/multimedia/ffmpeg/qffmpegresampler.cpp | |
parent | da0d6a04d7c91069fc2293942eaed6be195c2364 (diff) |
Add pipewire screen capture on Wayland
For security reason, there is no Wayland API to capture screen and
window. But there is ScreenCast from XDG Desktop Portal, which is
very popular on Linux Desktop, both for Wayland and X11. Application
talks with XDG Desktop Portal server via DBus calls to get a file
descriptor for screen cast request(system will popup a dialog that
let the user to select which screen was chosen), then application
can get the video contents via pipewire API.
XDG Desktop Portal - ScreenCast doc:
https://flatpak.github.io/xdg-desktop-portal/docs/doc-org.freedesktop.portal.ScreenCast.html
PipeWire API: https://docs.pipewire.org/page_api.html
Tested:
* GNOME(45.2) Wayland
* KDE Plasma(5.27.9) Wayland
* KDE Plasma(6) Wayland
[ChangeLog] Added screen capture function on Wayland via pipewire.
Fixes: QTBUG-121452
Pick-to: 6.8
Change-Id: I54f421b0108e0a87c0e0393570c713473f2fc7bc
Reviewed-by: Artem Dyomin <artem.dyomin@qt.io>
Diffstat (limited to 'src/plugins/multimedia/ffmpeg/qffmpegresampler.cpp')
0 files changed, 0 insertions, 0 deletions