From 7b8f5c3e634e7ba85484e08b3957ad10ff516056 Mon Sep 17 00:00:00 2001 From: Justin Caveda Date: Sat, 24 Jan 2026 18:24:23 -0600 Subject: [PATCH] Fix(player): Disable gpu-next by default (#760) ## Description Disables gpu-next by default in MPV settings. This renderer is experimental and causes broken playback (purple screen) on some older devices like the NVIDIA Shield 2019 Pro. Also adds a migration to ensure gpu-next is turned off for existing users who upgrade, avoiding playback regressions for users being newly moved over to the Prefer MPV settings so that they can experience a smooth transition. ### Related issues Fixes #754? ### Screenshots N/A ### AI/LLM usage PR drafting --- .../damontecres/wholphin/preferences/AppPreference.kt | 2 +- .../damontecres/wholphin/services/AppUpgradeHandler.kt | 8 ++++++++ 2 files changed, 9 insertions(+), 1 deletion(-) diff --git a/app/src/main/java/com/github/damontecres/wholphin/preferences/AppPreference.kt b/app/src/main/java/com/github/damontecres/wholphin/preferences/AppPreference.kt index f1be13a4..99b457a5 100644 --- a/app/src/main/java/com/github/damontecres/wholphin/preferences/AppPreference.kt +++ b/app/src/main/java/com/github/damontecres/wholphin/preferences/AppPreference.kt @@ -783,7 +783,7 @@ sealed interface AppPreference { val MpvGpuNext = AppSwitchPreference( title = R.string.mpv_use_gpu_next, - defaultValue = true, + defaultValue = false, getter = { it.playbackPreferences.mpvOptions.useGpuNext }, setter = { prefs, value -> prefs.updateMpvOptions { useGpuNext = value } diff --git a/app/src/main/java/com/github/damontecres/wholphin/services/AppUpgradeHandler.kt b/app/src/main/java/com/github/damontecres/wholphin/services/AppUpgradeHandler.kt index 24410fa0..09d6a11e 100644 --- a/app/src/main/java/com/github/damontecres/wholphin/services/AppUpgradeHandler.kt +++ b/app/src/main/java/com/github/damontecres/wholphin/services/AppUpgradeHandler.kt @@ -209,4 +209,12 @@ suspend fun upgradeApp( } showToast(context, context.getString(R.string.upgrade_mpv_toast), Toast.LENGTH_LONG) } + + if (previous.isEqualOrBefore(Version.fromString("0.4.0-2-g0"))) { + appPreferences.updateData { + it.updateMpvOptions { + useGpuNext = false + } + } + } }