Commit Graph

55 Commits

Author SHA1 Message Date
dec05eba
190c775a08 Fix screenshot of window not working after latest change 2025-03-14 08:54:12 +01:00
dec05eba
b0de8588f2 Take screenshot with XGetImage on x11 to workaround nvidia driver (nvfbc) limitation that only allows one nvfbc session at a time 2025-03-13 22:34:29 +01:00
dec05eba
f63409bdd7 nvfbc region capture work 2025-03-13 01:50:36 +01:00
dec05eba
af54684103 Fix screenshot with region not working correctly for some sizes and possibly crashing 2025-03-13 01:38:26 +01:00
dec05eba
92492db788 Add region capture with -w region -region WxH+X+Y 2025-03-13 00:18:28 +01:00
dec05eba
000da7d640 Make image output lossy (use stb image writer), also significantly improves performance for jpeg 2025-02-22 01:05:29 +01:00
dec05eba
c259a19b9d Refactor windowing from egl to window_x11/window_wayland, yolo 2024-12-08 02:17:41 +01:00
dec05eba
f1b4979365 Fix incorrect color format in x11 cursor (bgr instead of rgb) 2024-11-09 02:45:20 +01:00
dec05eba
112640282d Add option to change output resolution (-s) 2024-10-26 20:58:00 +02:00
dec05eba
412cf0dbae Revert "Temp fix for nvfbc"
This reverts commit 8ab1150fb8.
2024-09-26 18:15:15 +02:00
dec05eba
8ab1150fb8 Temp fix for nvfbc 2024-09-26 17:53:08 +02:00
dec05eba
ddbb2f63b7 Revert 2024-09-26 17:49:30 +02:00
dec05eba
77fea88fe6 debug 2024-09-26 17:37:00 +02:00
dec05eba
52bd102a26 Revert "temp debug output"
This reverts commit 97998f1bab.
2024-09-26 16:56:36 +02:00
dec05eba
97998f1bab temp debug output 2024-09-26 16:41:55 +02:00
dec05eba
0b20a46e58 Name capture/encoder variable self 2024-09-26 02:36:31 +02:00
dec05eba
25b7b4e84e Pure vaapi capture (for capture target) and opengl composition for cursor only when capturing window and portal as well, clear background on resize for monitor capture 2024-09-16 23:31:53 +02:00
dec05eba
954a41de9c Explicit glFlush/glFinish before and after render operations to fix tearing and stutter on amd 2024-09-06 12:41:14 +02:00
dec05eba
b7c5df3c4b Faster startup (faster video codec query), fix some video codec callback logic 2024-08-31 03:17:18 +02:00
dec05eba
b1d8346ed9 Move glClear and glx/eglSwapBuffers from capture backends to main 2024-07-26 10:55:24 +02:00
dec05eba
b7da16a932 nvidia x11: fix screen-direct-force not working because it was ignored 2024-07-25 05:30:31 +02:00
dec05eba
7d719a44c6 Fix hdr capture causing crash when in replay mode 2024-07-23 18:11:38 +02:00
dec05eba
f9a41041ec Fix HDR capture (HDR metadata is now correct). Note that HDR capture is only available on Wayland and when recording a monitor without the desktop portal option 2024-07-21 19:12:06 +02:00
dec05eba
2bc05a4a7f Minor nvfbc 2024-07-06 02:29:07 +02:00
dec05eba
56e9d15e0f Fix capture incorrect alignment with cpu encoding for some window sizes 2024-07-05 11:34:34 +02:00
dec05eba
b9fa7f2fa2 Separate video encoding method from capture method
With this instead of kms_cuda/kms_vaapi/kms_software and
xcomposite_cuda/xcomposite_vaapi/xcomposite_software there
is now only kms and xcomposite.
2024-07-05 10:33:47 +02:00
dec05eba
62d61fda12 Add support for software video encoding with '-encoder cpu' option, currently h264 only 2024-07-04 01:35:03 +02:00
dec05eba
d5bf41fed6 X11 nvidia monitor capture: fix capture broken after sleep/suspend or monitor reconfiguration 2024-04-08 00:51:33 +02:00
dec05eba
ba096a3ba7 Add -cursor option to not record cursor 2024-03-11 19:01:46 +01:00
dec05eba
f3c32a880a Fix cursor capture in nvidia wayland, hdr, clear background immediately in window capture 2024-03-10 20:59:17 +01:00
dec05eba
45ad3695b6 Refactor capture base 2024-03-09 18:54:53 +01:00
dec05eba
a3fedae329 Draw cursor in window capture 2024-03-09 16:59:09 +01:00
dec05eba
5e05bbbbcb Refactor xcomposite
Move common code between cuda/vaapi implementations
into xcomposite file.
This also fixes limited/full range colors on nvidia.
2024-03-09 15:36:45 +01:00
dec05eba
3d9a706528 Set frame size to video codec context size, nicer rgb to nv12 2024-03-08 11:35:30 +01:00
dec05eba
0d89378021 Use opengl capture for nvfbc (prepare for vulkan capture without cuda) 2024-03-08 11:35:26 +01:00
dec05eba
d0c221a233 Refactor kms_vaapi and kms_cuda
Also fixes color metadata, color range and hdr on nvidia wayland.
2024-03-08 11:34:36 +01:00
dec05eba
4d8a9e2e1d Pool size 20 for vaapi 2024-03-08 11:34:36 +01:00
dec05eba
1d54d61b78 Reconfigure quality, force refresh nvfbc frame, mention stutter in readme 2024-03-08 11:33:11 +01:00
dec05eba
985d96bf89 Fix nvfbc capture crash on start 2024-02-11 15:33:55 +01:00
dec05eba
3eb7bae12c Move card path to egl struct, use egl struct for monitor enumeration 2024-02-09 00:23:52 +01:00
dec05eba
84f9a04272 Small changes who cares 2023-12-23 12:40:16 +01:00
dec05eba
51154b71be Fix vram leak for reals 2023-10-22 04:56:34 +02:00
dec05eba
6cff1a49d2 Fix all warnings 2023-05-17 18:49:16 +02:00
dec05eba
75ed160122 Implement kms vaapi capture 2023-04-07 05:31:46 +02:00
Steam Deck User
2f67083915 Use vaapi to do rgb->yuv420p color conversion
Enable window capture for amd/intel.
Properly check if h264/hevc is supported on amd/intel before using
codec.
2023-04-01 16:29:24 +02:00
dec05eba
82e3720084 Install coolbits if using nvidia, add preserve video memory install script 2023-03-31 01:11:12 +02:00
dec05eba
d92ecea69e Remove yuv444 for now 2023-03-26 19:04:51 +02:00
dec05eba
716cb5b448 Add pixfmt yuv420p/yuv444p option to set lossless color 2023-03-26 19:04:51 +02:00
dec05eba
93cb6593a6 Add overclocking option -oc to workaround a NVIDIA driver bug (forcefully set to p2 state when using cuda) 2023-03-17 17:17:14 +01:00
dec05eba
74a5fb9dfb Add screen-direct-force option for VRR monitor 2023-03-04 11:19:31 +01:00