Alles anzeigenIch hätte eine Frage zu Subtitles:
Ich habe eine MKV mit einem Subtilte-Stream der normale als auch forced Subs enthält. In der mpv.conf ist die Option sub-forced-only=yes eingetragen, es werden aber trotzdem alle subs angezeigt.
Müssen hier noch andere Parameter gesetzt werden? slang ist auf de,ger gesetzt.
In Kodi mit dem internen Player funktioniert es richtig.
Warum auch immer funktioniert das nicht richtig mit mpv.
Hier meien Lösung:
Code: forcedsubs.lua
require "mp.msg"
require "mp.options"
local options = {
-- behavior
enable = true, -- enable or disable the functionality
langs = "en eng de ger", -- priority list to find a forced sub
}
read_options(options)
function trim(s)
return (s:gsub("^%s*(.-)%s*$", "%1"))
end
-- just load forced subs
function control_subs()
if options.enable == false then
return false
end
for _, track in ipairs(mp.get_property_native('track-list')) do
if track['type'] == 'sub' then
if track["forced"] == true or (track['title'] ~= nil and (string.find(string.lower(track['title']), "forced") or string.find(string.lower(track['title']), "off"))) then
for lang in string.gmatch(options.langs, "%S+%s?") do
if string.find(string.lower(trim(track['lang'])), trim(lang)) then
mp.set_property('sid', track["id"])
return true
end
end
end
end
end
end
mp.register_event('file-loaded', control_subs)
Alles anzeigen
Den Parameter langs musst du evtl anpassen, falls du auf Deutsch schaust.
Ich schaue in der Regel auf Englisch und bis jetzt funktionierte das Script bei allen Titeln.
In der Config habe ich dann "sid=no" eingetragen