diff --git a/home/applications/mpv/default.nix b/home/applications/mpv/default.nix index b829fc0..9312854 100644 --- a/home/applications/mpv/default.nix +++ b/home/applications/mpv/default.nix @@ -23,8 +23,63 @@ sponsorblock modernx-zydezu ]) - ++ lib.optionals pkgs.stdenv.hostPlatform.isLinux (with pkgs.mpvScripts; [ - mpris - ]); + ++ lib.optional pkgs.stdenv.hostPlatform.isLinux pkgs.mpvScripts.mpris; + + bindings = let + inherit (pkgs) anime4k; + setShader = message: files: ''no-osd change-list glsl-shaders set "${lib.concatStringsSep ":" files}"; show-text "${message}"''; + in { + "CTRL+1" = setShader "Anime4K: Mode A (Fast)" [ + "${anime4k}/Anime4K_Clamp_Highlights.glsl" + "${anime4k}/Anime4K_Restore_CNN_M.glsl" + "${anime4k}/Anime4K_Upscale_CNN_x2_M.glsl" + "${anime4k}/Anime4K_AutoDownscalePre_x2.glsl" + "${anime4k}/Anime4K_AutoDownscalePre_x4.glsl" + "${anime4k}/Anime4K_Upscale_CNN_x2_S.glsl" + ]; + "CTRL+2" = setShader "Anime4K: Mode B (Fast)" [ + "${anime4k}/Anime4K_Clamp_Highlights.glsl" + "${anime4k}/Anime4K_Restore_CNN_Soft_M.glsl" + "${anime4k}/Anime4K_Upscale_CNN_x2_M.glsl" + "${anime4k}/Anime4K_AutoDownscalePre_x2.glsl" + "${anime4k}/Anime4K_AutoDownscalePre_x4.glsl" + "${anime4k}/Anime4K_Upscale_CNN_x2_S.glsl" + ]; + "CTRL+3" = setShader "Anime4K: Mode C (Fast)" [ + "${anime4k}/Anime4K_Clamp_Highlights.glsl" + "${anime4k}/Anime4K_Upscale_Denoise_CNN_x2_M.glsl" + "${anime4k}/Anime4K_AutoDownscalePre_x2.glsl" + "${anime4k}/Anime4K_AutoDownscalePre_x4.glsl" + "${anime4k}/Anime4K_Upscale_CNN_x2_S.glsl" + ]; + "CTRL+4" = setShader "Anime4K: Mode A+A (Fast)" [ + "${anime4k}/Anime4K_Clamp_Highlights.glsl" + "${anime4k}/Anime4K_Restore_CNN_M.glsl" + "${anime4k}/Anime4K_Upscale_CNN_x2_M.glsl" + "${anime4k}/Anime4K_Restore_CNN_S.glsl" + "${anime4k}/Anime4K_AutoDownscalePre_x2.glsl" + "${anime4k}/Anime4K_AutoDownscalePre_x4.glsl" + "${anime4k}/Anime4K_Upscale_CNN_x2_S.glsl" + ]; + "CTRL+5" = setShader "Anime4K: Mode B+B (Fast)" [ + "${anime4k}/Anime4K_Clamp_Highlights.glsl" + "${anime4k}/Anime4K_Restore_CNN_Soft_M.glsl" + "${anime4k}/Anime4K_Upscale_CNN_x2_M.glsl" + "${anime4k}/Anime4K_AutoDownscalePre_x2.glsl" + "${anime4k}/Anime4K_AutoDownscalePre_x4.glsl" + "${anime4k}/Anime4K_Restore_CNN_Soft_S.glsl" + "${anime4k}/Anime4K_Upscale_CNN_x2_S.glsl" + ]; + "CTRL+6" = setShader "Anime4K: Mode C+A (Fast)" [ + "${anime4k}/Anime4K_Clamp_Highlights.glsl" + "${anime4k}/Anime4K_Upscale_Denoise_CNN_x2_M.glsl" + "${anime4k}/Anime4K_AutoDownscalePre_x2.glsl" + "${anime4k}/Anime4K_AutoDownscalePre_x4.glsl" + "${anime4k}/Anime4K_Restore_CNN_S.glsl" + "${anime4k}/Anime4K_Upscale_CNN_x2_S.glsl" + ]; + + "CTRL+0" = ''no-osd change-list glsl-shaders clr ""; show-text "GLSL shaders cleared"''; + }; }; }