Pliki napisów są w różnych formatach, od .srt do .sub do .ass i tak dalej. Czy istnieje sposób, aby powiedzieć mpv, aby szukał plików napisów wraz z plikami multimedialnymi i jeśli tak, aby automatycznie rozpocząć odtwarzanie pliku. Obecnie muszę zrobić coś takiego, co może być dość długie w zależności od nazwy pliku -
[$] mpv --list-options | grep sub-file
(null) requires an argument
--sub-file String list (default: ) [file]
Czekamy na odpowiedzi.
Aktualizacja 1 - Typowy film z rozszerzeniem .srt (lub indeksem dolnym)
[$] 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
Najciekawsza linia to: -
(+) Subs --sid=1 'Winter.Sleep.(Kis.Uykusu).2014.720p.BrRip.2CH.x265.HEVC.Megablast.srt' (subrip) (external)
Teraz, jeśli plik byłby .ass lub .sub o tej samej nazwie, nie działałby. Próbowałem tego w wielu plikach multimedialnych, które mają te rozszerzenia i za każdym razem mpv ładuje wideo i audio oraz protokoły, ale nie zewnętrzne pliki napisów.
Aktualizacja 2 - Część skryptu .ass jest wymieniona jako błąd w bts mpv - https://github.com/mpv-player/mpv/issues/2846
Aktualizacja 3 - Próbowałem debugować za pomocą upstream, złożony https://github.com/mpv-player/mpv/issues/3091 .
Wydaje się jednak, że to nie mpv jest odpowiedzialne, ale ffmpeg (i libavformat), który ma dekodować napisy. Dlatego też dodałem do niego ffmpeg.
srt. Możesz zgłosić problem.
0.17użycia 0.14. 0.14Opakowanie posiada 4 łatki przed Upstream, ale przeważnie wyglądają dość trywialne.