ИД "Мой компьютер"   "Игроград"   "Реальность фантастики"   Ассамблея "Портал"
Сделать стартовой   

 
Домашняя страница
Расширенный поиск
E-mail

 

N 16 (447)




МОЙ КОМПЬЮТЕР




  Новости:

 
МК
Украина
Игры
Интернет
Железо
Софт
Пресс-релизы

  Статьи:

 
Уголок читателя
Прочее
Имеющий уши
Программирование
Интернет
Железо
Софт
Игры


 
КОНКУРСЫ



Правила конкурсов

Конкурс "АВЧ"

Рейтинг победителей


ОПРОС

Вы посещаете нас:
первый раз
1-2 раза в месяц
1-2 раза в неделю
1-2 раза в день
более 2-х раз в день Что привело Вас к нам?
поиск информации
интерес к статьям
интерес к новостям
любопытство
реклама
другое








боулинг

ads.mycomputer.ua

ads.mycomputer.ua

ads.mycomputer.ua

ads.mycomputer.ua

ads.mycomputer.ua













Argumentum ad ignorantiam!

 

статьи
Софт



 

На правах рекламы  
Прочее  
Свободная ВаRя  
Не windows  
Windows  
Графика  
Развлечения  
Интернет  
Утилиты  
Офис  




    Не windows


Пособие по сабам

Сергей ЯРЕМЧУК
N 5 (436) 27.01.2007


Тем, кто занимается обработкой видео, да и просто пользователям, которые ценят комфорт при просмотре фильмов, приходится сталкиваться с субтитрами. Об инструменте, позволяющем создать или отредактировать субтитры в Gnu/Linux пойдет речь далее.

Какие бывают субтитры?

Перед началом работы следует сказать пару слов о теории, чтобы было понятно, о чем, собственно, речь. В Википедии сказано так: «Субтитры (также: сабтитры, от англ. subtitles — дословно подписи снизу; (жарг.) сабы, сокращение от «сабтитров») — текстовое сопровождение видео, дублирующее или дополняющее звук фильма или передачи. Преимущественно в субтитрах отражена речь персонажей». В общем, это текстовая строчка, которая показывается внизу экрана, с помощью которой дублируются диалоги и иногда поясняют ситуацию, происходящую на экране. Они полезны не только людям со слабым слухом, но и при изучении иностранного языка. Пригодятся и в том случае, когда нельзя найти переведенный фильм, а есть только оригинальная версия, а иногда просто очень хочется просмотреть фильм на языке оригинала, со звуковой дорожкой, не испорченной дубляжем.

Субтитры бывают нескольких видов. Так, в том случае, когда изображение с текстом накладывается на исходное видео при кодировании, субтитры называются жесткими (Hard subtitles) или вшитыми. Преимуществом таких субтитров является то, что они будут выводиться всеми без исключения проигрывателями, как программными, так и аппаратными, но вот отключить их нельзя. На DVD изображения с субтитрами, как правило, не вшиваются в файл, а хранятся отдельно (в файлах .sub) — пользователь при необходимости может их включить или отключить, но они требуют поддержки со стороны проигрывателей. Такие субтитры на «умном» языке называют пререндеренными (prerendered). И наконец, мягкие (soft) или программные субтитры представляют собой текст, иногда с элементами разметки и эффектами. Они также идут в отдельном файле, но требования к оборудованию у них несколько выше, так как часть процессорного времени уходит на их просчет и прорисовку. Еще одна польза от мягких и пререндеренных субтитров — возможность использования нескольких языков.

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

• .ssa/.ass — текстовый формат субтитров, который использовался в программе Sub Station Alpha (позднее — Subtitle Workshop). Субтитры этого типа могут содержать форматирование: размер букв и гарнитура, цвет, положение символов, а также некоторые видеоэффекты в (затенение, движение, повороты и др.), текст может быть в нескольких кодировках;

• .srt — текстовый формат субтитров программы SubRip, изначально формат оформление текста не поддерживал, сейчас поддерживается изменение цвета и различные начертания символов;

• .smi (.smil) — текстовый формат субтитров, основанный на SGML, почти все, что характерно для оформления текста в HTML и CSS, поддерживается и здесь;

• .sub/.idx — двоичный формат пререндеренных субтитров, применяемый в программе VobSub, иногда называют субтитрами формата Vobsub, хоть это и не очень верно, но зато сразу понятно, о чем речь;

• .s2k — текстовый формат субтитров, принятый в программе Sasami.

Наиболее популярными являются два формата SRT и SUB, которые подключаются к большинству программ видеопроигрывателей.

Программы для работы с субтитрами

Теперь пора перейти от теории к практике. Вот уже более полгода при работе я использую дистрибутив Kubuntu, привычке изменять пока не собираюсь. Впрочем, большая часть написанного будет действительна и для других дистрибутивов Linux. Чтобы узнать, чем богат Kubuntu по этой части, вводим:

Кроме проигрывателей и всяких библиотек были выданы следующие приложения:

ksubtile (ksubtile.sourceforge.net) — редактор субтитров для KDE;

subtitleripper (subtitleripper.sourceforge.net) — простой риппер DVD-субтитров, в работе которого необходим transcode;

submux-dvd (www.boutell.com/lsm/lsmbyid.cgi/002188) — мультиплексор субтитров, с помощью которого можно добавить их в файлы .vob.

К сожалению, после ввода команды sudo apt-get install ksubtile subtitleripper submux-dvd из всех указанных программ захотел устанавливаться только Ksubtile. Это довольно простой и удобный редактор субтитров, который хорошо интегрируется в среду KDE и позволяет переносить, растягивать и редактировать файлы субтитров SRT и некоторых других форматов субтитров, которые понимает MPlayer. Кроме того, он обеспечивает простой в использовании интерфейс к MPlayer, что позволяет упростить синхронизацию субтитров с фильмом. Единственным его недостатком является отсутствие поддержки кодировок, отличных от английской. Пришлось искать выход из ситуации, и он, естественно нашелся.

Пакеты для работы с мультимедиа я брал с debian-multimedia.org, содержащего большое количество программ (например, мультимедиа-центр Freevo, аналог MythTV), но для Debian. Большая часть из них ставится в Kubuntu без проблем, но все же есть исключения. Набрав в браузере http://packages.ubuntu.com/dapper/, я нашел нужные мне программы. Значит, необходимо просто добавить еще один источник.

Поэтому:

Комментируем следующие строчки (у кого они есть):

И добавляем:

Сохраняем изменения и вводим в консоли:

Снятие субтитров в Linux

После проведенных экзекуций в списке известных apt утилит осталась subtitleripper, но появилась еще ksubtitleripper. Их и устанавливаем:

Последние две были выбраны, так как они являются рекомендуемыми для subtitleripper.

Вообще, для работы с DVD-дисками в Linux есть отличная программа (точнее, скрипт на Perl) dvd::rip (www.exit1.org/dvdrip), умеющая в том числе и «грабить» субтитры, но dvd::rip, вероятно заслуживает отдельной статьи, поэтому поговорим о нем как-нибудь в следующий раз. Остановимся пока на subtitleripper и ksubtitleripper. Первый пакет включает в себя 5 консольных утилит — srttool, subtitle2pgm, pgm2txt, vobsub2pgm, subtitle2vobsub, используя которые, можно конвертировать DVD-субтитры в subrip-текстовый или VobSub-форматы. Поток превращается в файл формата PGM или PPM, а затем распознается и превращается в ASCII с помощью gocr (jocr.sourceforge.net), который будет установлен в качестве зависимости (для ksubtitleripper обязательной). Для полноценной работы первой понадобится transcode (www.transcoding.org), которую можно установить, набрав sudo apt-get install transcode.

Чтобы извлечь субтитры в ASCII из VOB-файлов, принадлежащих первому фильму, находящемуся в текущем каталоге, вводим следующие команды:

Процесс это долгий, и при слабом компьютере времени на эту операцию уйдет прилично. На выходе получим файл my_movie_1.srt, содержащий субтитры. Параметров у команд, как видите, немного, объясню только один — –a 0x20. Фильмы, как помните, могут содержать несколько субтитров, значение 0x20 соответствует первому, 0x21 — второму, и так далее. Субтитры в формате VobSub получаются на порядок быстрее, но и весят больше. Сначала извлекаем поток субтитров командой:

И затем перекодируем в формат VobSub:

В документации описаны все возможные варианты и комбинации использования этих утилит. Фронтэнд к subtitleripper для библиотек KDE — ksubtitleripper (ksubtitleripper.berlios.de, рис. 1) позволяет получить файл субтитров из исходных .vob- и .sub-файлов в SRT-формате намного проще, при этом пользователю не нужно запоминать многочисленные параметры. Запускаем, набрав в терминале ksubtitleripper, затем в поле Vob or Sub Files указываем источник, в Directory — каталог для сохранения файлов и нажимаем OK. Вот и все премудрости. Если gocr не может распознать некоторые буквы, пользователю задается вопрос, параллельно производится проверка правописания. Поддерживается три кодировки — UTF8, DOS и стандартная английская. Кстати, субтитры в формате VobSub можно снять и с помощью mencoder, который входит в состав MPlayer.

Рисунок 1.

Редактирование субтитров с помощью SubtitleEditor

Поискав немного по тематическим сайтам, я нашел подходящую программу с удобным интерфейсом GTK+, с продуманной системой поиска и замены, с помощью которой можно редактировать субтитры, в том числе и на русском языке — SubtitleEditor (kitone.free.fr/subtitleeditor/). Используя SubtitleEditor, можно легко добавлять, редактировать или удалять субтитры, конвертировать частоту кадров, контролировать время и отслеживать ошибки. Поддерживает несколько форматов субтитров (SSA, ASS, SubRip (.srt), MicroDvd (.sub)). Распространяется под лицензией GNU GPL.

В репозитарии Ubuntu нет этой программы, но это не значит, что придется возиться с компиляцией. Открываем файл /etc/apt/sources.list и добавляем в него строки (для Dapper Drake):

После чего обновляем базу и устанавливаем:

Во время установки будет выдано сообщение: «Следующие пакеты невозможно аутентифицировать!» и запрос на продолжение — нажимаем Y, ничего страшного.

Если все-таки захотелось немного покомпилировать, распакуйте архив и введите:

Запускаем программу, набрав в терминале subtitleeditor или выбрав соответствующий пункт в меню K–Multimedia.

Перед началом работы перейдите в Options > Preferences и затем во вкладке Encoding, нажав Add, добавьте кодировку. В большинстве случаев используется CP1251, но ради пролетарской солидарности можете добавить еще и KOI8R и другие, начинающиеся на «Cyrillic». Затем, воспользовавшись стрелками, переместите основную кодировку в самое начало списка. При создании субтитров это роли не играет, но при сохранении можно будет указать любую из выбранных кодировок. Для создания нового файла субтитров выбираем File > New ( Ctrl+N). Чтобы вставить новую запись, выбираем Edit > Insert After (клавиша Insert), появится новая строка ( рис. 2).

Рисунок 2.

Название и количество колонок может быть разным, для добавления/удаления новых выберите их во View > Columns. Выбрав View > Timing, можно включить предпросмотр видео. Записи нумеруются по порядку, при необходимости можно добавить запись в любое место, сдвинув их вниз. Двойным щелчком мышки по колонкам start и end добавляем, соответственно, время начала и окончания показа текущего субтитра, в duration будет подсчитано время показа. В поле text вводим текст, который будет выводиться на экран, не забыв нажать на Enter по окончании ввода. И наконец, в Style, воспользовавшись выпадающим списком, выбираем стиль выводимого текста (только для .ssa и .ass). По умолчанию присутствует только один стиль — Default. Для добавления своего стиля выбираем Tools > Style Editor ( рис. 3).

Рисунок 3.

Пользоваться редактором стилей очень просто: прописываем в Name название стиля, затем в поле Fonts выбираем шрифт и эффекты (жирный, подчеркивание и пр.), в Appearence Color — цвет, в Border — толщину рамки, в Transformations можно настроить некоторые эффекты, в Aligment — выравнивание. Когда все введено, нажимаем Insert (или Ctrl+Insert) и создаем новую строку, повторяя все операции сначала. При вводе времени легко ошибиться, и тогда субтитр может перекрываться предыдущим. Для проверки правильности выберите Tools > Check Time.

После создания нового субтитра его, скорее всего, понадобится синхронизировать с фильмом. Причиной рассинхронизации может быть в том числе и различная частота кадров (framerate) в фильме и созданном файле субтитров. Можно, конечно, использовать возможности видеопроигрывателя. Так, в MPLayer нажатие на  Y переводит субтитры на одну фразу вперед, подгоняя ее к настоящему моменту, — листает на одну фразу назад, клавиши  Z и  X подгоняют субтитры по времени, а не по порядку фраз. Впрочем, эту проблему легко поправить в SubtitleEditor. Для изменения framerate переходим в Tools > Change FPS и устанавливаем новое значение в New ( рис. 4).

Рисунок 4.

Узнать framerate видеофильма очень просто — практически любой видеопроигрыватель позволяет просмотреть информацию об открытом файле. Например, при запуске mplayer выдается такая информация:

Аналогичную информацию выдает XINE — выберите в настройках Поток > Информация ( Alt+I), аналогично, при наведении мышкой на видеофайл в Konqueror во всплывающем окне будет показана нужная информация. Если субтитры запаздывают или спешат, то отмечаем время, когда нужно показать субтитр, с которого произошел сдвиг. Затем щелкаем по нужному субтитру и открываем Edit > Move. В появившемся окне вводим время сдвига, после нажатия на ОК время показа субтитров, идущих следом за редактируемым, будет автоматически пересчитано. В этом же меню есть пункты, позволяющие добавить 100 мс ко времени начала и окончания текущего субтитра, либо только к start, здесь же можно увеличить продолжительность. Для первичной синхронизации субтитров можно воспользоваться также пунктом Tools > Scale. Вы отмечаете первый и последний номер субтитров, а затем в Destination — время начала и окончания показа выбранной группы. Время будет автоматически перераспределено между всеми выбранными субтитрами. В SubtitleEditor есть еще некоторые полезные функции. Так, выбрав Tools > Split, можно сохранить субтитры не целиком, а только в выбранном диапазоне с указанием формата. Для объединения субтитров воспользуйтесь Tools > Join. Имеется и проверка орфографии в Tools > Spell Sheck, но пока SubtitleEditor не поддерживает русского и украинского.

Есть еще один довольно неплохой редактор субтитров — GNOME Subtitle Editor (GSubEdit — gsubedit.sourceforge.net), благо он использует GTK-интерфейс, его можно рекомендовать для тех, кто предпочитает среду Gnome.

Как видите, в Linux есть все что нужно тем, кто хочет работать с субтитрами. И хотя некоторые программы еще не достигли «релизов с большими номерами», они уже вполне готовы к употреблению. Сейшелы

Linux forever!







Расширенный поиск 
 

О проекте  Рекламодателям  Карта сайта  Контакт  Обратная связь 

© ИД "Мой компьютер"®, 1998-2004