Universal Subtitle Format

ВідкритиЗберегтиXMLБагатомовний

XML-формат субтитрів ери Matroska: іменовані стилі, кілька мов в одному файлі і простір для розширення. Його підтримало небагато плеєрів, але він утримує все, що зберігає Subtitld, тому Subtitld зберігає в ньому свої проєкти.

Коротко

Розширення.usf
Тип медіаtext/xml
СпецифікаціяUSF 1.1, проєкт CoreCodec (2010), підтримується онлайн компанією Titlevision
Точність часуМілісекунди
Кодування текстуОголошене в XML. UTF-8, якщо не вказано інше.
ОформленняІменовані стилі, а також <i>, <b>, <u> і <font> у тексті
РозміщенняДев’ять місць і відступів, для стилю або для тексту
Мовціspeaker у кожному тексті
МовиКілька в одному файлі, по блоку <subtitles> на кожну, за кодом ISO 639-2
У контейнерахMatroska як S_TEXT/USF

Будова файлу

XML-документ: заголовок із метаданими і стилями, далі блок субтитрів для кожної мови.

<USFSubtitles version="1.0">
<metadata>…</metadata>
<styles>…</styles>
<subtitles>
<language code="por">
  Portuguese (Brazil)
</language>
<subtitle
  start="00:00:01.000"
  stop="00:00:02.500">
<text>Olá!</text>
</subtitle>
</subtitles>
</USFSubtitles>
  1. 1 · Корінь

    <USFSubtitles> з версією USF, за якою він зроблений.

  2. 2 · Заголовок

    Назва, автори і мова; іменовані стилі, які можуть використовувати субтитри.

  3. 3 · Мова

    Блок <subtitles> для кожної мови за її кодом ISO 639-2.

  4. 4 · Субтитр

    Його початок, кінець (або тривалість) і текст.

Час

Достатньо й самих секунд. 100 — це 00:01:40.000, а 1.5 — півтори секунди. Субтитр може вказати duration замість stop.

Текст

Текст USF — це підмножина XHTML: теги малими літерами, належно вкладені, <br/> закривається.

Елемент Ефект У Subtitld
<i>, <b>, <u> Курсив, жирний, підкреслення Зберігається
<font color="#00FF0000"> Колір, а також гарнітура, розмір, контур або тінь Зберігається колір
<br/> Перенос рядка Зберігається
<s> Перекреслення: є в списку планів USF, але не в специфікації Записується для перекреслення; інші інструменти можуть показати простий текст
<karaoke>, <k t="250"/> Синхронізація караоке Зберігається текст
<image>, <shape> Зображення і малюнки Не зберігається

Альфа-канал іде першим і відраховується на спад. Кольори USF мають вигляд #AARRGGBB, де 00 — непрозорий, а FF — прозорий. #00FF0000 — суцільний червоний; #FF0000 без альфа-каналу теж.

Стилі та місця

<style name="Narrator">
  <fontstyle italic="yes"/>
  <position alignment="TopCenter"/>
</style>

Текст використовує стиль за назвою, <text style="Narrator">, і бере його шрифт, колір, курсив, товщину й підкреслення, а також місце: одне з дев’яти, від TopLeft до BottomRight. Стиль із назвою Default змінює кожен субтитр, тому Subtitld його не записує, і плеєри зберігають свій вигляд.

Мови

Кожна мова має власний блок <subtitles>, названий кодом ISO 639-2: eng, fre, ger, por. Один код може означати більше однієї мови, відомої Subtitld, тож Subtitld записує в елементі також назву мови і читає por як бразильську або європейську португальську за нею.

<language code="por">
  Portuguese (Brazil)
</language>

USF у Subtitld

Проєкти Subtitld — це USF. Проєкт .usfx — це USF разом із тим, що йому потрібне поруч: відео, голоси і дубляжі в одному файлі.

Зберігається в .usf
  • Текст, оформлення і місце кожного субтитра
  • Переклади, по блоку на кожен
  • Мовці з їхніми кольорами, а за бажанням і зі зображеннями
  • Дубляжі та їхні голоси, а за бажанням і самі кліпи
  • Початок і кінець до мілісекунди
Нікуди подіти
  • Шрифти, розміри, контури й тіні для кожного рядка
  • Зображення, малюнки та синхронізація караоке
  • Ефекти

Те, що додає Subtitld, інші інструменти залишають без змін.

Відкриття файлу USF

Subtitld читає те, що записує сам, і те, що записують інші інструменти:

  • кодування, оголошене в XML;
  • курсив, жирний, підкреслення, колір і місце іменованого стилю, який використовує текст;
  • <font> з italic, bold або underline, як його пишуть деякі інструменти;
  • duration замість відсутнього stop і час, записаний лише в секундах;
  • кілька текстів в одному субтитрі як його рядки;
  • блок кожної мови, зіставлений із першим за часом, тож блоки не мусять мати однакову кількість субтитрів;
  • коди ISO 639-2 і назви мов, а також коди, які записували старіші версії Subtitld.

Файл, який не є USF, так і повідомляє, і нічого не відкриває.

Збереження USF

Діалог експорту Subtitld з вибраним USF і вбудованими зображеннями мовців

USF зберігає весь проєкт, тож Експорт, далі Субтитри і USF питає лише, що вкласти всередину:

  • Вбудувати зображення мовцівЗображення кожного мовця в base64, у його стилі.
  • Вбудувати аудіокліпиКліп кожного дубляжу в base64, у його субтитрі.

Файл у UTF-8, мови за кодом ISO 639-2 і назвою, із назвою, яку вимагає USF, і без стилю Default.

Цікаве

2002

USF вперше випустили у листопаді 2002 року. Це був проєкт CoreCodec як XML-альтернатива Advanced SubStation Alpha.

1.1

Остання версія, від листопада 2010 року. Її специфікація досі серед планів називає <s>.

VLC 0.9

Починаючи з версії 0.9, VLC показує текст і час USF, а трохи його оформлення показує так само, як VSFilter.

Пов'язані формати

Маєте .usf для виправлення?

Відкрийте його в Subtitld разом із відео та вирівняйте за хвилею.

Завантажити Subtitld