زیرنویس WebVTT (.vtt)
W3C استانداردمسیرهای متنی ویدیوی وب (WebVTT) استاندارد وب رسمی W3C برای زیرنویسها، کپشنها و توضیحات فصل است که بهطور بومی در عناصر ویدیویی HTML5 (<track>) و استریم زنده HTTP مدرن (HLS) ادغام شده است.
تبدیل SRT به VTT
مبدل رایگان SRT به VTT درون مرورگر. فایلها را فورا روی دستگاه خود تبدیل کنید.
بررسی و فراداده
سیستمعاملها و تحلیلگرهای فایل، فایلهای WebVTT را با بررسی توالی بایتهای دودویی ابتدایی شناسایی میکنند:
امضای هدر در سطح بایت (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 (فعلی) | SRT | ASS | SUB |
|---|---|---|---|---|
| یکپارچهسازی وب 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 معیوب.
بهترین روشهای پدافندی:
تاریخچه و نقاط عطف
مزایا و نقاط قوت کلیدی
- استاندارد وب بومی 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' ارسال میکند.
جفتهای تبدیل مرتبط با WebVTT
تبدیل فایلهای SubRip Text به فرمت WebVTT، زیرنویسهای متنی ساده را به زمانبندیهای سازگار با HTML5 و مدرن برای پخشکنندههای ویدیویی وب تبدیل میکند.
تبدیل فایلهای WebVTT به SubRip Text امکان پخش روان زیرنویسهای ویدیویی HTML5 را در پخشکنندههای رسانهای قدیمی دسکتاپ و سختافزارهای ویرایش قدیمی فراهم میکند.