add(jellyfin): jellyfin-mpv-shim
This commit is contained in:
@@ -2,37 +2,64 @@
|
||||
services.jellyfin-mpv-shim = {
|
||||
enable = true;
|
||||
package = pkgs.jellyfin-mpv-shim;
|
||||
|
||||
mpvConfig = {
|
||||
osc = false;
|
||||
osd-bar = false;
|
||||
load-scripts = true;
|
||||
input-vo-keyboard = true;
|
||||
input-default-bindings = true;
|
||||
|
||||
# Automatic subtitle selection logic:
|
||||
# Prefer English subtitles
|
||||
slang = "eng,en";
|
||||
# Prefer Japanese/Non-English audio first (if that's what you usually watch)
|
||||
# or just ensure English subs are picked when audio isn't English.
|
||||
sub-auto = "fuzzy";
|
||||
sub-visibility = "yes";
|
||||
};
|
||||
|
||||
mpvBindings = {
|
||||
"j" = "cycle sub";
|
||||
"S-j" = "cycle sub rev";
|
||||
"v" = "cycle sub-visibility";
|
||||
};
|
||||
|
||||
settings = {
|
||||
use_mpv_config = false;
|
||||
enable_osc = false;
|
||||
menu_mouse = true;
|
||||
|
||||
# Shim specific auto-sub logic
|
||||
# "subs-fallback" is a known good setting for the shim to handle this
|
||||
subtitle_color = "#FFFFFFFF";
|
||||
subtitle_size = 100;
|
||||
|
||||
audio_output = "hdmi";
|
||||
auto_play = true;
|
||||
check_updates = false;
|
||||
discord_presence = true;
|
||||
enable_gui = true;
|
||||
enable_osc = true;
|
||||
fullscreen = true;
|
||||
menu_mouse = true;
|
||||
player_name = "hakase";
|
||||
raise_mpv = true;
|
||||
shader_pack_enable = true;
|
||||
shader_pack_remember = true;
|
||||
shader_pack_subtype = "lq";
|
||||
skip_credits_enable = true;
|
||||
skip_intro_enable = true;
|
||||
thumbnail_enable = true;
|
||||
thumbnail_osc_builtin = true;
|
||||
use_mpv_config = true;
|
||||
menu_style = "osc";
|
||||
# Good UI/Quality defaults
|
||||
remote_kbps = 100000;
|
||||
local_kbps = 1000000;
|
||||
lang_filter = "und,eng,jpn,mis,mul,zxx";
|
||||
subtitle_size = 100;
|
||||
subtitle_color = "#FFFFFFFF";
|
||||
seek_left = -5;
|
||||
seek_right = 5;
|
||||
};
|
||||
};
|
||||
|
||||
# Modern OSC + Quality scripts
|
||||
home.file.".config/jellyfin-mpv-shim/scripts/uosc" = {
|
||||
source = "${pkgs.mpvScripts.uosc}/share/mpv/scripts/uosc";
|
||||
};
|
||||
home.file.".config/jellyfin-mpv-shim/scripts/thumbfast.lua" = {
|
||||
source = "${pkgs.mpvScripts.thumbfast}/share/mpv/scripts/thumbfast.lua";
|
||||
};
|
||||
home.file.".config/jellyfin-mpv-shim/scripts/autocrop.lua" = {
|
||||
source = "${pkgs.mpvScripts.autocrop}/share/mpv/scripts/autocrop.lua";
|
||||
};
|
||||
|
||||
home.file.".config/jellyfin-mpv-shim/fonts" = {
|
||||
source = "${pkgs.mpvScripts.uosc}/share/fonts";
|
||||
recursive = true;
|
||||
};
|
||||
|
||||
wayland.windowManager.hyprland.settings.windowrulev2 = [
|
||||
# --- JELLYFIN MPV SHIM ---
|
||||
"float, class:^(jellyfin-mpv-shim)$"
|
||||
@@ -42,4 +69,4 @@
|
||||
"idleinhibit focus, class:^(jellyfin-mpv-shim)$"
|
||||
"noblur, class:^(jellyfin-mpv-shim)$"
|
||||
];
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user