// Load video file locally videoInput.onchange = () => const file = videoInput.files[0]; if (file) videoEl.src = URL.createObjectURL(file); ;
// Load SRT and inject as a track srtInput.onchange = async () => const file = srtInput.files[0]; if (!file) return;
<h2>Tholi Prema – Test Myanmar Subtitles</h2> tholi prema myanmar subtitle
<input type="file" id="videoFile" accept="video/*"><br><br> <input type="file" id="srtFile" accept=".srt"><br><br>
videoEl.appendChild(track); ; </script>
<!DOCTYPE html> <html lang="my"> <head> <meta charset="UTF-8"> <title>Tholi Prema – Myanmar Subtitles Demo</title> <style> body font-family: sans-serif; margin: 2rem; video max-width: 100%; </style> </head> <body>
const text = await file.text(); // Convert SRT → VTT (browsers only understand VTT) const vtt = "WEBVTT\n\n" + text .replace(/\r?\n\r?\n/g, "\n\n") // normalize line breaks .replace(/^(\d+)\n/g, '') // drop line numbers .replace(/(\d2:\d2:\d2),(\d3)/g, '$1.$2'); // ms separator // Load video file locally videoInput
<script> const videoEl = document.getElementById('player'); const videoInput = document.getElementById('videoFile'); const srtInput = document.getElementById('srtFile');