aboutsummaryrefslogtreecommitdiff
path: root/TODO
diff options
context:
space:
mode:
Diffstat (limited to 'TODO')
-rw-r--r--TODO14
1 files changed, 11 insertions, 3 deletions
diff --git a/TODO b/TODO
index 984f42e..5b8d30a 100644
--- a/TODO
+++ b/TODO
@@ -69,8 +69,6 @@ Exit if X11/Wayland killed (if drm plane dead or something?)
Use SRC_W and SRC_H for screen plane instead of crtc_w and crtc_h.
-Make it possible to select which /dev/dri/card* to use, but that requires opengl to also use the same card. Not sure if that is possible for amd, intel and nvidia without using vulkan instead.
-
Test if p2 state can be worked around by using pure nvenc api and overwriting cuInit/cuCtxCreate* to not do anything. Cuda might be loaded when using nvenc but it might not be used, with certain record options? (such as h264 p5).
nvenc uses cuda when using b frames and rgb->yuv conversion, so convert the image ourselves instead.-
@@ -207,4 +205,14 @@ Use different exit codes for different errors. Use one for invalid -w option, an
Ffmpeg fixed black bars in videos on amd when using hevc and when recording at some resolutions, such as 1080p:
https://github.com/FFmpeg/FFmpeg/commit/bcfbf2bac8f9eeeedc407b40596f5c7aaa0d5b47
https://github.com/FFmpeg/FFmpeg/commit/d0facac679faf45d3356dff2e2cb382580d7a521
- Disable gpu screen recorder black bar handling when using hevc on amd when the libavcodec version is the one that comes after those commits. \ No newline at end of file
+ Disable gpu screen recorder black bar handling when using hevc on amd when the libavcodec version is the one that comes after those commits.
+
+Use opengl compute shader instead of graphics shader. This might allow for better performance when games are using 100% of graphics unit which might fix issue with 100% gpu usage causing gpu screen recorder to run slow when not using vaapi to convert rgb to nv12(?).
+
+Always disable prime run/dri prime and list all monitors to record from from all cards.
+ Do this instead of adding an option to choose which gpu to use.
+ On X11 the primary gpu will always have the framebuffer for all monitors combined.
+ Use randr to list all monitors and always record and encode with the primary gpu.
+ On Wayland each gpu will have its own list of monitors with framebuffers.
+ Iterate through all cards with drm and list all monitors with associated framebuffers and when choosing a monitor to record
+ automatically use the associated gpu card. \ No newline at end of file