вторник, 26 мая 2009 г.

Просмотр одновременно нескольких субтитров при проигрывании фильма

Недавно решил попробовать подтянуть свои знания английского языка общеизвестным методом просмотра зарубежных сериалов в оригинальной озвучке с английскими и русскими субтитрами. Полез в Synaptic и стал искать там подходящий для этого плеер. Собственно что хотелось:
  • Возможность одновременного просмотра нескольких субтитров на разных языках;
  • Возможность выделять текст субтитров, чтобы вставить его в словарь.

К моему удивлению, ничего подходящего мне найти не удалось. Да, есть, например, gnome-subtitles, который позволяет это сделать, но почему-то разработчики не добавили в него такую вроде-бы совершенно необходимую функциональность, как прокручивание текста субтитров при воспроизведении фильма. Т. е. в gnome-subtitles следить за тем, какие субтитры должны быть активны в данный момент, приходится самому.

В итоге, не долго думая, я сел и написал собственный велосипед, благо мой любимый MPlayer довольно дружественен к пользователю тем, что не стесняясь выдает на свой стандартный вывод все, что в нем происходит. Поэтому все, что мне было нужно - это написать обертку над MPlayer'ом, которая будет подглядывать за его выводом и отображать нужные мне субтитры так, как я этого хочу.

Получилось вот что:


submplayer работает в точности как MPlayer, разве что путь к видеофайлу лучше передавать в командной строке первым аргументом, т. к. при запуске он просматривает список переданных аргументов и принимает в качестве пути к файлу, который необходимо воспроизвести, первый встретившийся аргумент, начинающийся не на "-". Определив путь к видеофайлу, как ${parent_directory}/${file_name}.${file_ext}, submplayer ищет и открывает все найденные субтитры вида ${parent_directory}/${file_name}*.srt.

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

Вообщем, результат меня устроил. :) Ну и как всегда, выкладываю сие творение в общий доступ на случай, если она пригодится кому-то кроме меня: submplayer.

P.S.: Субтитры беру с www.tvsubtitles.net, но, честно говоря, их качество меня не очень устраивает, к тому же, если говорить о сериале Scrubs, то русские субтитры там есть только для 6-8 сезонов. Вообщем, если кто подскажет, где еще можно найти субтитры хорошего качества, буду очень благодарен. Или, может быть, существуют какие-либо релиз-группы вроде lostfilm.tv и novafilm.tv, но выпускающие вместо озвучки профессионально составленные русские и английские субтитры?

21 комментарий:

Beggy комментирует...

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

Dmitry Konishchev комментирует...

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

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

Unknown комментирует...

Недавно тоже озадачился вопросом улучшения знаний английского и точно так же сел смотреть сериал с субтитрами :)

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

Спасибо за разработку.

Анонимный комментирует...

http://notabenoid.com
Это про титры. Точнее, про перевод.
Как я понял, при сильном желании там можно участвовать в процессе перевода.

Dmitry Konishchev комментирует...

Да, спасибо, про http://notabenoid.com/ я знаю - как раз многие из их субтитров попадают на www.tvsubtitles.net, но вот именно из-за того, что переводить там может любой желающий, качество субтитров сильно падает. Ни в коем случае не хочу никого обидеть, просто если уж целью является изучение языка, то хотелось бы все-таки профессионального перевода.

Василий комментирует...

Дружище, а чем тебе не понравился двойной просмотр субтритров в BsPlayer? Правда там нету возможности выделять текст - согласен. Но можно в процессе фильма запоминать.

Русские субтитры изначально рекомендовал бы искать на авторитетных английских сайтах, посвященных субтитрам, а потом уже на аналогах в Рунете. Сам юзаю регулярно opensubtitles.org.

Dmitry Konishchev комментирует...

Василий, нет, мне хотелось именно выделять - забивать вручную в словарь уж больно муторно. :) + BsPlayer, насколько я понимаю, работает только под Windows, которой я не пользуюсь (на всех машинах у меня стоит Linux). А за рекомендацию по opensubtitles.org спасибо - буду пользоваться.

Василий комментирует...

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

Я раньше специально переводил в словаре и "выписывал" слова (из-за транскрипции), но потом заметил, что все равно их забываю, так как нигде не употреблял. А те слова, что запоминал на эмоциях, не всегда сразу понимал, так как нужно было смотреть перевод. Двойной просмотр субтитров решил эту проблему. Теперь и произношение не нужно лезть смотреть в словарь - актеры сами расставляют акценты.

А ты как запоминаешь?

Dmitry Konishchev комментирует...

Да, я тоже так считаю. Только я пока что не пытаюсь особо вслушиваться в речь - в основном просто читаю английские субтитры, заглядывая в русский перевод, если что-то становится не понятно. Как только наберу словарный запас и скорость чтения (понимания) английского текста, достаточные для того, чтобы я смог читать субтитры практически без приостановки фильма для осмысливания/заглядывания в словарь, то тогда уже буду пытаться слушать английскую речь, а не читать субтитры.

sergicus комментирует...

А где скачать эту обертку ?????

Dmitry Konishchev комментирует...

sergicus, в конце статьи есть ссылка - https://sourceforge.net/projects/submplayer/.

Orion комментирует...

http://www.allsubs.org много субтитров тут.

А как скачать Ваш модернизированный плеер?

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

Dmitry Konishchev комментирует...

Владимир, в конце статьи есть ссылка - https://sourceforge.net/projects/submplayer/.

Анонимный комментирует...

Народ, если вы, как и я, искали плеер чтобы можно было выделять субтитры мышкой, причем для винды, вот я написал мануал для чьей-то проги http://nikita-petrov.com/articles/mediapleer-dlya-izuchayushchih-angliyskiy-yazyk-mpffll. Пользуйтесь! :)

Анонимный комментирует...
Этот комментарий был удален автором.
Анонимный комментирует...

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

http://2sub.ru

Dmitry Konishchev комментирует...

В моей программе можно скопировать отдельные слова или фразы из субтитров и вставить в словарь. А также с помощью pysd быстро найти для нее субтитры к любимым сериалам, которые как раз гораздо лучше подходят для изучения языка.

Анонимный комментирует...

Вот группа в контакте .Фильмы с двойными субтитрами:

http://vk.com/club63966832

Unknown комментирует...

https://www.youtube.com/channel/UCpDsrld3wFwJLATCxY_Yobw - здесь много фильмов и видео с двойными субтитрами

Unknown комментирует...

как плеер то запустить? там только набор файлов

Unknown комментирует...

“HolaHello Sub Mix"
Create mix subtitles from 2 languages.
Version 1.2. Added support for video files (read/creat).
https://youtu.be/B-hq-6zCFVc