Skip to content

Instantly share code, notes, and snippets.

@elenril
Created November 16, 2021 07:47
Show Gist options
  • Save elenril/f8ff9475a7882b7a16cdd723c7dce150 to your computer and use it in GitHub Desktop.
Save elenril/f8ff9475a7882b7a16cdd723c7dce150 to your computer and use it in GitHub Desktop.
MPV script that deactivates XScreensaver when video playback is active
-- this script periodically deactivates xscreensaver
-- when video playback is active
local function heartbeat()
if mp.get_property_native("pause") or
mp.get_property_native("idle") or
not mp.get_property_native("vo-configured") then
return
end
mp.command_native_async(
{
name = "subprocess",
args = { "xscreensaver-command", "-deactivate" },
capture_stdout = true,
},
function () end)
end
mp.add_periodic_timer(60, heartbeat)
for _, prop in ipairs({"pause", "idle", "vo-configured"}) do
mp.observe_property(prop, nil, heartbeat)
end
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment