Commit Graph

521 Commits

Author SHA1 Message Date
dec05eba
2f60f4c109 h264 vaapi quality 5 2023-11-22 17:31:18 +01:00
dec05eba
a629c0bfb3 Make amd/intel nvidia/wayland capture display match x11 connector name, allow screen capture on amd/intel nvidia/wayland (select the first output for now) 2023-11-17 10:09:51 +01:00
dec05eba
d548d2fe18 Use global_quality for av1, fixes quality options for av1, fine tune quality by codec 2023-11-15 00:01:45 +01:00
dec05eba
f4f78b0684 Add experimental av1 support (only tested on amd) 2023-11-11 13:36:45 +01:00
dec05eba
acdab088cf Dont enumerate audio devices if no audio input is specified 2023-11-07 22:30:04 +01:00
dec05eba
cd6105fe10 Update usage info about screen direct option 2023-11-05 02:06:58 +01:00
dec05eba
f524ac2d77 3 sec extra for replay 2023-10-31 21:11:53 +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
97a345f08f Try re-enabling use of modified in linux dma buf ext egl create image 2023-10-31 17:40:32 +01:00
dec05eba
2a890a4b4d Dont include unused drm_fourcc.h, include missing unistd.h for _exit 2023-10-27 11:59:37 +02:00
dec05eba
51154b71be Fix vram leak for reals 2023-10-22 04:56:34 +02:00
dec05eba
9710f8a2d4 Attempt to fix amd/intel driver bug vram leak, force cfr when livestreaming, replace std::filesystem with posix
create replay directory automatically, recursively
2023-10-21 22:46:33 +02:00
dec05eba
bae4504370 Install systemd service in install script, skip empty audio device
Stop systemd service with SIGINT
2023-10-15 18:12:33 +02:00
4censord
3ae89c8d7c Add the ability to save replays into folders by date
This adds a new flag, '-mf' with a boolean argument
If this is set, replays are organized in folders by date.

With this, replays are saved like:
    $output_folder/2023-10-15/Replay_15-39-28.mp4
instead of all into the same folder.
2023-10-15 18:10:15 +02:00
dec05eba
444a19a087 fflush after puts to fix piping replay path 2023-10-01 10:06:26 +02:00
dec05eba
c3f23b3b72 Fallback to another video codec if the selected video codec is not auto and it's not supported 2023-08-22 00:39:21 +02:00
dec05eba
59bf8e3025 Change nvenc preset to p5 to workaround new nvidia driver bug 2023-08-15 23:27:13 +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
a0e8e9ba59 Test fix recent regression in ffmpeg that increases cpu usage 2023-08-09 18:18:46 +02:00
dec05eba
bee99a69e3 Dont use jpeg color range (fixes too dark image on amd/intel in flatpak) 2023-07-25 04:46:45 +02:00
dec05eba
fafb1e84f0 Improve color accuracy on amd/intel 2023-07-23 04:21:38 +02:00
dec05eba
d45597e104 Exit with exit code 10 if pkexec fails 2023-07-22 23:22:51 +02:00
dec05eba
22a0a01553 AMD/Intel capture cursor 2023-07-22 02:57:38 +02:00
dec05eba
fc316750b8 Fix monitor capture on amd/intel + x11 2023-07-21 19:30:09 +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
8cd0ae0162 vfr on wayland (even on nvidia), add uninstall script 2023-07-21 16:17:22 +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
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
e158cb2a8b Translate -c mkv to -c matroska 2023-06-20 20:31:06 +02:00
dec05eba
66dbfe69a4 Mention that only h264/hevc is supported at the moment 2023-06-07 19:30:39 +02:00
dec05eba
7e2ade27a7 Make sure window id hex starts with 0x (makes monitor recording more reliable), allow CC and CXX to set compiler for build 2023-06-04 13:49:47 +02:00
dec05eba
41176177c6 Update readme about flatpak 2023-05-29 00:43:59 +02:00
dec05eba
561ceb1949 Attempt to fix nvidia driver bug at program exit (freeze) by exit without atexit 2023-05-22 18:36:19 +02:00
dec05eba
6641eda702 Use av_packet_alloc instead of deprecated memset on packet size 2023-05-18 14:40:42 +02:00
dec05eba
6cff1a49d2 Fix all warnings 2023-05-17 18:49:16 +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
25af1c81d0 manjaro ***** 2023-04-27 20:42:44 +02:00
dec05eba
ec22eb6da4 Temporary disable opus/flac because it breaks multiple audio, fix possible audio/video desync on nvidia 2023-04-27 13:57:01 +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
690065da0f Only capture frame if num frames to capture > 0 2023-04-18 22:31:44 +02:00
dec05eba
03ef7d0964 Show shorter form of help on argument error 2023-04-18 18:41:06 +02:00
dec05eba
7749ba8327 Replace tabs with 4 spaces 2023-04-18 18:34:23 +02:00
XnipS
e985e8e18e Made fps update toggleable 2023-04-18 18:32:04 +02:00
dec05eba
c0ebae365d Find /dev/dri/card path that exists (the first one) 2023-04-16 22:50:43 +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
45a64316b4 Move back receive packet to main thread
Fixes crash if encode fps is less than capture fps
2023-04-13 23:44:23 +02:00
dec05eba
7c4714956c Move back video encoding to main thread, move receive packet to separate thread
When video is encoded at slower than capture rate that would
cause a crash (happens on steam deck).
2023-04-13 03:12:53 +02:00
dec05eba
2fdc73ffab Temporary disable monitor recording on amd/intel 2023-04-11 00:48:59 +02:00