زیرنویس WebVTT (.vtt)

W3C استاندارد

مسیرهای متنی ویدیوی وب (WebVTT) استاندارد وب رسمی W3C برای زیرنویس‌ها، کپشن‌ها و توضیحات فصل است که به‌طور بومی در عناصر ویدیویی HTML5 (<track>) و استریم زنده HTTP مدرن (HLS) ادغام شده است.

تبدیل SRT به VTT

مبدل رایگان SRT به VTT درون مرورگر. فایل‌ها را فورا روی دستگاه خود تبدیل کنید.

بررسی و فراداده

سیستم‌عامل‌ها و تحلیلگرهای فایل، فایل‌های WebVTT را با بررسی توالی بایت‌های دودویی ابتدایی شناسایی می‌کنند:

انتخاب یا رها کردن فایل‌ها در اینجا

تبدیل ۱۰۰٪ خصوصی در مرورگر - فایل‌ها هرگز دستگاه شما را ترک نمی‌کنند

یا جای‌گذاری کنید Ctrl+V
تضمین حریم خصوصی بدون انتقال شبکه: صفر بایت به سرورهای خارجی آپلود می‌شود. تمام پردازش‌ها به صورت محلی در سندباکس مرورگر شما انجام شد.

امضای هدر در سطح بایت (Magic Bytes)

سیستم‌عامل‌ها و تحلیلگرهای فایل، فایل‌های WebVTT را با بررسی توالی بایت‌های دودویی ابتدایی شناسایی می‌کنند:

امضای HEX (آفست 0):

57 45 42 56 54 54

نمایش ASCII: 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 (فعلی)SRTASSSUB
یکپارچه‌سازی وب HTML5استاندارد ۱۰۰٪ بومی (<track>)نیاز به تبدیل JS داردنیاز به WebAssembly داردنیاز به تبدیل دارد
استایل‌دهی CSSاستایل‌دهی کامل و بومی CSS (::cue)فقط تگ‌های پایه HTMLتگ‌های بازنویسی اختصاصیهیچ‌کدام
استریم HLS / DASHاستاندارد جهانی پخش استریمپشتیبانی از طریق muxingپشتیبانی محدود از استریمهیچ‌کدام
نیاز به هدرخط ۱ متن جادویی دقیق 'WEBVTT'بدون نیاز به هدربخش [Script Info]بدون نیاز به هدر

حالت‌های رایج خرابی و راهنمای بازیابی هگز

خطای کنسول مرورگر: 'Malformed WebVTT file: Missing WEBVTT signature'.

علت ریشه‌ای: نبود رشته 'WEBVTT' در خط ۱ یا وجود خطوط خالی قبل از هدر.

بازیابی: با استفاده از مبدل زیرنویس File2File، مقدار '\n\nWEBVTT' را به بالای فایل اضافه کنید.

تحلیل امنیتی و بردارهای حمله تجزیه‌کننده (Parser)

تجزیه‌کننده‌های WebVTT در مرورگرهای وب، نشانه‌های نامطمئن را پردازش می‌کنند که اگر بدون پاکسازی در DOM رندر شوند، می‌توانند منجر به آسیب‌پذیری اسکریپت‌نویسی بین‌سایتی (XSS) شوند.

بردارهای حمله شناخته‌شده

  • تزریق XSS از طریق محتوای نشانه‌های HTML پاکسازی‌نشده که در DOM پلیر ویدیوی وب درج شده‌اند.
  • جعل درخواست سمت سرور (SSRF) در طول تولید خودکار بندانگشتی زیرنویس در سمت سرور.
  • انکار سرویس از طریق انتخابگرهای نشانه‌های CSS معیوب.

بهترین روش‌های پدافندی:

تاریخچه و نقاط عطف

2019W3C به طور رسمی WebVTT یعنی فرمت مسیرهای متنی ویدیوی وب را به سمت پیش‌نهاد توصیه‌شده (Proposed Recommendation) پیش می‌برد.
2011برای ایجاد یک استاندارد متمایز W3C جدا از SubRip کلاسیک، از WebSRT به WebVTT تغییر نام داد.
2010WHATWG فرمت WebVTT را برای حل مشکل زیرنویس‌گذاری بومی تگ <video> در HTML5 معرفی کرد.

مزایا و نقاط قوت کلیدی

  • استاندارد وب بومی 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 فرمت استاندارد رسمی وب برای افزودن زیرنویس، زیرنویس فیلم (captions)، فصل‌ها و توضیحات به عناصر <video> در HTML5 در وب‌سایت‌ها است.

چگونه می‌توانم یک زیرنویس SRT را به WebVTT تبدیل کنم؟

شما می‌توانید با استفاده از File2File.app مستقیماً در مرورگر خود، فایل‌های SRT را با یک کلیک به فایل‌های تمیز WebVTT تبدیل کنید.

چرا زیرنویس‌های WebVTT من در مرورگر نمایش داده نمی‌شوند؟

مطمئن شوید که فایل شما در خط ۱ با 'WEBVTT' شروع می‌شود، یک خط خالی پس از آن وجود دارد و وب‌سایت سرور شما آن را با هدر 'Content-Type: text/vtt' ارسال می‌کند.