mirror of
https://github.com/ksyasuda/SubMiner.git
synced 2026-05-26 00:55:16 -07:00
127e1ea88e
- Add per-stream subtitle delay persistence and auto timeline-offset correction - Strip server-selected subtitle stream from mpv load URL; suppress plugin subtitle rearm and auto-start during app-managed preload - Fix resume position lost when mpv resets on stop; use last known position for final progress/stopped reports - Keep Play vs Resume distinct to avoid early seek race on normal play - Fix discovery resume when remote play sends StartPositionTicks=0 despite saved progress - Deduplicate show/hide overlay commands using recorded visibility state - Rewrite docs-site Jellyfin page around cast-to-device UX
56 lines
1.3 KiB
Lua
56 lines
1.3 KiB
Lua
local M = {}
|
|
|
|
function M.new()
|
|
return {
|
|
overlay_running = false,
|
|
texthooker_running = false,
|
|
overlay_process = nil,
|
|
binary_available = false,
|
|
binary_path = nil,
|
|
detected_backend = nil,
|
|
hover_highlight = {
|
|
revision = -1,
|
|
payload = nil,
|
|
saved_sub_visibility = nil,
|
|
saved_secondary_sub_visibility = nil,
|
|
overlay_active = false,
|
|
cached_ass = nil,
|
|
clear_timer = nil,
|
|
last_hover_update_ts = 0,
|
|
},
|
|
aniskip = {
|
|
mal_id = nil,
|
|
title = nil,
|
|
episode = nil,
|
|
intro_start = nil,
|
|
intro_end = nil,
|
|
payload = nil,
|
|
payload_source = nil,
|
|
found = false,
|
|
prompt_shown = false,
|
|
},
|
|
auto_play_ready_gate_armed = false,
|
|
auto_play_ready_should_resume_playback = false,
|
|
auto_play_ready_timeout = nil,
|
|
auto_play_ready_osd_timer = nil,
|
|
suppress_ready_overlay_restore = false,
|
|
force_ready_overlay_restore = false,
|
|
visible_overlay_requested = nil,
|
|
last_visible_overlay_toggle_time = nil,
|
|
current_media_identity = nil,
|
|
current_media_title = nil,
|
|
pending_reload_media_identity = nil,
|
|
pending_reload_media_title = nil,
|
|
pending_reload_reason = nil,
|
|
app_managed_playback_pending = false,
|
|
app_managed_playback_active = false,
|
|
auto_start_retry_generation = 0,
|
|
session_binding_generation = 0,
|
|
session_binding_names = {},
|
|
session_numeric_binding_names = {},
|
|
session_numeric_selection = nil,
|
|
}
|
|
end
|
|
|
|
return M
|