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

Ваш код слишком сложен для этого базового задания ...

pgrep -u $USER "$tbnServlet" >/dev/null && echo "Started servlet: $tbnServlet" || echo "Failed to start servlet: $tbnServlet"
2
18.12.2016, 22:13
4 ответа

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

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

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

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

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

pkg install python3

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

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

python3.4 -m ensurepip

Затем вы устанавливаете программу python subliminal . От имени пользователя root выполните

pip install subliminal

. Для автоматической загрузки английских субтитров выполните:

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

, где -l - параметр языка.

1
27.01.2020, 22:03

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

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

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

VLC VLsub Window

2
27.01.2020, 22:03
--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]

ссылка для чтения всех

0
27.01.2020, 22:03

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

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

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

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

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

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


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

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

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

очень мощная, но, возможно, несколько громоздкая в использовании, так как поставляется с большой программой с графическим интерфейсом пользователя и также требует java (которая также имеет большие размеры).

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

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

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

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

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

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

enter image description here

enter image description here

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

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


OpenSubtitlesDownload.py

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

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

Для Nautilus:

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

enter image description here

enter image description here

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

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

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


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

SMPlayer

имеет ту самую опцию, как указано здесь .

enter image description here

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

enter image description here

VLC

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

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


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

3
27.01.2020, 22:03

Теги

Похожие вопросы