Untertiteldateien gibt es in verschiedenen Formaten, von .srt über .sub bis .ass und so weiter und so fort. Gibt es eine Möglichkeit, mpv anzuweisen, zusammen mit den Mediendateien nach Untertiteldateien zu suchen und die Datei automatisch abzuspielen? Momentan muss ich so etwas machen, was je nach Dateiname ziemlich lang sein kann -
[$] mpv --list-options | grep sub-file
(null) requires an argument
--sub-file String list (default: ) [file]
Freuen Sie sich auf Antworten.
Update 1 - Ein typischer Film mit .srt (oder Index)
[$] mpv Winter.Sleep.\(Kis.Uykusu\).2014.720p.BrRip.2CH.x265.HEVC.Megablast.mkv
(null) requires an argument
Playing: Winter.Sleep.(Kis.Uykusu).2014.720p.BrRip.2CH.x265.HEVC.Megablast.mkv
(+) Video --vid=1 (*) (hevc)
(+) Audio --aid=1 (aac)
(+) Subs --sid=1 'Winter.Sleep.(Kis.Uykusu).2014.720p.BrRip.2CH.x265.HEVC.Megablast.srt' (subrip) (external)
[vo/opengl] Could not create EGL context!
[sub] Using subtitle charset: UTF-8-BROKEN
AO: [alsa] 48000Hz stereo 2ch float
VO: [opengl] 1280x536 yuv420p
AV: 00:02:14 / 03:16:45 (1%) A-V: 0.000
Die interessanteste Zeile lautet: -
(+) Subs --sid=1 'Winter.Sleep.(Kis.Uykusu).2014.720p.BrRip.2CH.x265.HEVC.Megablast.srt' (subrip) (external)
Wenn die Datei nun .ass oder .sub mit demselben Dateinamen wäre, würde sie nicht funktionieren. Ich habe es in vielen Mediendateien versucht, die diese Erweiterungen haben, und jedes Mal, wenn mpv das Video und Audio und die Protokolle lädt, aber nicht die externen Untertiteldateien.
Update 2 - Der .ass-Skriptteil wird als Fehler bei mpvs bts aufgeführt - https://github.com/mpv-player/mpv/issues/2846
Update 3 - Habe versucht, mit Hilfe von Upstream zu debuggen, dafür https://github.com/mpv-player/mpv/issues/3091 .
Es scheint jedoch, dass nicht mpv verantwortlich ist, sondern ffmpeg (und libavformat) die Untertitel entschlüsseln sollen. Daher habe ich auch ffmpeg hinzugefügt.
quelle
srt
. Sie könnten ein Problem damit einreichen.0.17
Verwendung der0.14
Verpackung zu erstellen . Die0.14
Verpackung hat 4 Patches gegen Upstream, aber sie sehen meistens ziemlich trivial aus.Antworten:
Wie zu sehen in
man mpv
:exact
scheint die richtige Wahl zu sein, aber da dies die Standardeinstellung ist und keine Dateien wie geladen werden[video name minus extension].srt
,fuzzy
ist dies die nächstbeste Wahl und funktioniert auf meinem System.Also einfach
echo "sub-auto=fuzzy" >> ~/.config/mpv/mpv.conf
.quelle
Ich benutze eine einfache Funktion:
Wenn Sie das Vorhandensein von Untertiteldateien mit unterschiedlichen Erweiterungen testen möchten, können Sie einen komplexeren Ansatz verwenden:
quelle
Wenn Sie so etwas erstellen möchten (klicken Sie auf eine Datei, die mit mpv verknüpft ist, und spielen Sie mit Untertiteln).
innen
/usr/share/applications/mpv.desktop
:dann im
mpv2.sh
Skript:quelle