summaryrefslogtreecommitdiff
path: root/config/mpv/scripts/subs2srs/utils/pause_timer.lua
diff options
context:
space:
mode:
authornavewindre <boneyaard@gmail.com>2025-04-05 03:00:29 +0200
committernavewindre <boneyaard@gmail.com>2025-04-05 03:00:29 +0200
commitd6c4365b8de32b621ac46074a9b69908b95686c0 (patch)
tree495cb5b1aa7e68ab6ec07fa5fb09904a8c7e47e7 /config/mpv/scripts/subs2srs/utils/pause_timer.lua
parentb24463f3d045783b8f4e72926054d53b908e150f (diff)
a
Diffstat (limited to 'config/mpv/scripts/subs2srs/utils/pause_timer.lua')
-rw-r--r--config/mpv/scripts/subs2srs/utils/pause_timer.lua33
1 files changed, 33 insertions, 0 deletions
diff --git a/config/mpv/scripts/subs2srs/utils/pause_timer.lua b/config/mpv/scripts/subs2srs/utils/pause_timer.lua
new file mode 100644
index 0000000..e37b0ea
--- /dev/null
+++ b/config/mpv/scripts/subs2srs/utils/pause_timer.lua
@@ -0,0 +1,33 @@
+--[[
+Copyright: Ren Tatsumoto and contributors
+License: GNU GPL, version 3 or later; http://www.gnu.org/licenses/gpl.html
+
+Pause timer stops playback when reaching a set timing.
+]]
+
+local mp = require('mp')
+local stop_time = -1
+local check_stop
+
+local set_stop_time = function(time)
+ stop_time = time
+ mp.observe_property("time-pos", "number", check_stop)
+end
+
+local stop = function()
+ mp.unobserve_property(check_stop)
+ stop_time = -1
+end
+
+check_stop = function(_, time)
+ if time > stop_time then
+ stop()
+ mp.set_property("pause", "yes")
+ end
+end
+
+return {
+ set_stop_time = set_stop_time,
+ check_stop = check_stop,
+ stop = stop,
+}