WebVTT altyazısı (.vtt)

W3C Standart

Web Video Metin İzleri (WebVTT), HTML5 video öğelerine (<track>) ve modern HTTP canlı akışına (HLS) yerel olarak entegre edilmiş; altyazılar, altyazı metinleri ve bölüm açıklamaları için resmi W3C web standardıdır.

SRT biçimini VTT biçimine dönüştür

Tarayıcında SRT biçimini VTT biçimine ücretsiz dönüştür. Dosyaları cihazında anında dönüştür.

İncele ve Meta Veriler

İşletim sistemleri ve dosya çözümleyicileri, WebVTT dosyalarını başlangıçtaki ikili sihirli bayt dizisini inceleyerek tanımlar:

Dosyaları buraya seç veya bırak

Özel - dosyalar cihazınızdan asla ayrılmaz

veya yapıştır Ctrl+V
Sıfır Ağ Aktarımı Gizlilik Garantisi: Harici sunuculara 0 bayt yüklendi. Tüm işlemler tarayıcındaki korumalı alanda (sandbox) yerel olarak gerçekleştirildi.

Bayt düzeyinde başlık imzası (sihirli baytlar)

İşletim sistemleri ve dosya çözümleyicileri, WebVTT dosyalarını başlangıçtaki ikili sihirli bayt dizisini inceleyerek tanımlar:

HEX İMZASI (OFSET 0):

57 45 42 56 54 54

ASCII GÖSTERİMİ: WEBVTT

Standartlaştırma: W3C WebVTT Recommendation

Teknik Özellikler

Kapsayıcı mimarisi'WEBVTT' imzasıyla başlayan UTF-8 metin dosyası; ardından isteğe bağlı STYLE ve NOTE blokları ile sıralı işaret blokları gelir
SıkıştırmaSıkıştırılmamış düz metin (genellikle HTTP üzerinden Gzip veya Brotli ile sıkıştırılır)
Bayt Düzeni (Endianness)UTF-8 metin akışı
Renk Uzaylarıİşaret stillerinde CSS Color Module Level 4 tam desteği
Kanallar ve YapıZaman kodlu işaretler, konuşma tanıma güven değerleri, CSS biçimlendirmesi ve ekran konumu ayarları
Maksimum BoyutlarSınırsız sıralı işaret
Şeffaflık'::cue' sözde öğesi aracılığıyla tam CSS opaklığı ve alfa şeffaflığı desteği
Akış ve Aşamalı İşlemeHTML5 <video> öğelerinde ve HLS / DASH canlı video bildirimlerinde yerel akış desteği

Teknik karşılaştırma matrisi: WebVTT ve rakipleri

Teknik NitelikWebVTT (Güncel)SRTASSSUB
HTML5 Web Entegrasyonu%100 yerel standart (<track>)JS dönüştürme gerektirirWebAssembly gerektirirDönüştürme gerektirir
CSS BiçimlendirmeTam yerel CSS biçimlendirme (::cue)Yalnızca temel HTML etiketleriTescilli geçersiz kılma etiketleriYok
HLS / DASH AkışıWebVTT, tarayıcı videolarındaki zamanlı metin parçaları ve bazı yayın listelerinde kullanılır; oynatıcı desteği sunum biçimine bağlıdır.Muxing ile desteklenirSınırlı akış desteğiYok
Başlık Gereksinimiİlk satırda tam olarak 'WEBVTT' olmalıBaşlık gerekmez[Script Info] bölümüBaşlık gerekmez

Yaygın Bozulma Modları ve Hex Kurtarma Kılavuzu

Tarayıcı konsolu hatası: 'Geçersiz WebVTT dosyası: WEBVTT imzası eksik'.

Kök Neden: 1. satırda 'WEBVTT' dizesinin eksik olması veya başlıktan önce boş satırların bulunması.

Kurtarma: File2File.app Altyazı Dönüştürücü ile dosyanın başına 'WEBVTT\n\n' ekle.

Güvenlik Analizi ve Ayrıştırıcı Saldırı Vektörleri

Web tarayıcılarındaki WebVTT ayrıştırıcıları, DOM'a temizlenmeden (sanitize edilmeden) işlenirse Siteler Arası Betik Çalıştırma'ya (XSS) yol açabilecek güvenilmeyen ipuçlarını işler.

Bilinen Saldırı Vektörleri

  • Web video oynatıcı DOM'una eklenen temizlenmemiş HTML ipucu içerikleri yoluyla XSS enjeksiyonu.
  • Otomatik sunucu tarafı altyazı küçük resmi oluşturma sırasında Sunucu Tarafı İstek Sahteciliği (SSRF).
  • Hatalı biçimlendirilmiş CSS ipucu seçicileri aracılığıyla hizmet reddi (DoS).

Savunmaya yönelik en iyi uygulamalar: Yerleşik tarayıcı <track> görüntülemesini kullan ve altyazı içeriklerini DOM'a elle eklemeden önce temizle.

Tarihsel kökenler ve önemli dönüm noktaları

2019W3C, WebVTT: Web Video Metin İzleri Formatı'nı resmi olarak Öneri Taslağı'na (Proposed Recommendation) yükseltir.
2011Klasik SubRip'ten ayrı ve kendine özgü bir W3C standardı oluşturmak için WebSRT'den WebVTT olarak yeniden adlandırıldı.
2010WHATWG, HTML5 <video> etiketi için yerel altyazı sorununu çözmek amacıyla WebVTT'yi tanıttı.

Temel Avantajlar ve Artılar

  • HTML <track> öğesi altyazılar için WebVTT kullanır. Tarayıcılar işaretçi zamanlamasını ve biçimlendirmeyi video oynatıcı üzerinden gösterir; desteklenen özelliklerde farklılık olabilir.
  • Zengin CSS biçimlendirme desteği: Renkleri, yazı tiplerini, arka planları ve konumları yerleşik '::cue' CSS sözde öğesiyle özelleştirebilirsin.
  • HLS ve MPEG-DASH hizmetleri, video segmentlerinin yanında WebVTT altyazı parçaları sunabilir. Hedef oynatıcının oynatma listesi altyazı paketlemesini ve dil parçalarını desteklediğini kontrol edin.

Teknik Kısıtlamalar ve Eksiler

  • Katı başlık gereksinimi: dosya ilk satırda tam olarak 'WEBVTT' metniyle başlamalıdır, aksi takdirde tarayıcılar dosyayı reddeder.
  • Nokta milisaniye ayırıcısı ('00:01:20.500'), eski virgülle ayrılmış SRT dosyalarından dönüştürme gerektirir.
  • Eski tarayıcı dışı donanım oynatıcılar (ucuz USB medya kutuları gibi) genellikle yerel WebVTT desteğine sahip değildir.

İlginç Teknik Bilgiler

  • Geçerli her WebVTT dosyası ilk satırda tam olarak 'WEBVTT' kelimesiyle başlamalıdır; başka herhangi bir şey tarayıcıların dosyayı yoksaymasına neden olur.
  • WebVTT aslen 'WebSRT' olarak adlandırılırdı çünkü bilinçli olarak klasik SRT altyazılarıyla neredeyse aynı görünecek şekilde tasarlanmıştı.
  • WebVTT, video bölümlerini tanımlamak ve video ilerleme çubuğunun üzerine gelindiğinde etkileşimli küçük resim ipuçları göstermek için de kullanılabilir.

Sıkça Sorulan Teknik Sorular

WebVTT ne için kullanılır?

WebVTT, web sitelerindeki HTML5 <video> öğelerine altyazı, işitme engelliler için altyazı, bölüm işaretleri ve betimlemeler eklemeye yarayan resmî web standardı biçimidir.

Bir SRT altyazısını WebVTT'ye nasıl dönüştürebilirim?

SRT dosyalarını doğrudan tarayıcında File2File.app'i kullanarak tek tıkla temiz WebVTT dosyalarına dönüştürebilirsin.

WebVTT altyazılarım tarayıcıda neden görünmüyor?

Dosyanın ilk satırının 'WEBVTT' olduğundan ve hemen ardından boş bir satır geldiğinden emin ol. Ayrıca web sunucunun dosyayı 'Content-Type: text/vtt' üstbilgisiyle sunduğunu kontrol et.