Commit Graph

310 Commits

Author SHA1 Message Date
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
41b77cc84e Disable error on warning because of possible ffmpeg deprecated warning 2023-05-17 19:30:30 +02:00
dec05eba
cfec0ef728 Readd opus todo 2023-05-17 19:11:25 +02:00
dec05eba
e2d69a5201 Cleanup readme how to use section 2023-05-17 19:06:37 +02:00
dec05eba
6cff1a49d2 Fix all warnings 2023-05-17 18:49:16 +02:00
dec05eba
715a3c612a Remove unecessary include 2023-05-14 01:29:47 +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
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
2021456be0 Fix focused window follow failing on vaapi for the first window. Also dont error on fail to focus window 2023-04-22 02:12:04 +02:00
dec05eba
72594e3d45 vaapi window capture: resizing window should make the window have its original size instead of resized to video size 2023-04-22 02:11:57 +02:00
dec05eba
49ac7d7429 Add code to copy cursor image to opengl texture and update on event update (not used yet) 2023-04-21 20:59:06 +02:00
dec05eba
b6227c07f2 Use x11 event loop with XPending instead of XCheckTypedWindowEvent 2023-04-21 20:23:11 +02:00
dec05eba
beeb9a57aa m 2023-04-21 12:46:32 +02:00
dec05eba
6bb4860b7b FAQ: amd/intel h264/hevc issue because of patent 2023-04-21 12:22:42 +02:00
dec05eba
690065da0f Only capture frame if num frames to capture > 0 2023-04-18 22:31:44 +02:00
dec05eba
3bb22d0b3e version 2.1.0 2023-04-18 22:24:24 +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
a99baa6872 Temporary issue description for VFR video 2023-04-18 03:15:47 +02:00
dec05eba
df2509c0aa Kms server timeout, move back kms unix domain socket to HOME because flatpak cant access it otherwise 2023-04-17 23:53:18 +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
5c714ea714 Move EGL define to egl.h from window texture .c 2023-04-15 04:14:43 +02:00
dec05eba
4e59a9b4b6 Remove mention of PRIME, not needed anymore 2023-04-15 02:47:04 +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
bbe5a526af mm 2023-04-12 20:38:08 +02:00
dec05eba
95465c6a8e Add crypto donation addresses, for the many that have asked to donate 2023-04-11 04:58:22 +02:00
dec05eba
069e9b9de4 nvidia prime 2023-04-11 01:27:15 +02:00
dec05eba
5ea4e7fff1 readme 2023-04-11 00:50:20 +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
dec05eba
2f665e9d53 amd/intel: use xrgb format, use drm prime 2 2023-04-11 00:06:47 +02:00
dec05eba
b150acb66e amd test 2 2023-04-10 23:38:45 +02:00
dec05eba
32459991c0 Recreate surface every frame :( 2023-04-10 23:21:07 +02:00
dec05eba
6d75615e1d aaa 2023-04-10 23:03:52 +02:00
dec05eba
6f9d17fad5 Dont create va surface every frame for kms (test) 2023-04-10 22:50:41 +02:00
dec05eba
59046178c4 Remove unecessary vaCreatebuffer every frame 2023-04-10 22:46:56 +02:00