Commit Graph

381 Commits

Author SHA1 Message Date
dec05eba
a7e0dbd833 Refactor xcomposite into abstract capture api
Refactor c++ files into c files, more usable
2022-10-16 04:15:09 +02:00
dec05eba
93d46b9767 Refactor nvfbc into abstract capture api 2022-10-14 01:22:43 +02:00
dec05eba
9d65552d05 Add info about PRIME 2022-10-13 19:15:05 +02:00
dec05eba
2a788b5533 Use medium instead of p4 and slow instead of p7 for old ffmpeg 2022-10-12 14:24:13 +02:00
dec05eba
2bceeb182c Old ubuntu info 2022-10-12 04:55:50 +02:00
dec05eba
dc20d1eddb Do not use p4, p7 with old ffmpeg that doesn't have those options yet 2022-10-12 04:53:56 +02:00
dec05eba
9d185f3091 Use p4 preset on older gpus (kepler family) because of performance
with p7
2022-10-11 19:47:28 +02:00
dec05eba
1ca4dcfbdb Tune quality again, remove vbr 2022-10-11 02:47:17 +02:00
dec05eba
1a4e0aff72 Better tune quality options for different resolutions 2022-10-08 10:13:59 +02:00
dec05eba
88d06478d3 Fix crash caused by invalid memory write when recording audio
In some scenarios memcpy can write to 8 bytes (or more?) over the buffer
end.

Thanks to Guilherme for reporting the issue and testing the fix.
2022-10-07 03:44:54 +02:00
dec05eba
92f4b1a6f1 Fix copy paste mistake possible crash (using av_opt_set instead of av_dict_set)
Thanks @guihkx
2022-10-06 21:54:44 +02:00
dec05eba
5b26291269 Update info about cuda 2022-10-06 15:27:45 +02:00
dec05eba
5cdb2df3d7 picom info 2022-10-05 19:06:40 +02:00
dec05eba
ea8254e115 Fix possible pulseaudio crash? 2022-10-05 12:47:34 +02:00
dec05eba
e15f94f6e9 m 2022-10-04 04:08:02 +02:00
dec05eba
c447d866b7 nvfbc patch 2022-10-04 03:53:25 +02:00
dec05eba
e8b16e8347 Live stream: set gop to fps*2, bit rate for medium to lower value 2022-10-04 02:44:46 +02:00
dec05eba
f55b713437 Temporary disable screen-direct recording as it causes stuttering (nvfbc bug?) 2022-10-04 02:23:40 +02:00
dec05eba
e277abe843 Stupid mistake. Old /usr/local/bin/gpu-screen-recorder overwrites /usr/bin/gpu-screen-recorder path. Make installer install to both paths to fix past mistakes 2022-10-04 01:37:08 +02:00
dec05eba
e80d7676d4 Livestream: add silent audio track if not audio input is provided (fixes youtube and other sites) 2022-10-04 01:32:27 +02:00
dec05eba
c354d88583 Add medium and high quality, better livestreaming options, fix global header (especially for streaming) 2022-10-04 00:09:53 +02:00
dec05eba
270a8636ae Capture cursor in direct capture mode if supported by the driver (driver version >= 515.57) 2022-10-03 17:42:51 +02:00
dec05eba
4cd391e07e Add info about flatpak package, default to h264 (unless resolution is greater than 3840x2160) and add -k option to set codec 2022-10-03 16:56:58 +02:00
dec05eba
9ff0bb199b Revert gop size 2022-10-03 01:55:39 +02:00
dec05eba
0ec31db6c6 Do not set keyint min 2022-10-02 23:08:07 +02:00
dec05eba
6885d1a30e Sacrifice seek speed for reduced file size 2022-10-02 22:19:54 +02:00
dec05eba
5d92b53f1c Add install script for non ubuntu / (arch) distros 2022-10-02 01:24:11 +02:00
dec05eba
b99652ee28 Make the audio input description the input name by default 2022-10-02 01:18:12 +02:00
dec05eba
5871abc42f Allow giving audio inputs names by prefixing them with <name>/ 2022-10-02 01:04:57 +02:00
dec05eba
a1f7fedcb8 Add unique index to each audio input device name 2022-10-02 00:40:49 +02:00
dec05eba
f7606a144b Give error when using an invalid audio input with pipewire 2022-09-30 22:02:23 +02:00
dec05eba
09ad7a1eb5 Give each audio input a seperate node by giving them an unique context name 2022-09-30 21:14:12 +02:00
dec05eba
912515303b Remove allowing only 1 process of gpu-screen-recorder at a time 2022-09-30 16:24:34 +02:00
dec05eba
1a7fd28a3f Remove cuda.h 2022-09-29 20:07:54 +02:00
dec05eba
6e407b0b62 Use better name for quality options to clearify that medium is actually very high quality, because people dont understand that 2022-09-29 17:34:32 +02:00
dec05eba
1db2282683 Remove dependency on glew and glfw, move external files to external directory 2022-09-28 01:03:06 +02:00
dec05eba
2570d1e86a Revert ubuntu package cuda 2022-09-26 03:01:45 +02:00
dec05eba
febffdacc9 Load libcuda.so.1 if libcuda.so is missing 2022-09-26 01:57:35 +02:00
dec05eba
a648b591a0 Update flatpak info 2022-09-26 01:35:49 +02:00
dec05eba
4fead183fe Load cuda at runtime. Include cuda header files inside the project 2022-09-26 01:26:45 +02:00
dec05eba
0059724fdc Read audio data from pulseaudio as it's available and buffer it. Fixes audio recording on pulseaudio (and some pipewire configs) 2022-09-22 01:44:45 +02:00
dec05eba
5ba4c05953 Fix build for older version of ffmpeg (linux mint 20.3 for example) 2022-09-21 19:12:28 +02:00
dec05eba
f8237ca5ae Fix build on older ffmpeg (17+ months old), see ffmpeg commit ef6a9e5e311f09fa8032974fa4d0c1e166a959bb 2022-09-21 05:47:37 +02:00
dec05eba
f810161203 Is this the final solution to the audio crackling problem? increase pts by number of samples and add dummy audio frames between 2022-09-20 20:11:56 +02:00
dec05eba
a668cac2bb Do not allocate cuda buffer when using nvfbc 2022-09-20 13:10:05 +02:00
dec05eba
2b7729efb9 Fix build on ubuntu, use a mainloop with timeout instead of sleep 2022-09-20 11:01:34 +02:00
dec05eba
919890b7b2 Fix replay video/audio desync, fix dummy audio when dropping audio input, give each audio stream a new name so it can be replaced with pipewire graphs 2022-09-20 03:39:15 +02:00
dec05eba
9f2ddf3802 Fix build on some distros? 2022-09-19 23:31:21 +02:00
dec05eba
85cd5a9d11 Move scripts to script dir, add youtube-hls-stream script, fix twitch stream script 2022-09-19 16:19:41 +02:00
dec05eba
59b730a806 GNOME: fix recording windows with client-side decorations by recording the compositor window and tracking the window 2022-09-18 18:51:37 +02:00