Commit Graph

235 Commits

Author SHA1 Message Date
dec05eba
3e3d8a179f Fix incorrect region for region capture after compute shader change 2025-03-30 18:11:25 +02:00
dec05eba
3b617ddc53 Cleanup 2025-03-30 15:17:37 +02:00
dec05eba
ad26bc77db Fix incorrect compute size when scaling image 2025-03-30 13:46:06 +02:00
dec05eba
96ca048856 Compute shader: add support for external texture, color component swapping (bgr to rgb) 2025-03-30 04:47:30 +02:00
dec05eba
c679b2fdb6 Use sampler2D for alpha blending compute shader instead of output image2D 2025-03-30 03:36:39 +02:00
dec05eba
b8a521a785 Reapply "WIP: use compute shader instead of graphics shader for better performance (especially on amd)"
This reverts commit f85a7ab205.
2025-03-29 15:38:05 +01:00
dec05eba
f85a7ab205 Revert "WIP: use compute shader instead of graphics shader for better performance (especially on amd)"
This reverts commit a41a32cb90.
2025-03-29 15:37:53 +01:00
dec05eba
a41a32cb90 WIP: use compute shader instead of graphics shader for better performance (especially on amd) 2025-03-29 13:29:10 +01:00
dec05eba
d2ab24121d Test broadcom (raspberry pi) support 2025-03-18 21:54:12 +01:00
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
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
8364aaadad Fix pipewire server breaking when pipewire connection is closed too quickly (--info) 2025-03-05 21:20:51 +01:00
dec05eba
5f3a14d3f6 Rename window_wayland to wayland and window_x11 to x11 2025-03-05 18:07:52 +01:00
dec05eba
6024a54551 Fix portal capture on sway and hyprland: unset capture types/cursor modes that are not supported by the desktop portal 2025-03-03 12:36:44 +01:00
dec05eba
ae2929d4f7 Pipewire: auto change default_output/default_input connected nodes when the default devices are changed in system audio settings 2025-02-27 01:43:16 +01:00
dec05eba
d9eb44fae0 Audio device capture: make default output/input switch recording source the default output/input is changed in the audio server 2025-02-26 18:08:00 +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
1b5cde0789 Support taking a screenshot (-o image.jpg/image.png) 2025-02-16 14:21:17 +01:00
dec05eba
62bbdd7c30 Revert kde plasma 6.2 hdr workaround code 2025-02-15 16:57:37 +01:00
dec05eba
a3b9b89a7f Attempt to fix incorrect hdr colors on kde plasma 6.2 2025-02-09 06:51:22 +01:00
dec05eba
26e9029579 Pipewire: support 10-bit formats (where alpha is 2 bits, total 32-bits) 2025-01-27 10:30:31 +01:00
dec05eba
b68400ca20 Add -gl-debug option to make it easier to debug user issues that cant easily be reproduced 2025-01-16 22:55:20 +01:00
dec05eba
621f253f00 Minor change 2025-01-03 17:14:30 +01:00
dec05eba
d138a1fe73 Add card path to --info, add card path and vendor to --list-capture-options if known to speed up the command 2024-12-08 02:52:58 +01:00
dec05eba
c259a19b9d Refactor windowing from egl to window_x11/window_wayland, yolo 2024-12-08 02:17:41 +01:00
dec05eba
175ed79b06 Fix virtual sink not destroyed if gsr is forcefully killed (use pipewire to create the virtual sink instead of pulseaudio) 2024-12-06 12:53:44 +01:00
dec05eba
1b40947884 Add error output when reaching max ports/stream nodes/links 2024-12-05 19:14:00 +01:00
dec05eba
8941e12c61 Increase pipewire audio max nodes/ports limit 2024-12-05 19:08:01 +01:00
dec05eba
0ae3c1f827 Repurpose '/' in audio argument to set the audio track name, not the recording node name in pulseaudio/pipewire. This also now allows setting audio track name when recording application audio 2024-11-28 11:42:39 +01:00
dec05eba
02673c4644 Fix portal capture on broken amd drivers: fallback to opengl copy instead of vaapi on known buggy mesa version 2024-11-21 00:25:56 +01:00
dec05eba
cbf4cba5a9 Allow recording app audio with -a, deprecate -aa and -aai
Use -a "app:brave" instead of -aa "brave".
Use -a "app-inverse:brave" instead of -aai "brave".

This now allows merging audio devices and app audio into the same audio
track.
2024-11-20 19:09:42 +01:00
dec05eba
0ee68146a7 Disable application audio recording on pulseaudio 2024-11-17 01:12:12 +01:00
dec05eba
c2ae721dca --info: output if app audio is supported (if compiled with it and pipewire server) 2024-11-16 17:20:02 +01:00
dec05eba
4240f0e334 Add -aa and -aai options to record audio only from selected applications
Use the --list-application-audio option to list available applications
to record from.
2024-11-10 23:54:39 +01:00
dec05eba
f1b4979365 Fix incorrect color format in x11 cursor (bgr instead of rgb) 2024-11-09 02:45:20 +01:00
dec05eba
0686b924de Prepare for pipewire audio routing 2024-11-08 18:40:33 +01:00
dec05eba
112640282d Add option to change output resolution (-s) 2024-10-26 20:58:00 +02:00
dec05eba
935a7b892e Rename video encoder cuda to video encoder nvenc 2024-10-09 18:32:26 +02:00
dec05eba
4f709f0fa6 Rename codec query cuda to codec query nvenc 2024-10-01 18:30:11 +02:00
dec05eba
720a4e2919 Support gpus that only support low power encoding mode (Intel Arc A380) 2024-10-01 18:28:06 +02:00
dec05eba
ebc8c69bac Add vulkan video encoding option (-k h264_vulkan). WIP, not fully hardware accelerated yet 2024-09-27 03:03:09 +02:00
dec05eba
51ee40f85d Revert "Better glx config selection"
This reverts commit 69c3102465.
2024-09-26 17:47:43 +02:00
dec05eba
69c3102465 Better glx config selection 2024-09-26 17:35:16 +02:00
dec05eba
1aaa26d87e Move codec query from encoder to separate file 2024-09-26 16:08:26 +02:00
dec05eba
aa2fa1e17e Add template for vulkan video encoding 2024-09-26 02:23:56 +02:00
dec05eba
aef223d844 Remove damage tracking for now, better frame timing (deal with time error accumulation) 2024-09-20 02:20:42 +02:00
dec05eba
41bd6cee63 Use async_depth option on vaapi for much better encoding performance 2024-09-18 11:15:10 +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