Skip to content

SMI to VTT Subtitle Converter

Transform SAMI subtitle files into WebVTT format for modern web video players and platforms.

Drag & drop your SMI file here

or click to browse

Supports .smi, .sami, .html files up to 50 MB

Core Engine Architecture

Free Online SMI to VTT Converter

Our SMI to VTT converter takes Microsoft SAMI subtitle files and produces W3C-compliant WebVTT for web video. SAMI uses HTML-like SYNC elements with millisecond timing offsets and CSS styling, while VTT uses the WEBVTT header with HH:MM:SS.mmm timestamps. This tool parses the SAMI HTML structure, strips all markup, extracts subtitle text, converts timing to VTT format, and adds the mandatory WEBVTT header. The result works in HTML5 video, YouTube, and JavaScript video players.

Payload & Syntax Inspector

SMI to VTT Code Syntax & Structure Inspection

Side-by-side code inspection illustrating header definitions, timestamp syntax, and cue payload formatting

Millisecond Sync
input.smi
SMI SOURCE
<SAMI>
<BODY>
<SYNC Start=1000><P Class=ENCC>Hello, world!</P>
<SYNC Start=4000><P Class=ENCC>&nbsp;</P>
<SYNC Start=4500><P Class=ENCC>This is a subtitle file.</P>
<SYNC Start=8000><P Class=ENCC>&nbsp;</P>
<SYNC Start=8500><P Class=ENCC>Converted locally!</P>
<SYNC Start=12000><P Class=ENCC>&nbsp;</P>
</BODY>
</SAMI>
output.vtt
VTT RESULT
WEBVTT
 
00:00:01.000 --> 00:00:04.000
Hello, world!
 
00:00:04.500 --> 00:00:08.000
This is a subtitle file.
 
00:00:08.500 --> 00:00:12.000
Converted locally!
Specification Sheet

SMI vs VTT Technical Specifications

Standard Compliant
Input Format

SMI

SMI

SMI (SAMI, Synchronized Accessible Media Interchange) is a subtitle format developed by Microsoft for Windows Media Player. SAMI files use an HTML-like structure where each subtitle entry is enclosed in SYNC elements, with a Start attribute giving the display time in milliseconds. The format supports CSS styling, multiple language tracks via CLASS attributes, and metadata in the document head. SAMI is still found on Korean video platforms, older media archives, and educational content.

Output Format

VTT

VTT

VTT (WebVTT) is the W3C standard subtitle format for web video. A VTT file starts with the literal header WEBVTT on the first line, followed by cue blocks using HH:MM:SS.mmm --> HH:MM:SS.mmm timestamps (period before milliseconds). VTT supports optional cue settings (positioning, alignment, sizing), inline styling tags, NOTE comments, and CSS blocks.

Format Differences

SAMI uses HTML SYNC elements; VTT uses WEBVTT header with cue blocks.
SAMI stores timing as millisecond offsets; VTT uses HH:MM:SS.mmm timestamps.
SAMI uses CSS classes for styling; VTT supports inline styling tags and CSS blocks.
SAMI wraps text in HTML tags; VTT stores text in cue blocks without HTML wrapping.
SAMI supports multiple language tracks via CLASS; VTT uses separate files per language.
SAMI requires an HTML parser; VTT is a simpler text-based format.

Conversion Troubleshooting & Gotchas

Practical solutions for player compatibility, character encoding, and timing synchronization

4 Common Gotchas
GOTCHA #1

Subtitle timing drifts or appears out of sync on media players

Video files frequently differ in framerate (e.g., 23.976 fps vs 25 fps). If the timing drifts steadily, use our Subtitle Sync tool to adjust the global offset or framerate stretch.

GOTCHA #2

Characters appear as garbled symbols or question marks (Mojibake)

Legacy files saved in Windows-1252, Shift-JIS, or GBK may render incorrectly. Our exporter standardizes output to clean UTF-8. Use our Subtitle Encoding Converter if the source file is corrupted.

GOTCHA #3

Overlapping captions when multiple speakers talk simultaneously

Different formats handle overlapping dialogue differently. If your target player cannot render stacked cues cleanly, open the file in our Subtitle Editor to adjust individual cue timings.

GOTCHA #4

Video editing software (Premiere, DaVinci, Final Cut) rejects the file

Professional NLE software enforces strict syntax rules. Our converter eliminates malformed line breaks and non-standard tags, producing clean, standardized files.

Features

Parses SAMI HTML structure and extracts subtitle text from SYNC elements
Adds the mandatory WEBVTT header as the first line
Converts SAMI millisecond offsets to VTT HH:MM:SS.mmm timestamps
Strips HTML tags, CSS classes, and styling markup
Reads SYNC blocks without requiring a selected language class
Outputs valid VTT for YouTube, Vimeo, Video.js, and HTML5 browsers

Why Convert?

SAMI (SMI) subtitles were built for legacy Windows Media Player and do not work in any modern HTML5 browser without conversion to VTT.
SMI files embed HTML and CSS within a <SAMI> tag structure that browsers cannot natively render, but VTT is the web video standard.
Korean broadcasting archives often store subtitles in SMI format; converting to VTT makes them playable on web streaming platforms.
HTML5 video supports web-compatible caption formats such as VTT, while SMI is not recognized natively by current browser engines.
Converting SMI to VTT removes the HTML wrapper and produces clean cue blocks that work with Video.js, Plyr, and native HTML5 players.
SMI timestamps use a single start time per cue with implied duration, while VTT records explicit start and end for precise control.
Educational and corporate video platforms commonly accept VTT and may not accept legacy SMI uploads.
Scenarios

Common Use Cases

Korean Platform to Web

Convert SMI subtitles from Korean video platforms into VTT for HTML5 video embedding on websites targeting international audiences.

YouTube Caption Upload

Transform SAMI subtitles into VTT files that YouTube Studio accepts for caption uploads.

E-Learning Subtitles

Convert SAMI subtitles from older educational content into VTT for e-learning platforms that accept WebVTT.

JavaScript Player Integration

Load SAMI-originated subtitles as VTT in Video.js, Plyr, or JW Player for web-based video streaming.

Legacy Content Web Migration

Move old Windows Media Player SAMI subtitles to modern web video by converting to VTT.

Multi-Platform Distribution

Produce VTT (for web) alongside SRT (for devices) from SAMI source files for broad compatibility.

Format Ecosystem

Related Formats

SMI (SAMI)

The input format: HTML-based Microsoft subtitle format with SYNC elements.

SRT (SubRip)

The universal alternative: if your target is smart TVs or desktop players, convert SMI to SRT.

SCC (Scenarist Closed Captioning)

The broadcast alternative: for caption delivery to television platforms.

How It Works

  1. 1

    Upload your .smi file by dragging it into the converter or browsing.

  2. 2

    The parser reads the HTML structure and identifies each SYNC element.

  3. 3

    Subtitle text is extracted, with all HTML markup stripped.

  4. 4

    Millisecond Start values are converted to VTT HH:MM:SS.mmm timestamp format.

  5. 5

    The WEBVTT header is prepended, producing a valid .vtt file for web video.

Frequently Asked Questions

VTT is the standard choice for HTML5 track elements and is widely supported by web video platforms and JavaScript players. Use SRT for smart TVs and desktop media players.

SAMI stores timing as millisecond offsets in Start attributes. The converter transforms these into VTT HH:MM:SS.mmm format. End times come from the next SYNC element; the final cue receives a three-second fallback duration.

Yes, it is free with no registration or watermarks. Each file can be up to 50 MB.

Yes. The converter always adds WEBVTT as the first line of the output.

SAMI CSS styling is removed. VTT supports its own styling mechanisms (inline tags, CSS blocks), but the converter outputs plain text cues. Add VTT styling manually if needed.

Yes. The converter is fully responsive.

Ready to convert your subtitles?

Drop your SMI file here and convert to VTT instantly.