Список форумов Kage Project Kage Project
 
  РегистрацияРегистрация  ВходВход
  Архив субтитровАрхив субтитров  ПоискПоиск  ЧаВоЧаВо  ПользователиПользователи
 Войти и проверить личные сообщенияВойти и проверить личные сообщения

Скрипты Автоматизации для Aegisub

 
Начать новую тему   Ответить на тему    Список форумов Kage Project -> Техническая поддержка
Предыдущая тема :: Следующая тема 
Автор Сообщение
8day

Переводы



Зарегистрирован: 10.09.2008
Сообщения: 53

СообщениеДобавлено: Ср Апр 25, 2012 21:08 pm   Заголовок сообщения: Скрипты Автоматизации для Aegisub Ответить с цитатой

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

Таблица: https://docs.google.com/spreadsheet/ccc?key=0AreyVvCk_AXAdDRWZFF1aUMtNlJFV0hGUS02TElieHc

Кого эта тема заинтересовала -- пишите в личку, открою доступ к таблице.

П.С.: если что, у меня на винчестере есть копии всех этих файлов.


mark_collisions_2012-04-25_21-06-27.rar  [2.28 KB] [Загрузок: 1057] Скрипт для отметки субов идущих внахлест. Содержит два макро: один создает отметки, а другой их удаляет (на случай когда вы получили файл субов с подобными метками и не хочется ковырятся с регэкспами).
К началу
Посмотреть профиль Отправить личное сообщение Добавить в игнор-лист
8day

Переводы



Зарегистрирован: 10.09.2008
Сообщения: 53

СообщениеДобавлено: Чт Май 03, 2012 11:46 am   Ответить с цитатой

Похоже и тут облажался... Оказывается скрипт Mark selected collisions обрабатывал лишь часть субов идущих внахлест: помимо сортировки по нач. времени, нужно было делать сортировку и по кон. времени.

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


mark_collisions_2012-05-03_10-40-54.rar  [2.26 KB] [Загрузок: 1094] Версия 1,3.
К началу
Посмотреть профиль Отправить личное сообщение Добавить в игнор-лист
8day

Переводы



Зарегистрирован: 10.09.2008
Сообщения: 53

СообщениеДобавлено: Пт Май 25, 2012 15:42 pm   Ответить с цитатой

Следующий скрипт основан на работе кода \org позволяющего изменять точку трансформаций.

Возможно, некоторые из вас знают, что с помощью кода \org можно добиться эффекта вращающихся стрелок часов (см. "clock2D.ass" в архиве с примерами). Все же, наверняка далеко не всем известно, что с его помощью можно размещать содержимое суба с учетом искажений перспективы. Для того чтобы добиться имитации искажений перспективы я написал небольшой скрипт -- "Calculate \org". Как пользоваться этим скриптом показано здесь: http://www.youtube.com/watch?v=oLNLzyvOGj0.
Учтите, что от самого скрипта пользы мало, параллельно с кодом \org нужно найти подходящие значения для \frx, \fry (а может и \frz). На данный момент все это делается методом научного тыка, а чтоб тыкать было удобней, в самом низу приведен пример "гайда".

Недостатки даного метода:
о. иногда очень тяжело подобрать подходящие углы для \frx и \fry (а иногда и \frz), а порой практически невозможно (преимущественно, когда у org_y слишком малое или большое значение: -200/+200, -inf/+inf);
о. по видимому, после такого вращения плоскости, рисунки сжимаются неоднородно, а потому может возникнуть ситуация когда нужно "поджать" графику по одной из осей (\fscx, \fscy). ИМО это самая серьезная проблема.
Но, если он сработает, то:
о. когда рисунок двигается по какой-то плоскости -- вам не нужно создавать отдельный суб для каждого кадра видео, можно воспользоваться старым добрым \move;
о. определив нужные трансформации единожды, их можно применять к бесконечному к-ву субтитров (разумеется, пока они находятся на одной и той же плоскости);
о. не нужно использовать коды-хаки \fax и \fay (т.е. все в рамках спецификации Adv. SSA).

Что этот скрипт делает:
о. вычисляет точку схода (в одном изображении может быть несколько точек схода);
о. в качестве зн. для коорд. Y в коде \org использует соотв. коорд. из точки схода;
о. в качестве зн. для коорд. X в коде \org использует 1/2 ширины скрипта.

Особенности работы скрипта:
о. перед запуском скрипта нужно выбрать два субтитра;
о. в каждом из субтитров посредством кода \move должна быть указана прямая, параллельная той плоскости, на которой требуется разместить рисунок;
о. прямые, указанные в кодах \move не должны быть параллельными относительно друг друга;
о. оба субтитра должны быть идентичны, за исключением блоков с кодами;
о. по окончании работы скрипта второй суб, а также код \move первого суба будут удалены;
о. если в первом субе будет найден код \org, то он будет заменен на новый.

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

Пример гайда:
{\p3\an7\org(0,0)\alpha&H6B&\c&H00&} m 1000 0 l 1000 200 1000 600 1200 600 1200 200 1750 200 1750 1800 150 1800 150 1250 550 1250 550 1050 150 1050 -50 1050 -50 1250 -50 1800 -50 2300 -50 2850 -50 3050 150 3050 550 3050 550 2850 150 2850 150 2300 1750 2300 1750 3900 1200 3900 1200 3500 1000 3500 1000 4100 1200 4100 2800 4100 3000 4100 3000 3900 3000 3500 2800 3500 2800 3900 2250 3900 2250 2300 3850 2300 3850 2850 3450 2850 3450 3050 3850 3050 4050 3050 4050 2850 4050 2300 4050 1800 4050 1250 4050 1050 3850 1050 3450 1050 3450 1250 3850 1250 3850 1800 2250 1800 2250 200 2800 200 2800 600 3000 600 3000 200 3000 0 2800 0 1200 0 1000 0 {\p0}
Если вы захотите сделать этот "гайд" в два раза меньше/больше, просто смените число в коде \p. Сам рисунок довольно-таки большой даже для FullHD, так что он сойдет для работы с любыми субами.


Скрипт и доп. файлы (примеры и т.п.): http://www.mediafire.com/?y5vqhczqngw2q


Последний раз редактировалось: Чт Фев 28, 2013 16:45 pm

К началу
Посмотреть профиль Отправить личное сообщение Добавить в игнор-лист
8day

Переводы



Зарегистрирован: 10.09.2008
Сообщения: 53

СообщениеДобавлено: Чт Фев 28, 2013 16:43 pm   Ответить с цитатой

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

К началу
Посмотреть профиль Отправить личное сообщение Добавить в игнор-лист
8day

Переводы



Зарегистрирован: 10.09.2008
Сообщения: 53

СообщениеДобавлено: Вс Сен 22, 2013 20:40 pm   Ответить с цитатой

Вот еще одна утилита. В этот раз покрупней остальных: с ее помощью можно конвертировать SVG в SSA (v4.0+ aka ASS).

К началу
Посмотреть профиль Отправить личное сообщение Добавить в игнор-лист
8day

Переводы



Зарегистрирован: 10.09.2008
Сообщения: 53

СообщениеДобавлено: Сб Дек 28, 2013 20:03 pm   Ответить с цитатой

Еще один скрипт, в этот раз для ресайза/репозиционирования субов. Имеет некоторые отличия в работе по сравнению с Резолюшн Ресемплером Аеги (по-видимому, преимущественно из-за подхода к ресайзу -- изменяется масштаб полотна, а не сами рисунки/размер шрифтов (частично из-за возможных проблем с хинтингом, а частично потому что так гораздо удобней)) и фиксит некоторые его недочеты, как то двойное смещение полей, отсутствие поддержки кода \blur. Из значимых недочетов -- отсутствие преобразования кодов \fr[xyz] из-за сложности операции (в свою защиту могу сказать что в Аеги данная фича также не реализована), а из значимых плюсов -- модульность операций, т.е. теперь можно сдвинуть "абсолютную верстку", "относительную верстку", ну и просто изменить размер как полотна так и субов.

Для того чтобы скачать скрипт перейдите сюда и выберите Download, после чего скопируйте файл "tools-for-resize.lua" из архива в папку для автозагрузки скриптов. Кстати, в дальнейшем скрипты буду ложить на ГитХаб.

Апдейт
Только-что объяснял человеку некоторые моменты по данному скрипту и мне показалось что некоторым людям это также будет интересно, так что ре-постирую здесь.
Resize Canvas изменяет размер полотна, т.е. то же что и: Аегисаб - Меню - Файл - Свойства - Разрешение.
Shift Absolute Layout смещает абсолютную разметку, т.е. коды вроде \pos, \move, \clip, \iclip и рисунки.
Shift Relative Layout смещает относительную разметку, т.е. по-сути преимущественно поля (margins).
Scale Subtitles как раз изменяет размер субов через масштабирование кодов \fsc[xy] и т.п., т.е. внося минимальные изменения в скрипт. Учти что в поле для изменения разрешения нужно указать не новое разрешение (это бы сильно усложнило скрипт, т.е. пришлось бы делать его дольше, а ним и так мало кто/никто не пользуется), а коэффициент. Т.е. "2" для двукратного увеличения, и т.п.
Для реального масштабирования файла с субами нужно воспользоваться скриптом два раза: Resize Canvas и Scale Subtitles.

Все это полезно как раз при переделывании субов под другое видео, т.е. где поля видео были обрезаны по-другому и нужно сместить абс. разметку **и** изменить размер полотна/скрипта. Или же для случаев масштабирования для анаморфного видео (может помнишь как-то упоминал) и т.п. Единственный массивный недостаток -- коды \fr[xyz] нужно переделывать вручную, так как математически это **очень** сложно (в инете не нашел годной инфы по этому вопросу), но и так скрипт намного упрощает работу, тем более что Аегисабовская утилита делал это неправильно, хотя в некоторых местах и покруче (из-за того что они делали машстабирование не через \fsc[xy], а изменяли абс. значения кодов как то размер шрифта, размер рисунка и т.п.). В моем случае масштабирование выходит "псевдо-масштабированием", т.е. разрешение скрипта остается все тем же (из-за \fsc[xy]), но позволяет избежать некоторых глюков при рендеринге субов.

К началу
Посмотреть профиль Отправить личное сообщение Добавить в игнор-лист
Показать сообщения:   
Начать новую тему   Ответить на тему    Список форумов Kage Project -> Техническая поддержка Часовой пояс: GMT + 3
Страница 1 из 1
 
Перейти:  
Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах
Вы не можете прикреплять файлы к сообщениям
Вы можете скачивать файлы, прикрепленные к сообщениям

‹xЪmЋ= В@…ksЉa ;і юlRШШX(@v“5HМІ†€§у$"€ вП t"ШY}oѕЏqє™ҐЙ*`‘^Ўv ўL®Чt¶ribђ…Юґ(µУ1Ё  $§—3€vАyY–ѕ5V)?*rОҐK4lс•яцЁЌ—!4k;„мџ§Ы›ЖЫ~§ЫпЅИМg“ЦщрxЮ_ч#ќ№с6µ”ч—«п Nї‡?4‚cL$ёЪўT™=JЄ€«ЪМ3fк‹Фу