LRC to VTT Subtitle Converter
Convert your LRC lyrics to WebVTT subtitle format.
Drag & drop your LRC file here
or click to browse
Supports .lrc files up to 50 MB
About LRC to VTT
Turn synced lyrics into web-compatible subtitles. This tool reads each LRC [MM:SS.xx] timestamp tag and generates a WebVTT cue with a start time and an estimated end time, so lyrics created for music players can be used with HTML5 video, YouTube, Vimeo, and JavaScript players like Video.js and JW Player.
LRC to VTT Code Syntax & Structure Inspection
Side-by-side code inspection illustrating header definitions, timestamp syntax, and cue payload formatting
LRC vs VTT Technical Specifications
LRC
LRC (.lrc) is a synchronized lyrics format for music players. Each line begins with a [MM:SS.xx] timestamp tag followed by the lyric text. It may include optional metadata tags like [ar:], [ti:], [al:], and [by:] for artist, title, album, and creator information.
VTT
WebVTT (.vtt) is the W3C standard format for web video subtitles, used by HTML5 <track>, YouTube, Vimeo, and most streaming platforms. Cues use HH:MM:SS.mmm --> HH:MM:SS.mmm timestamps and begin with a WEBVTT header line.
Format Differences
Conversion Troubleshooting & Gotchas
Practical solutions for player compatibility, character encoding, and timing synchronization
How to display synchronized lyrics on an HTML5 `<audio>` player?
HTML5 `<audio>` supports child `<track kind='subtitles' srclang='en' src='lyrics.vtt'>` tags identically to `<video>`. You can use JavaScript (`audio.textTracks[0].oncuechange`) or modern web players like Plyr/Video.js to display synchronized karaoke text under your music player.
Why does the browser console give a CORS error when loading the converted .vtt?
Web browsers enforce the Same-Origin Policy strictly on subtitle tracks. If your VTT file is stored on a CDN, S3, or third-party storage, the server must provide an `Access-Control-Allow-Origin: *` HTTP header, or the browser will block the lyrics.
Long audio tracks (> 60 minutes) causing incorrect timestamps in WebVTT
LRC files express time above an hour as cumulative minutes (e.g. `[75:20.00]`), whereas WebVTT strictly requires hours and minutes (`01:15:20.000`). AllSubConverter correctly decomposes cumulative minutes into standard two-digit hours.
Styling the converted lyrics in the browser using CSS
Unlike LRC which has no visual styling, WebVTT tracks can be customized via CSS pseudo-elements. For example: `video::cue, audio::cue { font-family: sans-serif; font-size: 1.2rem; color: #fff; background: rgba(0,0,0,0.7); }`.
Features
Why Convert?
Common Use Cases
Web-Based Lyric Videos
Convert LRC synced lyrics to VTT for HTML5 web video players, enabling subtitle display in browser-based lyric and karaoke videos.
YouTube Lyric Videos
YouTube accepts VTT subtitle uploads. Convert LRC lyrics to VTT for lyric video uploads to YouTube with proper subtitle tracks.
Web Karaoke Platforms
Web-based karaoke platforms render subtitles using VTT. Convert LRC lyric timing to VTT for integration with online karaoke services.
Educational Web Video
Convert LRC files from language learning audio to VTT for web-based educational video versions with subtitle tracks.
Web Player Compatibility
Convert LRC lyrics to the browser-native VTT format for reliable display in HTML5 and JavaScript video players.
Related Formats
VTT (WebVTT)
The output format — the W3C standard web video subtitle format used by YouTube, Vimeo, and HTML5 <track>. Convert LRC to VTT to turn lyrics into web-compatible subtitles.
LRC (Lyrics)
The input format — a synchronized lyrics format with [MM:SS.xx] timestamp tags used by music players like foobar2000, AIMP, Poweramp, and MiniLyrics.
SRT (SubRip)
The universal subtitle format. If you need subtitles for desktop video players instead of web players, convert LRC to SRT instead of LRC to VTT.
How It Works
- 1
Upload or drag your .lrc file into the converter.
- 2
The parser reads each [mm:ss.xx] timestamp and lyric text line.
- 3
LRC timestamps are converted to VTT format with dot separators (00:01:30.500).
- 4
For each cue, end time is calculated from the next line start (or default duration for last cue).
- 5
The WEBVTT header is prepended and each cue is written as plain VTT text.
- 6
Download the .vtt file ready for HTML5 video, YouTube, or web player integration.
More Subtitle Tools
Frequently Asked Questions
LRC files only have start timestamps. The converter sets each VTT cue's end time to the start time of the next line. For the final cue, a default 3-second duration is applied. This produces valid VTT with both begin and end times.
Yes. YouTube accepts VTT files through Creator Studio > Subtitles. After converting LRC to VTT, upload the .vtt file to YouTube's subtitle management interface and it will sync with your video.
LRC metadata tags ([ti:title], [ar:artist], [al:album]) are stripped during conversion since VTT has no song metadata system. Only timestamped lyric lines become VTT cues. The WEBVTT header is added at the top of the file.
After converting LRC to VTT, embed it in HTML5 video using: <video><track kind='subtitles' src='lyrics.vtt' srclang='en' label='English'></video>. The browser renders the subtitles natively via the track element.
LRC timestamps like [01:30.50] are converted to VTT format as 00:01:30.500 --> 00:01:35.000 (with dot separators and arrow notation). Centiseconds from LRC are multiplied by 10 to get VTT milliseconds.
Yes, completely free with no sign-up, no watermarks, and files up to 50 MB each. All processing happens locally in your browser.
Related Articles
How to Convert LRC to VTT Online | AllSubConverter
Convert LRC lyrics to VTT format free online for web video and HTML5 players. Learn timestamp differences, end-time handling, and YouTube integration.
Convert YouTube JSON3 Subtitles to SRT, VTT, or LRC | AllSubConverter
Download YouTube captions as JSON3 and convert them to SRT, VTT, or LRC. Step-by-step guide covering yt-dlp, the JSON3 format, and free online conversion.