Commit Graph

63 Commits

Author SHA1 Message Date
dec05eba
017fd0a37d Add support for hdr capture on amd/intel
Nvidia support will be added in the future.
Note that hdr metadata is missing from the output file as
amd and intel both have bugged drivers that dont add hdr metadata
to the output file.
Need to find a workaround for this (patching the video bitstream?).

Add -cr limited|full, to set color range
2024-02-06 02:43:47 +01:00
dec05eba
5db779d76c Revert "kms vaapi modifiers test"
This reverts commit 0702aad3cf.
2024-01-28 18:51:57 +01:00
dec05eba
0702aad3cf kms vaapi modifiers test 2024-01-28 18:17:50 +01:00
dec05eba
846bda7510 nvidia wayland: support hardware cursor plane 2024-01-28 00:27:41 +01:00
dec05eba
94cbed9471 Nvidia: use default p4 preset instead of p5, might fix frame issues 2024-01-11 10:50:14 +01:00
dec05eba
5d54b02cb2 Remove unused xevent 2024-01-03 15:32:11 +01:00
dec05eba
62e7a04b10 Revert "Try re-enabling use of modified in linux dma buf ext egl create image"
This reverts commit 97a345f08f.
2023-10-31 21:11:23 +01:00
dec05eba
f12541d3f0 Revert temp modifier test 2023-10-31 20:59:40 +01:00
dec05eba
18b26a8f38 bla 2023-10-31 20:11:02 +01:00
dec05eba
1f97e02075 Modified hack test 2023-10-31 20:02:20 +01:00
dec05eba
97a345f08f Try re-enabling use of modified in linux dma buf ext egl create image 2023-10-31 17:40:32 +01:00
dec05eba
51154b71be Fix vram leak for reals 2023-10-22 04:56:34 +02:00
dec05eba
cf7b5e0904 Attempt to fix vram leak(?) 2023-10-08 22:25:07 +02:00
dec05eba
b6ea32330e Use correct offset for kms_vaapi monitor 2023-09-27 00:52:28 +02:00
dec05eba
e4d094d605 Revert vaapi c 2023-09-08 11:06:54 +02:00
dec05eba
a2d780e10c T 2023-09-08 11:03:47 +02:00
dec05eba
21d200b53d Test vaapi plane modifier 2023-09-08 10:53:59 +02:00
dec05eba
a253be38b7 kms vaapi: fix capture bug (incorrect video size) caused by shadowed variable... 2023-08-13 01:55:56 +02:00
dec05eba
26b54ff3e4 fugg 2023-08-13 01:41:26 +02:00
dec05eba
a151d7ac26 test 2023-08-13 01:38:15 +02:00
dec05eba
af0961f64f AMD/Intel: do custom color conversion for window capture, better colors 2023-07-23 05:19:59 +02:00
dec05eba
d45597e104 Exit with exit code 10 if pkexec fails 2023-07-22 23:22:51 +02:00
dec05eba
9ca5b8ec3a Fix cursor offset in kms grab (amd/intel), disable wlroots capture until its fixed 2023-07-22 20:12:41 +02:00
dec05eba
4de23c2556 Temp disable cursor fix 2023-07-22 05:13:23 +02:00
dec05eba
b898bddb63 Hide cursor when it's on another display 2 2023-07-22 04:56:50 +02:00
dec05eba
4e8c47a154 Hide cursor when it's on another display 2023-07-22 04:38:08 +02:00
dec05eba
60de2c47be Use correct offset for combined plane monitor capture 2023-07-22 04:12:02 +02:00
dec05eba
22a0a01553 AMD/Intel capture cursor 2023-07-22 02:57:38 +02:00
dec05eba
8b0723a4f2 Fix window capture 2023-07-21 19:12:24 +02:00
dec05eba
a1d31a5cf0 Fix capture not working on intel + wayland
Ignore nouveau cards.
Fix lag on start of recording on amd/intel by only loading egl once,
on startup.
2023-07-21 18:56:34 +02:00
dec05eba
de019711d1 Support wlroots screen capture, which doesn't require kms root access and also captures cursor 2023-07-21 02:57:06 +02:00
dec05eba
585382cf18 More kms vaapi allow to work without xwayland 2023-07-18 07:06:12 +02:00
dec05eba
a3beaeb0cc Fix green screen sometimes when capturing amd/intel window 2023-07-18 06:00:36 +02:00
dec05eba
b2644a9881 Fix wayland capture on amd/intel 2023-07-18 03:21:16 +02:00
dec05eba
0a2806972f Experimental wayland support, test 1 2023-07-18 02:14:27 +02:00
dec05eba
ba86d20b2d kms rot old behavior back 2023-06-10 01:51:47 +02:00
dec05eba
b290f76372 kms: fix multi monitor coordinate being incorrect in some cases 2023-06-10 01:39:58 +02:00
dec05eba
95290bc031 Attempt to fix merged display coordinates in kms 2023-06-10 01:15:10 +02:00
dec05eba
6cff1a49d2 Fix all warnings 2023-05-17 18:49:16 +02:00
dec05eba
26571094aa kms_vaapi: fix regression, screen rotation not working when capturing screen 2023-05-12 05:03:12 +02:00
dec05eba
99dbbd07ab kms_vaapi: support multiple drm planes (fixes capture on some multi monitor systems) 2023-05-12 03:49:29 +02:00
dec05eba
e1c613666e kms_vaapi: add cursor capture for amd/intel monitor capture
Always find largest drm buf, to fix some cases
when there are multiple planes and we accidentally
capture a drm buf that isn't the target buf.
We always want the full SCREEN drm buf.
2023-04-22 02:13:11 +02:00
dec05eba
c0ebae365d Find /dev/dri/card path that exists (the first one) 2023-04-16 22:50:43 +02:00
dec05eba
d953d0bb36 Use XDG_RUNTIME_DIR (and flatpak specific dir) and /dev/dri/renderD128 instead of /dev/dri/card0 (fixes capture on some systems) 2023-04-16 22:05:09 +02:00
dec05eba
c510bc5ae5 Remove extra swapBuffer in kms capture 2023-04-15 20:39:02 +02:00
dec05eba
c9c615d4c7 Apply rotation fix for intel as well (for kms capture) 2023-04-15 19:41:49 +02:00
dec05eba
f6107a0c5d Fix AMD single monitor rotated display being rotated in recording
If there is only one monitor connected and it's rotated then
the drm buf will also be rotated. This only the case with AMD and
only when using one monitor!

To fix this, we perform color conversion with an opengl shader
which allows us to also rotate the texture.
VAAPI supports rotation but it's not implemented by AMD at least.

Performance seems to be the same as when using VAAPI, even when
GPU usage is 100%.
2023-04-15 19:06:08 +02:00
dec05eba
2fdc73ffab Temporary disable monitor recording on amd/intel 2023-04-11 00:48:59 +02:00
dec05eba
e7020376e9 Remove kms modifier 2023-04-11 00:29:12 +02:00
dec05eba
cc7cf8197e Revert "amd/intel: use xrgb format, use drm prime 2"
This reverts commit 2f665e9d53.
2023-04-11 00:27:34 +02:00