WebVTT ক্যাপশন (.vtt)
W3C স্ট্যান্ডার্ডওয়েব ভিডিও টেক্সট ট্র্যাকস (WebVTT) হলো ক্যাপশন, সাবটাইটেল এবং অধ্যায় বা চ্যাপ্টার বিবরণের জন্য অফিসিয়াল W3C ওয়েব স্ট্যান্ডার্ড, যা HTML5 ভিডিও এলিমেন্ট (<track>) এবং আধুনিক HTTP লাইভ স্ট্রিমিং (HLS)-এর সাথে স্বাভাবিকভাবেই সংহত।
SRT থেকে VTT-তে রূপান্তর করুন
বিনামূল্যের ব্রাউজারভিত্তিক SRT-থেকে-VTT রূপান্তরকারী। আপনার ডিভাইসেই ফাইল তাৎক্ষণিকভাবে রূপান্তর করুন।
ইনস্পেক্ট ও মেটাডেটা
অপারেটিং সিস্টেম এবং ফাইল অ্যানালাইজারগুলো শুরুর বাইনারি বাইট সিকোয়েন্স পরীক্ষা করে WebVTT ফাইল শনাক্ত করে:
বাইট-লেভেল হেডার সিগনেচার (ম্যাজিক বাইটস)
অপারেটিং সিস্টেম এবং ফাইল অ্যানালাইজারগুলো শুরুর বাইনারি বাইট সিকোয়েন্স পরীক্ষা করে WebVTT ফাইল শনাক্ত করে:
হেক্স সিগনেচার (অফসেট 0):
57 45 42 56 54 54ASCII রিপ্রেজেন্টেশন: WEBVTT
স্ট্যান্ডার্ডাইজেশন: W3C WebVTT সুপারিশ
প্রযুক্তিগত বৈশিষ্ট্য
| কন্টেইনার আর্কিটেকচার | UTF-8 টেক্সট ফাইল 'WEBVTT' signature দিয়ে শুরু হয়; এরপর ঐচ্ছিক STYLE ও NOTE block এবং ক্রমিক cue block থাকে |
| কম্প্রেশন | কমপ্রেশনবিহীন প্লেইনটেক্সট (সাধারণত HTTP-তে Gzip বা Brotli দিয়ে কমপ্রেস করা হয়) |
| বাইট এন্ডিয়াননেস | UTF-8 টেক্সট স্ট্রিম |
| কালার স্পেস | cue style-এ CSS Color Module Level 4-এর পূর্ণ সমর্থন |
| চ্যানেল ও কাঠামো | সময়-চিহ্নিত cue, speech recognition confidence, CSS styling এবং পর্দায় অবস্থানের সেটিং |
| সর্বোচ্চ মাত্রা | ক্রমিক cue-এর নির্দিষ্ট সীমা নেই |
| স্বচ্ছতা | '::cue' pseudo-element দিয়ে পূর্ণ CSS opacity ও alpha transparency সমর্থিত |
| স্ট্রিমিং ও প্রোগ্রেসিভ | HTML5 <video> element এবং HLS / DASH live video manifest-এ নেটিভ স্ট্রিমিং |
টেকনিক্যাল তুলনা ম্যাট্রিক্স: WebVTT বনাম প্রতিযোগীগণ
| প্রযুক্তিগত বৈশিষ্ট্য | WebVTT (বর্তমান) | SRT | ASS | SUB |
|---|---|---|---|---|
| HTML5 ওয়েব ইন্টিগ্রেশন | ১০০% নেটিভ স্ট্যান্ডার্ড (<track>) | JS রূপান্তর প্রয়োজন | WebAssembly প্রয়োজন | রূপান্তর প্রয়োজন |
| CSS স্টাইলিং | সম্পূর্ণ নেটিভ CSS স্টাইলিং (::cue) | শুধুমাত্র মৌলিক HTML ট্যাগ | প্রোপ্রাইটরি ওভাররাইড ট্যাগ | কোনোটিই নয় |
| HLS / DASH স্ট্রিমিং | সার্বজনীন স্ট্রিমিং ব্রডকাস্ট স্ট্যান্ডার্ড | মিউক্সিংয়ের মাধ্যমে সমর্থিত | সীমিত স্ট্রিমিং সমর্থন | কোনোটিই নয় |
| হেডার প্রয়োজনীয়তা | কঠোর 'WEBVTT' ম্যাজিক টেক্সট লাইন ১ | কোনো হেডারের প্রয়োজন নেই | [Script Info] বিভাগ | কোনো হেডারের প্রয়োজন নেই |
সাধারণ করাপশন মোড এবং হেক্স রিকভারি গাইড
ব্রাউজার কনসোল ত্রুটি: 'Malformed WebVTT file: Missing WEBVTT signature'।
মূল কারণ: লাইন ১-এ 'WEBVTT' স্ট্রিং অনুপস্থিত, অথবা হেডারের আগে খালি লাইন রয়েছে।
পুনরুদ্ধার: File2File.app সাবটাইটেল কনভার্টার ব্যবহার করে ফাইলের শীর্ষে 'WEBVTT\n\n' যোগ করুন।
নিরাপত্তা বিশ্লেষণ ও পার্সার অ্যাটাক ভেক্টর
ওয়েব ব্রাউজারের WebVTT পার্সারগুলো এমন অবিশ্বস্ত কিউ প্রক্রিয়া করে যা DOM-এ স্যানিটাইজ না করে রেন্ডার করা হলে ক্রস-সাইট স্ক্রিপ্টিং (XSS)-এর কারণ হতে পারে।
পরিচিত অ্যাটাক ভেক্টর
- ওয়েব ভিডিও প্লেয়ার DOM-এ ইনসার্ট করা স্যানিটাইজ না করা HTML কিউ কন্টেন্টের মাধ্যমে XSS ইনজেকশন।
- স্বয়ংক্রিয় সার্ভার-সাইড সাবটাইটেল থাম্বনেইল তৈরির সময় সার্ভার-সাইড রিকোয়েস্ট ফরজারি (SSRF)।
- ত্রুটিপূর্ণ CSS কিউ সিলেক্টরের মাধ্যমে পরিষেবা অস্বীকারের আক্রমণ।
প্রতিরক্ষামূলক সেরা অনুশীলন: নেটিভ ব্রাউজার <track> রেন্ডারিংয়ের ওপর নির্ভর করুন এবং ম্যানুয়াল DOM ইনসেশনের আগে কিউ পেলোড স্যানিটাইজ করুন।
ঐতিহাসিক উৎপত্তি ও মাইলফলক
প্রধান সুবিধাসমূহ ও গুণাবলী
- নেটিভ HTML5 ওয়েব স্ট্যান্ডার্ড: কোনো বাহ্যিক লাইব্রেরি ছাড়াই <track> এলিমেন্টে সমস্ত ওয়েব ব্রাউজার দ্বারা সরাসরি সমর্থিত।
- সমৃদ্ধ CSS স্টাইলিং সমর্থন: নেটিভ '::cue' CSS সিউডো-এলিমেন্ট ব্যবহার করে রঙ, ফন্ট, ব্যাকগ্রাউন্ড এবং অবস্থান কাস্টমাইজ করুন।
- প্রথম শ্রেণীর লাইভ স্ট্রিমিং সমর্থন: ব্রডকাস্ট ক্যাপশনের জন্য অ্যাপল HLS এবং MPEG-DASH স্ট্রিমিং ম্যানিফেস্টে সংহত।
কারিগরি সীমাবদ্ধতা ও অসুবিধা
- কঠোর হেডার প্রয়োজনীয়তা: ব্রাউজারগুলোর প্রত্যাখ্যান রোধ করতে ফাইলের একেবারে প্রথম লাইনে অবশ্যই সঠিক লেখা 'WEBVTT' থাকতে হবে।
- পিরিয়ড বা দশমিক মিলিসেকেন্ড বিভাজক ('০০:০১:২০.৫০০') পুরোনো কমা-বিভাজিত SRT ফাইল থেকে রূপান্তর প্রয়োজন।
- পুরোনো নন-ব্রাউজার হার্ডওয়্যার প্লেয়ারগুলোতে (যেমন সস্তা USB মিডিয়া বক্স) প্রায়ই নেটিভ WebVTT সমর্থনের অভাব থাকে।
আকর্ষণীয় কারিগরি তথ্য
- প্রতিটি বৈধ WebVTT ফাইলের প্রথম লাইনে অবশ্যই সঠিক শব্দ 'WEBVTT' থাকতে হবে; অন্য কিছু থাকলে ব্রাউজার ফাইলটি উপেক্ষা করে।
- WebVTT-কে মূলত 'WebSRT' বলা হতো কারণ এটি ক্লাসিক SRT সাবটাইটেলের সাথে প্রায় হুবহু মিল রেখে ইচ্ছাকৃতভাবে ডিজাইন করা হয়েছিল।
- ভিডিও স্ক্রাবার বারের ওপর হোভার করার সময় ভিডিও চ্যাপ্টার এবং ইন্টারেক্টিভ থাম্বনেইল টুলটিপের জন্যও WebVTT ব্যবহার করা যেতে পারে।
সচরাচর জিজ্ঞাসিত প্রযুক্তিগত প্রশ্নাবলি
WebVTT কিসের জন্য ব্যবহৃত হয়?
WebVTT হলো ওয়েবসাইটের HTML5 <video> এলিমেন্টে সাবটাইটেল, ক্যাপশন, চ্যাপ্টার এবং বিবরণ যোগ করার অফিসিয়াল ওয়েব স্ট্যান্ডার্ড ফরম্যাট।
আমি কীভাবে একটি SRT সাবটাইটেলকে WebVTT-তে রূপান্তর করতে পারি?
আপনি সরাসরি আপনার ব্রাউজারে File2File.app ব্যবহার করে এক ক্লিকেই SRT ফাইলগুলোকে পরিষ্কার WebVTT ফাইলে রূপান্তর করতে পারেন।
আমার WebVTT সাবটাইটেল কেন ব্রাউজারে দেখা যাচ্ছে না?
নিশ্চিত করুন যে আপনার ফাইলটি ১ নম্বর লাইনে 'WEBVTT' দিয়ে শুরু হয়েছে, এর পরে একটি খালি লাইন আছে এবং আপনার ওয়েব সার্ভার এটি 'Content-Type: text/vtt' হেডারের সাথে পরিবেশন করছে।
সম্পর্কিত WebVTT কনভার্সন পেয়ার
সাবরিপ টেক্সট ফাইলকে ওয়েবভিটিটি ফর্ম্যাটে রূপান্তর করলে প্লেইন টেক্সট ক্যাপশনগুলো ওয়েব ভিডিও প্লেয়ারের জন্য আধুনিক এইচটিএমএল৫-সামঞ্জস্যপূর্ণ টাইম ট্র্যাকে রূপান্তরিত হয়।
ওয়েবভিটিটি ফাইলকে সাবরিপ টেক্সটে রূপান্তর করার মাধ্যমে পুরোনো ডেস্কটপ মিডিয়া প্লেয়ার এবং লিগ্যাসি এডিটিং হার্ডওয়ারে এইচটিএমএল৫ ভিডিও ক্যাপশন নির্বিঘ্নে চালানো সম্ভব হয়।