aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authordec05eba <dec05eba@protonmail.com>2024-06-10 17:55:05 +0200
committerdec05eba <dec05eba@protonmail.com>2024-06-10 17:55:05 +0200
commitc5dd3c8169a1e467f202f33b5a5e369988efbe3d (patch)
treebcd0d1f59083881f3d675c1178125a68df428840
parent1fee0afdb43562c2b78118b27b2b1db4f9e53404 (diff)
Use full path for tray icon images
-rw-r--r--TODO3
-rw-r--r--com.dec05eba.gpu_screen_recorder.appdata.xml9
-rw-r--r--src/main.cpp8
3 files changed, 13 insertions, 7 deletions
diff --git a/TODO b/TODO
index 2b2f3b8..c475c73 100644
--- a/TODO
+++ b/TODO
@@ -19,4 +19,5 @@ Add option to start replay on system startup (use the gpu screen recorder system
Detect suspend before it happens and unload cuda/nvenc then and reload after suspend. This is a workaround to nvidia driver bug that breaks cuda on suspend.
Disable the gpu screen recorders aur/source package systemd service if enabled in the gui since these are two different services. Or make that service and gui service the same and work with the same (gui) config file.
Remove the need to install gpu screen recorder flatpak as system. This can now be done because of kms-server-proxy.
-Implement profiles to quickly switch between settings. \ No newline at end of file
+Implement profiles to quickly switch between settings.
+Use https://hosted.weblate.org/ for translation.
diff --git a/com.dec05eba.gpu_screen_recorder.appdata.xml b/com.dec05eba.gpu_screen_recorder.appdata.xml
index 5accf09..d2b0149 100644
--- a/com.dec05eba.gpu_screen_recorder.appdata.xml
+++ b/com.dec05eba.gpu_screen_recorder.appdata.xml
@@ -49,6 +49,9 @@
If the video doesn't play or you get green/yellow overlay then your video player is missing H264/HEVC video codec. Either install the video codecs or use mpv.
</p>
<p>
+ By default on AMD/NVIDIA HEVC video codec is used. This may not play in your video player or browser of choice or discord. The video will still work if you upload it to a site such as youtube. Alternatively you can switch to H264 video codec in advanced view for compatibility with outdated video players/websites.
+ </p>
+ <p>
If the video is glitched with checkerboard pattern and you are using and Intel integrated GPU on wayland then this is a known issue and right now the only solution is to record on X11 instead.
</p>
<p>AMD has a driver/hardware fault that causes black bars/distorted colors on the right side/bottom of the video for certain video resolutions. This happens for both av1 and hevc, so if you have this issue then switch to h264 video codec option in advanced settings.</p>
@@ -81,11 +84,13 @@
</screenshots>
<releases>
- <release version="3.8.0" date="2024-06-02">
+ <release version="3.8.0" date="2024-06-10">
<description>
<ul>
<li>Add system tray icon</li>
- <li>Notify recording as successful when closing window while recording</li>
+ <li>Fix screen recording on Intel ARC GPU</li>
+ <li>Workaround AMD driver bug with HEVC video codec that causes glitched graphics on the right/bottom side with certain video resolutions. It's now replaced with black color</li>
+ <li>Fix possible incorrect monitor rotation when using multiple monitors with one monitor rotated on GNOME Wayland</li>
<li>Add hls (m3u8) container option</li>
</ul>
</description>
diff --git a/src/main.cpp b/src/main.cpp
index 6f1679b..808e9cf 100644
--- a/src/main.cpp
+++ b/src/main.cpp
@@ -140,9 +140,9 @@ static double notification_timeout_seconds = 0.0;
static double notification_start_seconds = 0.0;
static AppIndicator *app_indicator;
-static const char *tray_idle_icon_name = "tray_idle";
-static const char *tray_recording_icon_name = "tray_recording";
-static const char *tray_paused_icon_name = "tray_paused";
+static const char *tray_idle_icon_name = "/usr/share/com.dec05eba.gpu_screen_recorder/tray_idle.png";
+static const char *tray_recording_icon_name = "/usr/share/com.dec05eba.gpu_screen_recorder/tray_recording.png";
+static const char *tray_paused_icon_name = "/usr/share/com.dec05eba.gpu_screen_recorder/tray_paused.png";
struct AudioInput {
std::string name;
@@ -390,7 +390,7 @@ static GtkMenuShell* create_systray_menu(GtkApplication *app, SystrayPage systra
}
static void setup_systray(GtkApplication *app) {
- app_indicator = app_indicator_new_with_path("com.dec05eba.gpu_screen_recorder", tray_idle_icon_name, APP_INDICATOR_CATEGORY_APPLICATION_STATUS, "/usr/share/com.dec05eba.gpu_screen_recorder");
+ app_indicator = app_indicator_new("com.dec05eba.gpu_screen_recorder", tray_idle_icon_name, APP_INDICATOR_CATEGORY_APPLICATION_STATUS);
// This triggers Gdk assert: gdk_window_thaw_toplevel_updates: assertion 'window->update_and_descendants_freeze_count > 0' failed,
// dont know why but it works anyways
app_indicator_set_status(app_indicator, APP_INDICATOR_STATUS_ACTIVE);