Субтитры ASS (.ass)
Спецификация СтандартAdvanced SubStation Alpha (ASS) - это самый мощный в мире текстовый формат субтитров, популярный в фансаббе аниме и производстве медиаконтента благодаря своему продвинутому типографическому оформлению, векторной графике, эффектам караоке и точному попиксельному позиционированию координат.
Конвертировать из ASS в SRT
Бесплатный конвертер из ASS в SRT прямо в браузере. Конвертируйте файлы мгновенно на вашем устройстве.
Анализ и метаданные
Операционные системы и анализаторы файлов идентифицируют файлы ASS по начальной двоичной последовательности байтов:
Сигнатура заголовка на уровне байтов (Magic Bytes)
Операционные системы и анализаторы файлов идентифицируют файлы ASS по начальной двоичной последовательности байтов:
HEX-СИГНАТУРА (СМЕЩЕНИЕ 0):
5B 53 63 72 69 70 74 20 49 6E 66 6F 5DПРЕДСТАВЛЕНИЕ ASCII: [Script Info]
Стандартизация: Спецификация Advanced SubStation Alpha v4.00+
Технические спецификации
| Архитектура контейнера | Текстовый формат с разделами в стиле INI, содержащий блоки [Script Info], [V4+ Styles], [Events] и необязательные блоки [Fonts] / [Graphics] |
| Сжатие | Несжатый простой текст (внедренные шрифты используют uuencode) |
| Порядок байтов (Endianness) | Текстовый поток UTF-8 / Unicode (метка BOM необязательна) |
| Цветовые пространства | Цветовой формат BGR / ABGR с альфа-каналом |
| Каналы и структура | Реплики диалогов, тайминги караоке, векторная графика, размытие, вращение и определения типографических стилей |
| Макс. габариты | Координатное пространство виртуального холста PlayResX и PlayResY (например, 1920x1080) |
| Прозрачность | Полная альфа-прозрачность для каждого цвета (теги переопределения альфа-канала \alpha, \1a, \2a, \3a, \4a) |
| Потоковая передача и прогрессивная загрузка | Последовательное потоковое воспроизведение на основе временных меток |
Техническая матрица сравнения: ASS против конкурентов
| Технический атрибут | ASS (Текущий) | SRT | VTT | SUB |
|---|---|---|---|---|
| Оформление и позиционирование | Продвинутое оформление, векторная графика и вращение | Базовое форматирование (только курсив/жирный) | CSS-стили и позиционирование реплик | Покадровый чистый текст |
| Тайминг караоке | Нативная послоговая синхронизация (теги \k) | Отсутствует | Базовые теги временных меток | Отсутствует |
| Основное сообщество | Аниме, музыкальные клипы, фансаббинг | Универсальное кино и телевидение | Стандарт веб-видео HTML5 | Устаревшие DVD-плееры |
| Воспроизведение в браузере | Требуется WebAssembly (libass-wasm) | Требуется конвертация JS | 100% нативный HTML5 <track> | Требуется конвертация JS |
Типичные режимы повреждения и руководство по восстановлению в HEX
Субтитры выводят на экран теги чистого форматирования (например, '{\b1\pos(200,300)}').
Первопричина: Плеер не поддерживает теги переопределения ASS или повреждены фигурные скобки вокруг тегов.
Восстановление: Удалите форматирование до стандартного SRT или конвертируйте с помощью конвертера субтитров File2File.
Анализ безопасности и векторы атак на парсер
Сложные теги переопределения ASS и встроенные блоки шрифтов в ненадежных файлах субтитров могут вызвать переполнение буфера в парсерах субтитров на C.
Известные векторы атак
- Переполнение буфера в парсере контуров векторной графики libass (например, CVE-2020-26682).
- Повреждение кучи во время декомпрессии внедренных вложений шрифтов uuencode.
- Отказ в обслуживании из-за глубоко вложенных или патологических вычислений тегов размытия/караоке.
Защитные лучшие практики: Очищайте теги переопределения и обрабатывайте ненадежные файлы ASS в изолированных контекстах выполнения WebAssembly.
Исторические истоки и вехи
Ключевые преимущества и плюсы
- Невероятная визуальная мощь: поддерживает пользовательские шрифты, цветовые градиенты, тени, рамки, вращение, наклон и размытие.
- Теги синхронизации караоке (\k, \K, \kf) позволяют настраивать тайминг отдельных слогов и плавные переходы для музыкальных клипов.
- Режим векторного рисования (\p1) позволяет отображать пользовательские векторные формы и графические значки прямо на экране.
Технические ограничения и минусы
- Сложный синтаксис: теги переопределения (например, '{\pos(400,300)\fnArial\b1\c&H00FFFF&}') трудно читать без специализированного редактора.
- Несоответствия рендеринга: для точной визуальной точности требуется libass; бытовые аппаратные плееры часто пропускают сложные теги стилей.
- Не поддерживается нативно элементами HTML5 <video> без декодеров libass на базе WebAssembly.
Интересные технические факты
- Каждый действительный файл субтитров ASS начинается с заголовка раздела '[Script Info]'.
- Цвета в файлах ASS записаны в обратном шестнадцатеричном формате ABGR (синий-зеленый-красный с альфа-каналом), а не в стандартном RGB.
- Фансабберы аниме использовали теги переопределения ASS для воссоздания анимированных вывесок и плавающих голографических дисплеев, которые отслеживали движущиеся кадры камеры.
Часто задаваемые технические вопросы
В чем разница между субтитрами SRT и ASS?
SRT - это простой формат, в котором отображается только базовый текст, в то время как ASS поддерживает сложное оформление, пользовательские шрифты, анимацию караоке, цветные рамки и точное позиционирование на экране.
Как конвертировать субтитры ASS в SRT?
Вы можете конвертировать файлы ASS в чистые универсальные субтитры SRT в один клик с помощью File2File.app прямо в вашем веб-браузере.
Какие медиаплееры поддерживают субтитры ASS?
VLC, MPV, MPC-HC и Kodi поддерживают субтитры ASS из коробки благодаря использованию движка рендеринга libass.