Tuesday, February 12, 2013

Обзор основных форматов субтитров http://torrents-nn.cn/showthread.php?t=345016

 
Обзор основных форматов субтитров

SubRipper (*.srt)


Файлы имеет расширение srt. Сам формат отличается простотой и наглядностью, синхронизация с видео на основе времени с точностью до микросекунд. Весьма распространенный формат. Srt файлы очень удобно редактировать - перевод лучше делать именно в srt файлах. Главный недостаток - формат не позволяет изменять параметры шрифта (размер, стиль, цвет) и положение субтитров на экране. Шапки - нет. Конец файла отмечается удвоенным переводом строки.


Код:
1  00:02:58,000 --> 00:03:00,880  [Токийская школа истребителей нечисти]  Перевод: over  Редакция: Danphil & Tany Sword  DOTeam - www.viManga.ru  2  00:03:01,090 --> 00:03:04,890  [Глава "Темный закон" Ночь Первая]  3  00:03:05,080 --> 00:03:06,910  [Час демона]
N
ЧЧ:ММ:СС:МКС --> чч:мм:сс:мкс
Первая строка фразы
Вторая строка фразы
где
N - номер фразы
ЧЧ:ММ:СС:МКС - время начала показа фазы в часах минутах, секундах и миллисекундах (мкс)
чч:мм:сс:мкс - время начала показа фазы в часах минутах, секундах и миллисекундах (мкс)
между временем и стрелкой пробел. Фразы отделяются друг от друга пустой строкой.



SubStation Altha (.ass)


Формат *.ssa это рабочий файл субтитров программы SubStation Altha . Это программа для подготовки и таймирования субтитров. Среди непрофессионалов это самая популярная и богатая возможностями программа для титрования. Также богат и сам формат субтитров. Здесь полностью поддерживается работа со всеми параметрами шрифта (цвет, размер, гарнитура и т.д.). размещение текста в любом месте экрана, комментарии.Множество полей определяет параметры каждой фразы, например специальное поле для определения произносящего данную фразу. Кроме текста можно вставлять картинки , звуки и даже маленькие видео фрагменты. Этот формат является фактически стандартом де-факто в среде фэнсаберов. Все это делает формат SSA преобладающим в среде анимешников.


Код:
[Script Info]  ; Script generated by Aegisub v2.00 PRE-RELEASE (SVN r1515, ArchMageZeratuL)  ; http://www.aegisub.net  ScriptType: v4.00+  PlayResX: 704  PlayResY: 400  WrapStyle: 0  Collisions: Normal  Video Aspect Ratio: 0  Video Zoom: 6  Video Position: 0  Last Style Storage: ghost hound  [V4+ Styles]  Format: Name, Fontname, Fontsize, PrimaryColour, SecondaryColour,  OutlineColour, BackColour, Bold, Italic, Underline, StrikeOut, ScaleX,  ScaleY, Spacing, Angle, BorderStyle, Outline, Shadow, Alignment,  MarginL, MarginR, MarginV, Encoding  Style: Default,Arial,20,&H00FFFFFF,&H0000FFFF,&H00000000,&H00000000,0,0,0,0,100,100,0,0,1,2,2,2,10,10,10,0  Style: Dialogue,Chantelli  Antiqua,28,&H00ECECEC,&H000000FF,&H003C4930,&H004A593B,-1,0,0,0,100,95,0,0,1,2,0.5,2,10,10,10,0  Style: Preview Style,Chantelli  Antiqua,28,&H00ECECEC,&H000000FF,&H32115C2C,&H000C4120,-1,0,0,0,100,100,0,0,1,2,0.5,2,10,10,10,0  Style: TL Notes,Chantelli  Antiqua,22,&H00ECECEC,&H000000FF,&H00363636,&H00000000,0,0,0,0,100,100,0,0,1,2,0.5,8,10,10,10,0  Style: comment,Arial,20,&H00747D7F,&H0000FFFF,&H00000000,&H00000000,-1,0,0,0,100,100,0,0,1,2,2,8,10,10,10,0  Style: comment2,Arial,20,&H00FFFFFF,&H0000FFFF,&H00000000,&H00000000,0,0,0,0,100,100,0,0,1,2,2,8,10,10,10,0  Style:  ghost,BenguiatGothicCTT,32,&H00FFFFFF,&H0000FFFF,&H00414143,&H00414143,-1,0,0,0,100,100,0,0,1,2,2,2,10,10,10,0  Style: title,B52,72,&H00A4ACAD,&H0000FFFF,&H00000000,&H00FFFFFF,0,0,0,0,100,100,0,0,1,2,2,2,10,10,10,0  [Events]  Format: Layer, Start, End, Style, Name, MarginL, MarginR, MarginV, Effect, Text  Dialogue: 0,0:00:36.00,0:00:36.50,comment,,0000,0000,0000,,{\frz8\fs25\pos(441,279)}Двое детей похищены в Суйтене  Dialogue:  0,0:00:36.50,0:00:37.20,comment,,0000,0000,0000,,{\frz74\fs25\pos(370,198)}Несчаcтный  случай, \Nпроизошедший с преступником
Скрипт состоит из заголовка, описания стилей и тела=
В заголовке [Script Info] есть стандартная часть , которая сообщает что это за файл и версию скрипта, а также отсылает к сайту SubSttaion Altha.
Далее идут несколько полей обозначающих автора перевода, источник откуда сделан перевод , точку синхронизации (при выводе на аналоговый носитель синхронизация производится вручную), разрешение с которым работал редактор при расположении элементов по экрану и некоторые другие.
В разделе стилей [V4 Styles] идет детально описание всех используемых в скрипте стилей. указывается размер, гарнитура, стиль и цвет шрифта, положение (в виде отступов справа , слева , сверху и снизу), а также кодировку.
Далее идет раздел [Events] в котором располагается последовательность текстовых фраз, комментариев, а также комманд на показ логотипа, проигрывания музыки или видеофрагмента.
Для каждой из фраз отдельно можно указать время начала и конца показа этой фразы, ее стиль , название (используется как поля для указание имени говорившего) и положения фразы на экране. Далее идет сам текст фразы, разделение на строки как в языке C с помощью комбинации "/n".




Програмы перевода и тайминга.
Первое выдираем тайминг с авишки программой AviSubDetector (здесь)
Программа, которая по вшитым в картинку субтитрам создаёт разметку времени для внешних субтитров.



1. Запускаем AviSubDetector.
2. Жмем Open AVI и выбираю файл, с которого хотим выдрать сабы. В закладке Project видим выбранный файл, возле которого стоит галочка.
3. Жмем Automatic Mode, затем Start (Full) - программа начала выдирать тайминг. Жмем на закладку Subtitles - видим, как определяются Frame и появляются непонятные для нас (но хорошо понятные разным плеерам) наборы символов.
4. Переходим на закладку Settings - в окошке просмотра смотрим начало мульта, поджидая, когда же закончится опенинг. Как только видим первый титр, жмем в верхнем углу Pause.
5. Начинаем самое интересное - английские титры. Жмем кнопку OCR (возле Automatic Mode). И снова Start (Full).
6. Учим распознавать символы: сначала прийдется потрудиться. Появляется большое окно, в котором показывается найденный символ.
Он или очень нам нужный - буквы (прописные, строчные, наклонные и т.д.), цифры, знаки препинания (здесь сложнее, т.к., скорее всего, появится много лишних точек, тире и т.д. Лично я из знаков препинания использую только , и ? Точки и ! использую уже в процессе перевода). В среднем, если с нуля, то я в серии мульта присваиваю где-то 70-110 символов.
7. Дальше можно или сидеть у экрана, ожидая появления незнакомых редких символов, или же жмем на закладку OCR, выбираем Main, и там уже жмем две кнопки REMOVE Unknown и All (программа будет пропускать все неопознанные символы). Жмем на закладку Subtitles - видим, как определяются Frame и появляются, о чудо, английские титры.
8. Да, не забываем сохранять выдранные титры: закладка Subtitles, кнопка Save (как сохранять файл объяснять не буду). Сохранять можно в любой момент, думаю, стоит это делать почаще.


Второе, на данный момент используют в основном:
"Aegisub" (здесь),
Одна из самых удобных программ для создания и обработки субтитров в форматах ass и ssa.
"ChronoSub" ("Medusa") (здесь)
Ещё одна титровалка «всё-в-одном», пришедшая на смену СабСтэйшну. Работает с форматом ASS, понимает ssa, xss, srt, sub, psb и простые txt.
Добытый тайминг открывается в любой из этих прог, там же открываем видео и соответственно набиваем там и перевод и сохраняем результат в желаемом формате.
Завершающий этап, просмотр своего творения ещё и раз на предмет кривых и неправильно переведённых фраз и обязательная прогонка "Вордом" на ошибки...



http://subs.com.ru/page.php?al=ssa_description
или даже полезней скачать и всегда держать под рукой:
http://subs.com.ru/datas/tmp/article..._specs_rus.zip

оригинал на английском (в формате .doc) скачать:
http://subs.com.ru/datas/tmp/article.../ass-specs.zip

Так-же, вот это вы возможно уже всё знаете, но всё-таки:
http://subs.com.ru/page.php?al=create_subs_with_aegisub

и полная документация к работе с программой на английском:
http://aegisub.cellosoft.com/docs/Main_Page

подраздел со спецификацией ASS (хорошо оформлен, с иллюстрациями):
http://aegisub.cellosoft.com/docs/ASS_Tags


Что делать если неподходит тайминг | подбивка тайминга по "Aegisub"

Тогда можно в том же Аегисабе двигать, он более дружелюбен к "ass и ssa"
Если весь саб отстаёт, запускаем видео - запоминаем время начальной фразы -> Редактировать> Сдвиг по времени> далее выбираем в меню "сдвиг на..." куда нужно "вперёд" или "назад" двинуть, в окошечке выше вводим нужное кол-во, в меню "Задействовать"ставим галочку "все строки" и "ок".
Так же и с отдельныи фрагментыми можно поступать, только в главно меню Аеги выделить их нажав "ctrl" и выделив нужное кол-во строк мышью.
И в меню "Задействовать" ставим галочку на "выбранные строки", а остальной порядок тот же самый что и выше...


Подбивка тайминга по Dsrt (Здесь)


Перед ретаймированием производится сортировка скрипта по времени, т.е. ретаймирование производится по времени, а не по положению фраз в скрипте. Ретаймирование может потребоваться в случае если тайм-код линейно отстает или опережает звуковое сопровождение. Для ретаймирования требуется как минимум две отмеченные фразы [Ctrl+F2], однако ретаймирование возможно по любому количеству точек (отмеченных фраз), в этом случае для каждых двух смежных точек будет использован собственный коэффициент сжатия/растяжения. Для каждой отмеченной фразы можно задать сдвиг (в мс.) в окне ретаймирования [F5] сдвиг определяет начальное и конечное время фразы после ретаймирования, т.е. если указать значение сдвига -1000, то после ретаймирования от начального и конечного времени отмеченной фразы будет вычтена секунда. Ретаймирование оказывает влияние и на продолжительность фраз: если интервал между отмеченными фразы будет сжат, то и продолжительность всех фраз будет сжата соответственно коэффициенту сжатия, рассчитанному на основе сдвигов смежных точек. Данная процедура исключает возможность появления новых коллизий в скрипте. Для отмеченных фраз действуют ограничения на пересечение интервалов ретаймирования между собой и на пересечение с участками скрипта не подверженными ретаймированию. Рассмотрим это на примере:
1
00:01:52,218 --> 00:01:53,000 Конечное время фразы - предел для сдвига след. за ней отмеченной
Pervert!
2
00:01:53,153 --> 00:01:54,554 Отрицательный сдвиг для данной фразы возможен только до -153мс.
I'm not a pervert!
3
00:01:54,554 --> 00:01:56,823
You were peeping at the girls at work!
4
00:01:56,823 --> 00:01:59,559
It just smelled good, that's why I was there.
5
00:01:59,559 --> 00:02:01,061 Сдвиг возможен до конечного времени предыдущей точки с учетом ее сдвига
Who'd want to look at a girl like you?
5-я фраза является отмеченной и последней в скрипте, поэтому для нее возможен любой (в разумных пределах) положительный сдвиг, отрицательный сдвиг возможен только до конечного времени предыдущей отмеченной фразы с учетом ее сдвига. Для 2-й фразы возможен положительный сдвиг до начала следующей отмеченной фразы с учетом ее сдвига. Если отмеченной является первая фраза в скрипте, то для нее левым пределом является нулевое время. Простейшее ретаймирование производится путем отметки первой и последней фразы и заданием для них сдвигов. В этом случае ретаймирование эквивалентно вызову функции "Скрипт->Сжать/растянуть весь скрипт" [Shift+F5].
Перед ретаймированием стоит убедиться, что оно действительно необходимо, возможно скрипт просто сдвинут в нескольких местах, в этом случае скрипт стоит попробовать исправить в окне "Видео".
В окне ретаймирования имеется кнопка "Синхронизация", с помощью данной кнопки можно синхронизировать скрипты в разных переводах. Например у нас имеется английский скрипт с правильным тайм-кодом и русский с отстающим или убегающим вперед тайм-кодом. В английском и русском скриптах отмечаем равное количество одинаковых фраз. Т.е. в русском и английском скриптах должно быть отмечено N фраз одинакового значения. (каждой английской отмеченной фразе ставим в соответствие ее перевод в русском скрипте). Переходим в русский скрипт, открываем окно ретаймирования и нажимаем кнопку "Синхронизировать" в открывшемся окне выбираем английский скрипт в качестве шаблона, после чего нажимаем кнопку "Ретаймировать". Если фразы были выбраны правильно, то получаем русский скрипт с правильным тайм-кодом.
В окне ретаймирования доступны еще 2 кнопки: "Сохранить" и "Загрузить". Кнопки служат для сохранения списка отмеченных фраз и сдвигов. С помощью кнопки "Сохранить" можно сохранить помеченные фразы и сдвиги для них в отдельный файл (*.dtc). Кнопка "Загрузить" загружает dtc-файл и адаптирует сохраненные фразы и сдвиги для них к текущему скрипту. Адаптация происходит в случае если скритп отличается от того для которого происходило сохранение отмеченных фраз. Основная область применения - это создание файлов небольшого размера (<100b) достаточных для генерации готовых субтитров для разных рипов из одного и того же комплекта субтитров. Технология изготовления dtc-файлов будет выглядеть следующим образом: открываем скрипт, расставляем отмеченные фразы в ключевых точках (рекомендую всегда отмечать первую и последнюю в числе прочих) устанавливаем сдвиги необходимые для приведения скрипта ко второму рипу, ретаймируем, проверяем синхронизацию аудио с субтитрами, делаем откат до момента ретаймирования (можно использовать резервную копию) и сохраняем dtc-файл.



Увеличение размера шрифта Aegisub:

No comments:

Post a Comment