diff --git a/Dockerfile b/Dockerfile index 6995b07..6def371 100644 --- a/Dockerfile +++ b/Dockerfile @@ -27,9 +27,6 @@ FROM ${BASE_IMAGE}:${FEDORA_MAJOR_VERSION} AS builder ARG IMAGE_NAME="${IMAGE_NAME}" ARG FEDORA_MAJOR_VERSION="${FEDORA_MAJOR_VERSION}" -# copy gpu screen recorder and gpu screen recorder gtk -COPY gpu-screen-recorder/ /tmp/gpu-screen-recorder/ -COPY gpu-screen-recorder-gtk/ /tmp/gpu-screen-recorder-gtk/ RUN cd /tmp && \ # remove Okular and Firefox from base image @@ -51,12 +48,6 @@ rpm-ostree install nvidia-vaapi-driver nvidia-persistenced opencl-filesystem && # install Mullvad VPN mkdir /var/opt && rpm-ostree install https://mullvad.net/da/download/app/rpm/latest && \ mv "/opt/Mullvad VPN" /usr/lib/opt/ && \ -# install gpu screen recorder and gpu screen recorder gtk -cd /tmp/gpu-screen-recorder && \ -./install.sh && \ -setcap cap_sys_admin+ep '/usr/bin/gsr-kms-server' && \ -cd /tmp/gpu-screen-recorder-gtk && \ -./install.sh && \ # enable automatic updates sed -i 's/#AutomaticUpdatePolicy.*/AutomaticUpdatePolicy=stage/' /etc/rpm-ostreed.conf && \ # change auto update interval diff --git a/gpu-screen-recorder-gtk/com.dec05eba.gpu_screen_recorder.appdata.xml b/gpu-screen-recorder-gtk/com.dec05eba.gpu_screen_recorder.appdata.xml deleted file mode 100644 index 4421aea..0000000 --- a/gpu-screen-recorder-gtk/com.dec05eba.gpu_screen_recorder.appdata.xml +++ /dev/null @@ -1,200 +0,0 @@ - - - com.dec05eba.gpu_screen_recorder - GPU Screen Recorder - A shadowplay-like screen recorder for Linux. The fastest screen recorder for Linux - dec05eba - CC0-1.0 - GPL-3.0 - https://git.dec05eba.com/gpu-screen-recorder/about/ - https://git.dec05eba.com/?p=about - https://git.dec05eba.com/?p=about - https://git.dec05eba.com/?p=about - - - pointing - keyboard - - - -

- This is a screen recorder that has minimal impact on system performance by recording a window using the GPU only, similar to shadowplay on windows. This is the fastest screen recording tool for Linux. This screen recorder works with both X11 and Wayland. -

-

- This screen recorder can be used for recording your desktop offline, for live streaming and for nvidia-like instant replay, where only the last few seconds are saved. -

-

- There are some restrictions when recording on AMD/Intel. Videos created on AMD/Intel are in variable framerate format. Very out of date video players might have an issue playing such videos. I recommend using MPV or a browser to play such videos, otherwise you might experience stuttering in the video. - Recording a monitor requires (restricted) root access which means that you have to install GPU Screen Recorder system-wide: flatpak install flathub --system com.dec05eba.gpu_screen_recorder - and pkexec needs to be installed on the system. This is also the case when using wayland on Nvidia. - Some distros such as manjaro disable hardware accelerated H264/HEVC which means GPU Screen Recorder wont work on AMD/Intel and you have to either switch to another distro or install mesa from source (or install mesa-git for example). -

-
- - com.dec05eba.gpu_screen_recorder.desktop - - - Simple view - https://raw.githubusercontent.com/dec05eba/com.dec05eba.gpu_screen_recorder/master/resources/screenshot1.png - - - Advanced view - https://raw.githubusercontent.com/dec05eba/com.dec05eba.gpu_screen_recorder/master/resources/screenshot2.png - - - - - - -

Experimental wayland support on AMD/Intel/NVIDIA. Hotkeys not supported.

-
-
- - -

Attempt to fix screen recording when multiple graphics cards are connected

-
-
- - -

Show proper error when running on wayland. Preparing for wayland support.

-
-
- - -

AMD/Intel: fix multi monitor capture coordinate being incorrect for some GPU driver versions.

-
-
- - -

Attempt to fix a recent nvidia (cuda) driver bug on RTX cards that causes a freeze when stopping recording.

-
-
- - -

Fix issue where the application freezes and keyboard freezes when selecting a new hotkey and another widget is clicked.

-
-
- - -

Attempt to fix possible issue on some systems with amd/intel where capture region is incorrect when multiple monitors are connected.

-
-
- - -

Attempt to fix possible audio/video sync on NVIDIA after recording for a long time. Temporary disable opus/flac because it breaks when recording multiple audio inputs.

-
-
- - -

AMD/Intel: Add support for capturing cursor when recording a monitor. Fix some cases of capture being glitched when using multiple monitors.

-
-
- - -

Enable AMD/Intel monitor capture. Requires the flatpak to be installed system-wide and it requires restricted root access. Record a single window if you dont like these restrictions. Videos created on AMD/Intel should be played with MPV otherwise it might have issues such as stuttering.

-
-
- - -

Add experimental support for AMD/Intel. Quality might not be well tuned yet and the video is in variable framerate mode, which might cause issues with some out of date video editing software or video players. Recording on AMD/intel is currently limited to a window (monitor capture is not possible yet).

-
-
- - -

Show error when using wayland (because wayland is not supported)

-
-
- - -

Add option to workaround a NVIDIA driver "bug" that causes framerate to drop a bit when recording (overclock memory transfer rate back to normal)

-
-
- - -

Make it clear when graphics card is not supported

-
-
- - -
    -
  • Add VRR record option, only use with VRR as it might have driver issues!
  • -
  • Add opus/flac audio options. opus/flac is only supported by .mp4/.mkv. Automatically changes audio codec if not supported by the container
  • -
-
-
- - -

Fix broken replay when recording with audio (possibly broken in normal recording as well)

-
-
- - -
    -
  • Switch to EGL (fixes possible window capture issues when using a compositor)
  • -
  • Add option to change hotkeys
  • -
  • Add option to merge audio tracks into one audio track
  • -
  • Add option to follow the focused window
  • -
  • Add option to force set h264/hevc (services such as discord can't play hevc videos directly in the application)
  • -
  • Show proper error when NVIDIA GPU is not in use
  • -
-
-
- - -

Allow choosing between mp4, flv and mkv for record/replay. mkv survives system crashes

-
-
- - -

Re-enable screen-direct, disable h264 forced fallback and use p6 again

-
-
- - -

Attempt to fix stuttering in video that can happen sometimes (especially when vsync is enabled)

-
-
- - -

Properly fallback to h264 if hevc is not supported by the gpu

-
-
- - -

Fix livestreaming: flv does not properly fallback to h264

-
-
- - -

Use lower preset on older gpus (kepler) and switch to h264 if h265 is not supported

-
-
- - -

Tune options to try and reduce file size

-
-
- - -

Better tune quality options for different resolutions

-
-
- - -

Fix crash caused by invalid memory write when recording audio

-
-
- - -

Fix possible pulseaudio crash

-
-
- - -

Fixes some streaming issues (mostly metadata missing)

-
-
- -
- -
diff --git a/gpu-screen-recorder-gtk/gpu-screen-recorder-gtk b/gpu-screen-recorder-gtk/gpu-screen-recorder-gtk deleted file mode 100755 index b50fb40..0000000 Binary files a/gpu-screen-recorder-gtk/gpu-screen-recorder-gtk and /dev/null differ diff --git a/gpu-screen-recorder-gtk/gpu-screen-recorder-gtk.desktop b/gpu-screen-recorder-gtk/gpu-screen-recorder-gtk.desktop deleted file mode 100644 index 0a83558..0000000 --- a/gpu-screen-recorder-gtk/gpu-screen-recorder-gtk.desktop +++ /dev/null @@ -1,10 +0,0 @@ -[Desktop Entry] -Type=Application -Name=GPU Screen Recorder -GenericName=Screen recorder -Comment=A gpu based screen recorder / streaming program -Icon=com.dec05eba.gpu_screen_recorder -Exec=gpu-screen-recorder-gtk -Terminal=false -Keywords=gpu-screen-recorder;screen recorder;streaming;twitch;replay; -Categories=AudioVideo;Recorder; diff --git a/gpu-screen-recorder-gtk/icons/hicolor/128x128/apps/com.dec05eba.gpu_screen_recorder.png b/gpu-screen-recorder-gtk/icons/hicolor/128x128/apps/com.dec05eba.gpu_screen_recorder.png deleted file mode 100644 index f2b99a1..0000000 Binary files a/gpu-screen-recorder-gtk/icons/hicolor/128x128/apps/com.dec05eba.gpu_screen_recorder.png and /dev/null differ diff --git a/gpu-screen-recorder-gtk/icons/hicolor/64x64/apps/com.dec05eba.gpu_screen_recorder.png b/gpu-screen-recorder-gtk/icons/hicolor/64x64/apps/com.dec05eba.gpu_screen_recorder.png deleted file mode 100644 index f66332b..0000000 Binary files a/gpu-screen-recorder-gtk/icons/hicolor/64x64/apps/com.dec05eba.gpu_screen_recorder.png and /dev/null differ diff --git a/gpu-screen-recorder-gtk/install.sh b/gpu-screen-recorder-gtk/install.sh deleted file mode 100755 index b096e2c..0000000 --- a/gpu-screen-recorder-gtk/install.sh +++ /dev/null @@ -1,16 +0,0 @@ -#!/bin/sh -e - -script_dir=$(dirname "$0") -cd "$script_dir" - -[ $(id -u) -ne 0 ] && echo "You need root privileges to run the install script" && exit 1 - -#./build.sh - -install -Dm755 "gpu-screen-recorder-gtk" "/usr/bin/gpu-screen-recorder-gtk" -install -Dm644 "gpu-screen-recorder-gtk.desktop" "/usr/share/applications/com.dec05eba.gpu_screen_recorder.desktop" -install -Dm644 com.dec05eba.gpu_screen_recorder.appdata.xml "/usr/share/metainfo/com.dec05eba.gpu_screen_recorder.appdata.xml" -install -Dm644 icons/hicolor/64x64/apps/com.dec05eba.gpu_screen_recorder.png "/usr/share/icons/hicolor/64x64/apps/com.dec05eba.gpu_screen_recorder.png" -install -Dm644 icons/hicolor/128x128/apps/com.dec05eba.gpu_screen_recorder.png "/usr/share/icons/hicolor/128x128/apps/com.dec05eba.gpu_screen_recorder.png" - -echo "Successfully installed gpu-screen-recorder-gtk" \ No newline at end of file diff --git a/gpu-screen-recorder/gpu-screen-recorder b/gpu-screen-recorder/gpu-screen-recorder deleted file mode 100755 index cf39057..0000000 Binary files a/gpu-screen-recorder/gpu-screen-recorder and /dev/null differ diff --git a/gpu-screen-recorder/gsr-kms-server b/gpu-screen-recorder/gsr-kms-server deleted file mode 100755 index 80a5b08..0000000 Binary files a/gpu-screen-recorder/gsr-kms-server and /dev/null differ diff --git a/gpu-screen-recorder/install.sh b/gpu-screen-recorder/install.sh deleted file mode 100755 index ecdb99f..0000000 --- a/gpu-screen-recorder/install.sh +++ /dev/null @@ -1,15 +0,0 @@ -#!/bin/sh - -script_dir=$(dirname "$0") -cd "$script_dir" - -[ $(id -u) -ne 0 ] && echo "You need root privileges to run the install script" && exit 1 - -# ./build.sh -strip gsr-kms-server -strip gpu-screen-recorder -rm -f "/usr/local/bin/gpu-screen-recorder" -install -Dm755 "gsr-kms-server" "/usr/bin/gsr-kms-server" -install -Dm755 "gpu-screen-recorder" "/usr/bin/gpu-screen-recorder" - -echo "Successfully installed gpu-screen-recorder"