Автоматическая загрузка субтитров

Существует медиаплеер для Windows, BSPlayer, который может автоматически загружать субтитры.

Самое замечательное в том, что это волшебство всегда выбирает правильный, в отличие от ручной загрузки, где можно закончить с субтитрами, которые не синхронизированы правильно. Я не знаю, как он это делает и какую информацию в файле фильма он использует. Он определенно проверяет несколько сайтов субтитров.

Есть ли что-нибудь в мире Linux для эмуляции этой функциональности?

4 Solutions collect form web for “Автоматическая загрузка субтитров”

VLC поставляется с плагином (встроенный?) VLsub названием VLsub который позволяет вам искать подзаголовок на основе HASH или только его имя. (Он был интегрирован в VLC 2.2, но он должен время от времени обновляться отсюда .)

Для его установки необходима папка ~/.local/share/vlc/lua/extensions/ для текущего пользователя и /usr/lib/vlc/lua/extensions/ для всех пользователей.

  • Параметр « Search by Hash является очень точным, но для него требуется хэш-файл, который может быть затруднен, если вы парите файл по сети.
  • Опция « Search by Name выполняется намного быстрее, но менее точная.

Окно VLC VLsub

Я отрегулирую свой ответ по этому вопросу для нужд вашего вопроса.

Существует два типа поиска субтитров:

  • Поиск HASH : точное совпадение, меньшее количество обращений; шансы найти субтитры меньше (50% или меньше по моему опыту), но шансы на то, что найденные субтитры будут хорошими, очень высоки (возможно, на 100%),

  • поиск по названию : больше шансов найти субтитры для видео (возможно, 90%), меньше шансов на то, что все обнаружено хорошо, но отличные шансы, что один из них хорош.

Но сами приложения либо используют поиск только HASH, либо HASH и поиск по имени . Поскольку последние сначала пробуют точный поиск HASH, а затем выполняют поиск по имени, я бы предпочел последнее.

Но есть и другие различия между этими инструментами, а именно: субтитры погоды автоматически загружаются (без какого-либо вмешательства с вашей стороны) или просто перечислены. Обратите внимание, что полностью автоматическая загрузка идеальна только тогда, когда вам нужны только субтитры только для одного языка и когда хеш-поиск завершается успешно. Необходимость выбора в списке может быть преимуществом, когда поиск и поиск только по имени.


Из вашего собственного ответа я вижу, что вы остановились на subliminal , что далека от того, что вы задаете в вопросе (инструмент, который действует близко к тому, что делает BSPlayer), поэтому я сначала предлагаю некоторые решения, которые в меньшей степени похожи на BSPlayer, и больше похоже на subliminal .

Есть несколько удобных решений для добавления поиска субтитров (как по HASH, так и имени) в контекстное меню файлового менеджера . Первая – это программа командной строки, которая очень похожа на subliminal , вторая – скрипт.

Версия командной строки FileBot

мой любимый. Требуется установить java.

Общая команда – filebot -get-subtitles /path/to/video/ .

Для поиска также по имени (рядом с хэшем) следует использовать параметр -non-strict .

Для загрузки английских субтитров не требуется языковая опция, но для других языков есть опция --lang с 2 или 3 буквенным кодом языка , но для каждой команды может быть указан только один язык, поэтому вам нужно использовать отдельные команды для каждого языка ,

Чтобы переименовать медиафайлы (используя TMDb) и совместить их имена, полезной опцией является -rename .

Команда может быть добавлена ​​в контекстное меню в пользовательских действиях Thunar (или действиях Nautilus и т. Д.), Запустив его в терминале; для французского языка это должно быть:

 gnome-terminal -e "filebot -get-subtitles --lang fr -rename -non-strict %f" 

введите описание изображения здесь

введите описание изображения здесь

Мне особенно нравится в нем возможность скачивать субтитры сразу для нескольких видеороликов ; для этого вам нужно поместить их в папку, выберите папку, а затем пункт контекстного меню (для этого вам нужно добавить каталог в условия действия в инструменте конфигурации Thunar или Nautilus), и он будет загружать субтитры для все включено видео. – Таким образом (если -rename опция -rename ), она может одновременно корректировать и сопоставлять имя нескольких видео и файлов.

Вам не нужно и не можете выбирать между субтитрами, но он как-то может выбрать лучшие субтитры, даже если они были найдены после поиска имени.


OpenSubtitlesDownload.py

OpenSubtitlesDownload.py – это другой инструмент контекстного меню диспетчера файлов, который выполняет поиск по хэшу и имени.

«Он может использоваться как сценарий nautilus или как обычное приложение, работающее в среде GNOME или KDE».

Для Наутилуса:

 git clone https://github.com/emericg/OpenSubtitlesDownload.git mkdir -p ~/.local/share/nautilus/scripts/ cp OpenSubtitlesDownload/OpenSubtitlesDownload.py ~/.local/share/nautilus/scripts/OpenSubtitlesDownload.py chmod u+x ~/.local/share/nautilus/scripts/OpenSubtitlesDownload.py 

введите описание изображения здесь

введите описание изображения здесь

Но скрипт OpenSubtitlesDownload.py можно использовать в других диспетчерах файлов (пользовательские действия Thunar, действия Nemo, файлы контракта Pantheon-Files), добавив команду

 sh -c "/path/to/OpenSubtitlesDownload.py %f" 

Единственный недостаток, который я заметил, заключается в том, что он кажется менее эффективным в поиске субтитров для сериалов, чем для художественных фильмов.


Если вы хотите что-то точно похожее на BSPlayer (и MPC-HC, если на то пошло) в Windows:

SMPlayer

имеет такой вариант, как указано здесь .

введите описание изображения здесь

SMPlayer проверяет только хэш: вы можете получить меньше ударов, чем с другими инструментами . (Я должен проверить, что делает BSPlayer.)

VLC

Уже упоминалось в другом ответе. Вы упоминаете ошибку в своем ответе; но даже если это не исправлено (я сомневаюсь, что) инструмент загрузки субтитров (VLSub) не затрагивается. Вы можете запустить фильм в VLC, загрузить субтитры, а затем сыграть в mpv. Только вам нужно постоянно обновлять VLSub.

VLC ищет как хэш, так и имя ; он позволяет вам выбирать субтитры, но последний тестируемый автоматически заменяет предыдущий.


Версия SubDownloader и FileBot GUI – это программы, которые запускаются отдельно от любого игрока и из файлового менеджера. Они полезны, я думаю, особенно при поиске субтитров для нескольких видеороликов (хотя для этого я использую версию CLI FileBot, как указано выше), а также способ их отображения перед их загрузкой. Я нахожу этот тип приложений немного громоздким по сравнению с предыдущими. SubDownload ищет только HASH.

Предложение Рабина приятно, я как-то пропустил, что у VLC была эта функциональность. К сожалению, у меня серьезные проблемы с VLC из-за этой ошибки.

Я нашел решение, которое не зависит от используемого вами игрока (я использую mplayer).

По общему признанию, я даже не использую Linux, а FreeBSD. 😉

Вот как я это сделал:

Установите Python 3:

 pkg install python3 

Вам понадобится pip, он поставляется с python 3.4+, для более ранней версии см. Здесь .

В FreeBSD (я думаю, что это можно пропустить для Linux?), Вы также должны:

 python3.4 -m ensurepip 

Затем вы устанавливаете подпоминание программы python. Как root, выполните

 pip install subliminal 

Чтобы автоматически загружать субтитры на английском языке, вы должны:

 subliminal download -l en The.Big.Bang.Theory.S05E18.HDTV.x264-LOL.mp4 

где -l – вариант языка.

 --write-sub Write subtitle file --write-auto-sub Write automatic subtitle file (YouTube only) --all-subs Download all the available subtitles of the video --list-subs List all available subtitles for the video --sub-format FORMAT Subtitle format, accepts formats preference, for example: "srt" or "ass/srt/best" --sub-lang LANGS Languages of the subtitles to download (optional) separated by commas, use IETF language tags like 'en,pt' 

Так, например, чтобы перечислить все субтитры для видео:

 youtube-dl --list-subs [link video] 

Чтобы загрузить все субтитры, но не видео:

 youtube-dl --all-subs --skip-download [link video] 

ссылка на все

  • Есть ли какие-либо продвинутые диспетчеры буфера обмена для Linux?
  • Переключатель ISP при сбое подключения (избыточное подключение к Интернету)
  • Есть ли варианты gui для passwordstore
  • Инструмент командной строки для поиска и замены многострочного регулярного выражения
  • Шифрование и обфускация имен файлов
  • Аудиочастотный спектр видео в данный момент времени
  • Консольный текстовый редактор с сочетаниями клавиш Windows (ctrl-z, x, c, v)
  • Начиная с CAD на linux
  • Файлы отображения многоязыковой клавиатуры
  • Клиент электронной почты, который понимает как HTML, так и maildir
  • Прожектор / Поиск по Fedora
  • Программное обеспечение для записи личных данных
  • Linux и Unix - лучшая ОС в мире.