Субтитри WebVTT (.vtt)
W3C СтандартWeb Video Text Tracks (WebVTT) - це офіційний вебстандарт W3C для субтитрів, підписів та опису розділів, який нативно інтегрований у відеоелементи HTML5 (<track>) та сучасну технологію потокового мовлення через HTTP (HLS).
Конвертувати з SRT у VTT
Безкоштовний конвертер з SRT у VTT у браузері. Миттєво конвертуйте файли на своєму пристрої.
Аналіз та метадані
Операційні системи та аналізатори файлів ідентифікують файли WebVTT, перевіряючи початкову послідовність бінарних байтів:
Сигнатура заголовка на байтовому рівні (Magic Bytes)
Операційні системи та аналізатори файлів ідентифікують файли WebVTT, перевіряючи початкову послідовність бінарних байтів:
ШІСТНАДЦЯТКОВА СИГНАТУРА (ЗСУВ 0):
57 45 42 56 54 54ASCII-УЯВЛЕННЯ: WEBVTT
Стандартизація: W3C WebVTT Recommendation
Технічні характеристики
| Архітектура контейнера | UTF-8 text file starting with 'WEBVTT' signature, followed by optional STYLE and NOTE blocks and sequential cue blocks |
| Стиснення | Uncompressed plain text (typically compressed over HTTP via Gzip or Brotli) |
| Порядок байтів (Endianness) | UTF-8 text stream |
| Колірні простори | Full CSS Color Module Level 4 support in cue styles |
| Канали та структура | Timecoded cues, speech recognition confidence, CSS styling, and screen position settings |
| Максимальні розміри | Unbounded sequential cues |
| Прозорість | Full CSS opacity and alpha transparency supported via '::cue' pseudo-element |
| Потокове та прогресивне завантаження | Native streaming in HTML5 <video> elements and HLS / DASH live video manifests |
Технічна матриця порівняння: WebVTT проти конкурентів
| Технічний атрибут | WebVTT (Поточний) | SRT | ASS | SUB |
|---|---|---|---|---|
| Інтеграція у веб HTML5 | 100% нативний стандарт (<track>) | Потребує конвертації через JS | Потребує WebAssembly | Потребує конвертації |
| Стилізація CSS | Повна нативна стилізація CSS (::cue) | Лише базові теги HTML | Проприєтарні теги перевизначення | Відсутня |
| Потокове мовлення HLS / DASH | Універсальний стандарт трансляції потокового відео | Підтримується через мультиплексування | Обмежена підтримка трансляцій | Відсутня |
| Вимога до заголовка | Суворий службовий текст 'WEBVTT' у рядку 1 | Заголовок не потрібен | Секція [Script Info] | Заголовок не потрібен |
Типові режими пошкодження та посібник з відновлення в шістнадцятковому форматі
Помилка в консолі браузера: 'Malformed WebVTT file: Missing WEBVTT signature'.
Першопричина: Відсутній рядок 'WEBVTT' на першому рядку або наявність порожніх рядків перед заголовком.
Відновлення: Додайте 'WEBVTT\n\n' на початок файлу за допомогою конвертера субтитрів File2File Subtitle Converter.
Аналіз безпеки та векторів атак на парсери
Аналізатори WebVTT у веббраузерах обробляють недовірені підписи, що може призвести до міжсайтового скриптингу (XSS), якщо вони виводяться в документ без очищення.
Відомі вектори атак
- XSS-ін'єкція через неочищений вміст HTML-підписів, вставлений у DOM відеоплеєра.
- Підробка запитів на сервері (SSRF) під час автоматизованої генерації мініатюр субтитрів на серверах.
- Відмова в обслуговуванні за допомогою неправильно сформованих селекторів підписів CSS.
Захисні найкращі практики:
Історичне походження та віхи
Головні переваги та плюси
- Нативний вебстандарт HTML5: підтримується безпосередньо всіма веббраузерами в елементі <track> без зовнішніх бібліотек.
- Потужна підтримка стилів CSS: налаштування кольорів, шрифтів, фону та положення за допомогою нативного псевдоелемента CSS '::cue'.
- Першокласна підтримка прямих трансляцій: інтегровано в маніфести потокового мовлення Apple HLS та MPEG-DASH для трансляції субтитрів.
Технічні обмеження та мінуси
- Сувора вимога до заголовка: файл має починатися з точного тексту 'WEBVTT' у самому першому рядку, інакше браузери відхилять його.
- Крапка як роздільник мілісекунд ('00:01:20.500') вимагає конвертації із застарілих файлів SRT, розділених комами.
- Старіші апаратні медіаплеєри (не від браузерів, наприклад дешеві USB-медіабокси) часто не мають нативної підтримки WebVTT.
Цікаві технічні факти
- Кожен дійсний файл WebVTT повинен починатися з точного слова 'WEBVTT' на першому рядку; будь-який інший текст змусить браузери ігнорувати файл.
- Формат WebVTT спочатку називався 'WebSRT', оскільки він був навмисно розроблений так, щоб виглядати майже ідентично класичним субтитрам SRT.
- WebVTT також може використовуватися для розділів відео та інтерактивних мініатюр-підказок під час наведення курсора на панель прокручування відео.
Поширені технічні запитання
Для чого використовується WebVTT?
WebVTT — це офіційний вебстандарт для додавання субтитрів, підписів, глав та описів до елементів <video> HTML5 на вебсайтах.
Як конвертувати субтитри SRT у WebVTT?
Ви можете конвертувати файли SRT у чисті файли WebVTT в один клік за допомогою File2File.app безпосередньо у своєму браузері.
Чому мої субтитри WebVTT не відображаються у браузері?
Переконайтеся, що ваш файл починається з рядка 'WEBVTT' у рядку 1, після нього є порожній рядок, а ваш вебсервер віддає його із заголовком 'Content-Type: text/vtt'.
Пов'язані пари конвертації WebVTT
Перетворення файлів SubRip Text у формат WebVTT перетворює звичайні текстові субтитри на сучасні часові мітки, сумісні з HTML5, для веб-відеоплеєрів.
Перетворення файлів WebVTT у SubRip Text забезпечує безперебійне відтворення субтитрів HTML5-відео в старих настільних медіаплеєрах та застарілому обладнанні для редагування.