Hubbry Logo
SubRipSubRipMain
Open search
SubRip
Community hub
SubRip
logo
7 pages, 0 posts
0 subscribers
Be the first to start a discussion here.
Be the first to start a discussion here.
Contribute something
SubRip
SubRip
from Wikipedia
SubRip (software)
DevelopersBrain,[1] T.V. Zuggy,[2][3] mrSHADOW,[2] Yakov,[2] ai4spam,[2] Bloody,[2] Roy Damman,[4][5]
Initial release3 March 2000; 25 years ago (2000-03-03)[2]
Stable release
1.57.1 / November 14, 2018 (2018-11-14)[4]
Written inDelphi
Operating systemMicrosoft Windows
Available inEnglish
TypeSubtitle editor
LicenseGPL[3]
Websitezuggy.wz.cz[6][7]
SubRip Text (file format)
Filename extension
.srt
Internet media type
application/x-subrip[a]
Developed byBrain, Zuggy
Type of formatTimed text
Container forSubtitles and their order and timings
Extended toWebVTT
Open format?Yes
Free format?Yes

SubRip is a free software program for Microsoft Windows which extracts subtitles and their timings from various video formats to a text file. It is released under the GNU GPL.[8] Its subtitle format's file extension is .srt and is widely supported. Each .srt file is a human-readable file format where the subtitles are stored sequentially along with the timing information. Most subtitles distributed on the Internet are in this format.[9][10]

Software

[edit]

Using optical character recognition, SubRip can extract from live video, video files and DVDs, then record the extracted subtitles and timings as a Subrip format text file.[11] It can optionally save the recognized subtitles as bitmaps for later subtraction (erasure) from the source video.[12][13]

In practice, SubRip is configured with the correct codec for the video source, then trained by the user on the specific text area, fonts, styles,[14] colors and video processing requirements[15] to recognize subtitles. After trial and fine tuning, SubRip can automatically extract subtitles for the whole video source file during its playback. SubRip records the beginning and end times and text for each subtitle in the output text .srt file.[16]

SubRip uses AviSynth to extract video frames from source video, and can rip subtitles from all video files supported by that program.

Format

[edit]

The SubRip file format is described on the Matroska multimedia container format website as "perhaps the most basic of all subtitle formats."[17] SubRip (SubRip Text) files are named with the extension .srt, and contain formatted lines of plain text in groups separated by a blank line. Subtitles are numbered sequentially, starting at 1. The timecode format used is hours:minutes:seconds,milliseconds with time units fixed to two zero-padded digits and fractions fixed to three zero-padded digits (00:00:00,000). The comma (,) is used for fractional separator.

  1. A numeric counter identifying each sequential subtitle
  2. The time that the subtitle should appear on the screen, followed by --> and the time it should disappear
  3. Subtitle text itself on one or more lines
  4. A blank line containing no text, indicating the end of this subtitle[17]

Example for Star Wars: Episode II – Attack of the Clones:

1
00:02:16,612 --> 00:02:19,376
Senator, we're making
our final approach into Coruscant.

2
00:02:19,482 --> 00:02:21,609
Very good, Lieutenant.

3
00:03:13,336 --> 00:03:15,167
We made it.

4
00:03:18,608 --> 00:03:20,371
I guess I was wrong.

5
00:03:20,476 --> 00:03:22,671
There was no danger at all.

Markup

[edit]

Unofficially the format has very basic text formatting, which can be either interpreted or passed through for rendering depending on the processing application. Formatting is derived from HTML tags for bold, italic, underline and color:[18]

  • Bold – <b>…</b>
  • Italic – <i>…</i>
  • Underline – <u>…</u>
  • Font color – <font color="color name or #code">…</font>

Nested tags are allowed; some implementations prefer whole-line formatting only.

Also unofficially, text coordinates can be specified at the end of the timestamp line as X1:… X2:… Y1:… Y2:….[19]

Compatibility

[edit]

The SubRip .srt file format is supported by most software video players. For Windows software video players that do not support subtitle playback directly, the VSFilter DirectX filter displays SubRip and other subtitle formats.[20] The SubRip format is supported directly by many subtitle creation and editing tools,[21] as well as some hardware home media players.[22][23][24][25][26] In August 2008, YouTube added subtitle support to its Flash video player under the "Closed Captioning" option – content producers can upload subtitles in SubRip format.[27][28]

Text encoding

[edit]

SubRip's default output encoding is configured as Windows-1252. However, output options are also given for many Windows code pages as well Unicode encodings, such as UTF-8 and UTF-16, with or without byte order mark (BOM). Therefore, there is no official character encoding standard for .srt files, which means that any SubRip file parser must attempt to use Charset detection. Unicode BOMs are typically used to aid detection.

YouTube only supports UTF-8.[29] The default encoding for subtitle files in FFmpeg is UTF-8.[30] All text in a Matroska™ file is encoded in UTF-8. This means that mkvmerge has to convert every text file it reads as well as every text given on the command line from one character set into UTF-8.[31]

SubViewer

[edit]

In 1999, Brain created SubRip, and a friend, David Dolinski, created SubViewer, who offered it for download on his personal website.[32][33][34][35][36][37]

SubViewer was included in the DivX media player. On August 28, 2008, YouTube included support for SubViewer and SubRip, allowing existing videos to be retroactively subtitled.[33]

WebVTT

[edit]

A format originally called WebSRT (Web Subtitle Resource Tracks) was specified in 2010 by the Web Hypertext Application Technology Working Group for the proposed HTML5 <track> element. It shared the .srt file extension and was based on parts of the SubRip format, but was not fully compatible with it.[38][39] The prospective format was later renamed WebVTT (Web Video Text Track).[40][41] Google's Chrome and Microsoft's Internet Explorer 10 browsers were the first to support <track> tags with WebVTT files for HTML5 videos. Mozilla Firefox implemented WebVTT in its nightly builds (Firefox 24), and as of Firefox 31 (July 24, 2014), Mozilla enabled WebVTT on Firefox by default.[42] YouTube began supporting WebVTT in April, 2013.[43]

See also

[edit]

Notes

[edit]

References

[edit]
[edit]
Revisions and contributorsEdit on WikipediaRead on Wikipedia
from Grokipedia
SubRip is a text-based subtitle format, commonly identified by the .srt file extension, designed for embedding timed captions alongside video or audio content to enhance accessibility and comprehension. Originating from the SubRip software, it stores subtitles as plain text files with sequential entries that include numbering, start and end timestamps in the format HH:MM:SS,mmm, and the corresponding dialogue text, separated by blank lines for readability. This simple, human-readable structure supports up to 32 characters per line and basic HTML-like tags for formatting such as bold, italic, underline, and color, making it versatile for various media players. Developed as part of free, initially released on March 3, 2000, SubRip enables users to extract and their precise timings from DVDs, AVIs, and other video sources using (OCR) techniques, converting them into editable .srt files. Key early developers included , who created the original version 0.97b, and V. Zuggy (also known as ZuGGy), who continued its development, with later contributions from figures like Roy Damman, leading to the final stable release of version 1.57.1 on November 14, 2018. The software's primary purpose was to "rip" (extract) from DVDs without restrictions, supporting conversions from formats like VobSub (.sub/.idx) to .srt, and it remains available for download despite no longer being actively maintained. The .srt format's widespread adoption stems from its platform-agnostic compatibility, supported by most video players (e.g., VLC, ), streaming services like and , and social media platforms including and . It lacks formal or mandatory (though and are common), which contributes to its as a lightweight, licensing-free option for global content creators, but it also omits metadata like codes or positioning details. Notably, SubRip's influence extends to modern standards, serving as the foundational model for (.vtt), which adds advanced features like styling and regions for web-based video. Despite its age, .srt files continue to dominate subtitle usage due to their ease of creation, editing, and integration, promoting inclusivity for deaf or hard-of-hearing audiences and multilingual viewers worldwide.

Overview

Definition and Purpose

SubRip is a program for Windows that extracts and their associated timings from DVDs and other video sources, such as AVI files, using techniques like (OCR) and integration with tools like . Originally developed by V. Zuggy and , it serves as both a utility for subtitle ripping and the originator of the SRT (SubRip Text) file format, a simple plain-text standard with the .srt extension that stores sequential subtitle entries alongside timestamps in a human-readable structure. The core purpose of SubRip is to allow users to extract, edit, and synchronize subtitle data, thereby enabling customized offline video playback, enhancing for deaf and hard-of-hearing individuals through captioned content, and supporting workflows for multilingual adaptations of films and media. By converting embedded or image-based subtitles into editable text, the software addresses the need for flexible subtitle management in personal media libraries. SubRip emerged in the early amid the growth of DVD ripping communities in , where hobbyists and developers shared tools to bypass regional restrictions and customize video content for local languages and preferences. Over time, the SRT format it popularized has become a for subtitle distribution across media players and platforms.

Development History

SubRip originated in during the late 1990s as part of the burgeoning DVD ripping community, where developers sought tools to extract and repurpose media content amid the rise of decryption software like , released in 1999. The software was created by a French programmer known pseudonymously as "," who developed the initial versions to rip subtitles from DVD videos and save them as timed text files. Written in Borland Delphi, SubRip was released as , with its first public version appearing on March 3, 2000. Brain's development progressed through early iterations, culminating in version 0.97b, after which the source code was open-sourced under the GNU General Public License. This enabled community continuation, led by developer ZuGgy, who took over with version 0.98 and hosted the project on a personal website. Key milestones under ZuGgy included the introduction of (OCR) capabilities around 2002 in early beta releases (such as 0.3x series), allowing extraction from image-based via integration with tools like gOCR, and enhancements for advanced formatting support in subsequent updates, exemplified by version 0.21 in 2003. These features addressed the needs of users handling subtitles on DVDs, coinciding with the growing popularity of and AVI formats. By the mid-2000s, the SRT subtitle format generated by SubRip had emerged as a due to its plain-text simplicity, ease of editing, and broad compatibility with media players including VLC (which supported SRT from its early 2002 releases) and . The project's migration to in April 2006 facilitated further community contributions, with ZuGgy maintaining updates through version 1.50 series. Post-2010, official development slowed, with the last major release—version 1.57.1 by maintainer Roy Damman—occurring in 2018, focusing on bug fixes for file processing and encoding. Community efforts persisted through forks and related tools, such as , ensuring compatibility with modern video formats like MKV and MP4 into the . The SRT format's enduring influence is evident in its role as a foundation for web standards like .

Software

Core Features

SubRip's primary function is the extraction of from DVD files, enabling users to capture both text-based and image-based subtitles along with their precise timings. The software processes VOB streams directly, identifying subtitle tracks and converting them into editable text formats, which is essential for creating standalone subtitle files from protected or ripped DVD content. A key capability is its support for image-to-text conversion through (OCR), which analyzes subtitle images frame by frame to recognize and transcribe characters, particularly useful for DVDs with subtitles that cannot be extracted as . This feature, introduced in early versions of the software, relies on user-defined character mapping to improve accuracy across different fonts and styles. Editing tools within SubRip allow for fine-tuned adjustments, including using timestamps in the format HH:MM:SS,mmm to synchronize with video, direct text modification for corrections or translations, and automatic indexing to maintain sequential numbering. Users can export the processed to the SRT format or convert VOBSub (IDX/SUB) files to text-based equivalents, facilitating compatibility with various media players. For efficiency, SubRip includes to handle multiple subtitle tracks or files simultaneously, streamlining workflows for DVDs with several options or extended content. A dedicated displays with their timings and basic formatting, allowing real-time verification before final export. The software integrates with , a video scripting tool, to facilitate testing by into video previews or external players, ensuring alignment without full video re-encoding. Unique to its design, SubRip handles forced —those automatically displayed for key foreign dialogue—by treating them as selectable tracks during , while offering error correction mechanisms to fix timing discrepancies caused by OCR inaccuracies or stream irregularities. Multi-language support is achieved through track selection during extraction, accommodating DVDs with in various scripts and encodings.

Version History and Updates

SubRip's development commenced with version 0.5b, released on March 3, 2000, by the original author known as "The Brain," establishing core functionality for extracting from DVD files and exporting them in the initial SRT format. During the early versions from 0.5b to approximately 1.00b (2000–2003), the software emphasized basic DVD ripping capabilities, with incremental releases addressing essential bug fixes for timing accuracy, such as resolving processing slowdowns and subtitle flickering in version 1.081 (October 17, 2002). Key additions included IFO file reading for better subtitle detection (version 0.8b, August 13, 2000), SubViewer 2.x export support, space width detection to improve italic character recognition, and matrix auto-detection alongside processing optimizations that increased speed by 5–10% (version 0.96b, April 21, 2001). These updates laid the groundwork for reliable SRT export while expanding matrix capacity to 65,535 characters to handle more complex subtitle sets. The mid-period releases, spanning versions around 1.17 to 1.50 beta (2003–2006), introduced enhanced visualization and formatting options under the stewardship of developer T.V. Zuggy, including italic, bold, and underline rendering in the subtitle preview window (version 1.50 beta, January 5, 2006). Color support for subtitles was added, alongside GUI improvements like drag-and-drop in the subtitles window and SSA export with font specifications (version 1.17.1, June 29, 2003). OCR capabilities saw significant refinements for non-Latin scripts through community-contributed language files and matrix adjustments, reducing errors in character recognition for scripts like Greek and Russian. After 2006, official development slowed considerably amid growing legal scrutiny over DVD ripping tools, as circumventing copy protection on commercial discs violated provisions of the in the United States, deterring active maintenance by core developers. Despite this, sporadic community-driven updates persisted, with forks like those hosted on ensuring compatibility with through recompilation in . The final stable release, version 1.57.1 by Roy Damman on November 14, 2018, focused on bug fixes for file processing aborts, defaulted to encoding, added command-line options like /AUTOTEXT for automated text correction, and improved OCR engine stability without native Blu-ray or HEVC video integration. In the years following , no further official releases have emerged as of 2025, reflecting the tool's niche status amid evolving video standards, but ongoing repositories have sustained interest through Python-based ports of subtitle and editing logic, enabling bug fixes, cross-platform compatibility, and adaptations for modern workflows while preserving the original ethos. Although Python libraries like pysrt handle SRT , no direct ports of the original and OCR features exist; alternatives such as are recommended for current use.

File Format

Overall Structure

The SubRip Subtitle (SRT) file format is a plain text-based structure designed for storing timed subtitles, encoded in various text formats such as or , with no mandatory standard, to ensure broad compatibility and human readability. It organizes content as a sequential, numbered list of subtitle entries without any formal file header or embedded metadata, such as language codes or video framerate, requiring external synchronization with the associated media. This minimalist approach allows SRT files to be easily generated by tools like the original SubRip software and edited with standard text editors. Each subtitle entry follows a consistent block format: it begins with an integer sequential number (starting from 1) on its own line, followed immediately by a single timestamp line specifying the start and end times in the format HH:MM:SS,mmm --> HH:MM:SS,mmm, where HH represents hours (00-99), MM minutes (00-59), SS seconds (00-59), and mmm milliseconds (000-999). After the timestamp, one or more lines contain the actual subtitle text, which can include basic formatting like line breaks for multi-line displays but avoids complex markup. The entry concludes with a blank line (or multiple blank lines) to separate it from the next subtitle block, ensuring clear delineation in the file's linear sequence. SRT files adhere to conventions for readability and display optimization, recommending a maximum of 42 characters per text line to prevent overflow on typical screens, though implementations may support longer lines. Overall subtitle text per entry is not strictly capped by the format but is practically limited by platform guidelines, with most entries consisting of 1-2 lines to maintain synchronization and viewer comprehension. This structure prioritizes simplicity, enabling widespread use in video playback software while deferring advanced features like positioning or styling to player applications.

Markup and Timing Specifications

The timing specifications in SubRip (SRT) subtitle entries utilize a time-based format consisting of hours:minutes:seconds,s for both start and end times, separated by an indicator. Specifically, the structure follows HH:MM:SS,mmm --> HH:MM:SS,mmm, where HH ranges from 00 to 99, MM and SS from 00 to 59, and mmm from 000 to 999, providing millisecond precision; spaces are required around the arrow (-->). This format ensures synchronization with video playback independent of , though some tools may convert to or from frame-based timing for compatibility, with SRT itself prioritizing timecode accuracy over frame numbering like ,f notations used in other formats. Text markup in SRT entries employs simple HTML-like tags to apply formatting, including <b> for bold, <i> for italics, <u> for underline, and <font color="#RRGGBB"> for specifying text color in format (e.g., <font color="#FF0000">[red](/page/Red) text</font>). Line breaks within subtitle text are supported via <br> tags or natural characters (\n), allowing multiple lines per entry while maintaining readability. These tags are case-sensitive and must not be nested, as standard implementations do not support embedding one tag within another; support for rendering these tags varies by media player, with some treating unsupported markup as . Positioning features, such as vertical offset via non-standard tags like {y:i} (for top positioning) or {y:b} (for bottom), are commonly used in SRT files despite not being part of the core specification, often borrowed from Advanced SubStation Alpha (ASS) syntax for player-specific adjustments. Syntax rules emphasize sequential integrity, with each entry's timing strictly following the defined format; deviations, such as malformed timestamps, typically result in the entry being skipped by players without built-in validation or error correction schemas. Although SRT imposes no enforced limits on subtitle duration or line count in its format rules, practical guidelines recommend a maximum of two lines per entry and display durations not exceeding seven seconds to align with average reading speeds of 15 characters per second. Example of a formatted SRT entry:

1 00:00:01,000 --> 00:00:04,000 This is <b>bold</b> and <i>italic</i> text.<br> Second line in <font color="#00FF00">green</font>.

1 00:00:01,000 --> 00:00:04,000 This is <b>bold</b> and <i>italic</i> text.<br> Second line in <font color="#00FF00">green</font>.

This structure ensures concise, synchronized presentation across compatible platforms.

Compatibility and Usage

Platform Support

SRT files enjoy widespread native support across various media players and platforms, enabling seamless integration for subtitle display during video playback. VLC Media Player, a cross-platform open-source application, has included support for SRT subtitles since its early versions, allowing users to load external subtitle files directly through the interface. Similarly, Media Player Classic - Home Cinema (MPC-HC), a lightweight Windows-based player, natively handles SRT files, including automatic loading of accompanying subtitle tracks when file names match the video. Online platforms like YouTube also permit the upload of SRT files for video captions, a feature available to content creators to enhance accessibility and multilingual support. At the operating system level, SRT compatibility is facilitated through underlying multimedia frameworks. On Windows, architecture supports SRT rendering via filters such as DirectVobSub, which processes external subtitle files for playback in compatible applications. For macOS, while the built-in Player offers limited direct handling of SRT files, third-party software like VLC provides robust support, ensuring subtitles overlay correctly on videos. Mobile platforms further extend this reach: Android devices commonly use apps like VLC or for SRT playback, and equivalents such as nPlayer or Infuse enable similar functionality for local and streamed content. Streaming services integrate SRT for user-generated content; for instance, accepts SRT uploads, though platforms like require TTML for verified content providers' professional submissions, and end-user uploads for personal viewing are generally not supported. Tools for SRT manipulation and integration bolster its platform versatility. FFmpeg, a command-line framework, enables muxing SRT into container formats like MKV, preserving timing and text data for distribution. Authoring applications such as facilitate SRT creation and editing, with features for timing alignment and export directly to the format. Despite broad adoption, SRT files face certain limitations in hardware environments. Older DVD and Blu-ray players lack native decoder support for SRT, as they rely on embedded DVD subtitle streams rather than external text files, often necessitating software-based playback for any advanced formatting like positioning or styling.

Text Encoding Considerations

SubRip Subtitle (SRT) files traditionally rely on ASCII or Windows-1252 encoding as defaults, which limit support to basic Latin characters and cause display issues for non-Latin scripts, such as accented characters like "é" appearing as garbage (e.g., "é") when interpreted under mismatched encodings like Windows-1252 versus UTF-8. These limitations stem from early SRT implementations assuming Western European character sets, leading to mojibake—corrupted text—particularly in global contexts involving scripts like Cyrillic, Chinese, or Arabic. To ensure universal compatibility, encoding is recommended, often with a (BOM) to signal the charset to parsers, though the SRT specification lacks an explicit encoding declaration, resulting in variances among subtitle parsers that may default to local system encodings. The BOM (EF BB BF in hex) helps Windows-based tools detect reliably, but its presence can conflict with certain editors or players that misinterpret it as content, appending unwanted characters. Common problems include BOM-related conflicts in basic editors like , where UTF-8 files without BOM may save as ANSI, corrupting non-ASCII characters upon reopening, while files with BOM might display an extra invisible character or fail parsing in legacy software. Solutions involve conversion tools like iconv, which can transform files from legacy encodings (e.g., ISO-8859-1 to ) via commands such as iconv -f [WINDOWS-1252](/page/Windows-1252) -t [UTF-8](/page/UTF-8) input.srt > output.srt, preserving script integrity without BOM if desired. Early SubRip implementations assumed ANSI encodings, limiting non-Latin support, but became widely recommended in the mid-2000s and was natively added to SubRip in version 1.51 (2014), enabling full compatibility via , including features like emojis (e.g., ❤️ as U+2764 U+FE0F) and right-to-left (RTL) scripts such as when properly encoded and supported by the player. This progression aligns with broader adoption of standards, allowing SRT files to handle diverse linguistic needs without format alterations.

SubViewer Comparison

SubViewer, an earlier subtitle format using the .sub file extension, originated with the release of the SubViewer software in 1999 by developer David Dolinski, though its design roots trace to late-1990s efforts in DVD subtitle handling. This format predates the widespread adoption of SubRip (SRT) and served as a textual basis for extracting and displaying alongside video playback, primarily in ASCII encoding. Unlike SRT, SubViewer incorporates a structured header section, such as [INFORMATION], which includes metadata like [DELAY] specified in frames to account for framerate adjustments, along with fields for title, author, and comments, ending with [END INFORMATION]; SRT files, by contrast, contain no such header, relying instead on external video metadata for timing context. In terms of timing, SubViewer employs a simple [IN]/[OUT] notation without explicit labels, formatted as HH:MM:SS.CC (e.g., 00:01:00.10,00:02:00.20), where .CC denotes centiseconds, separating start and end times with a and blank lines between subtitle blocks. This contrasts with SRT's numbered entries and arrow-separated timestamps in HH:MM:SS,mmm format (e.g., 00:01:00,100 --> 00:02:00,200), which provide similar precision but integrate sequence numbers for easier . SubViewer's style capabilities further differentiate it, featuring dedicated sections like [COLF]&HFFFFFF for colors, [SIZE] for font scaling, and [FONT] for selection, enabling basic visual customization such as colored text or specific fonts—elements absent in SRT's plain-text minimalism. SubViewer 2.0 extends this with inline [br] tags for line breaks within single-line subtitles, while version 1 supports multi-line blocks, adding flexibility for formatted displays. Conversion between SubViewer and SRT is straightforward using tools like the original SubRip software or modern utilities such as , which import SubViewer's headers and styles (often stripping or approximating them) to generate SRT's simpler structure, facilitating compatibility with broader playback systems. Historically, SRT gained prominence over SubViewer in the early due to its streamlined design, which enhanced portability across platforms without requiring style interpretation, while SubViewer's richer metadata and formatting made it preferable for applications needing embedded visual cues, though this added complexity sometimes hindered universal adoption. SubViewer's advantages lie in its self-contained styling for enhanced readability in specialized players, whereas SRT's disadvantages in lacking native support for colors or fonts are offset by superior cross-compatibility and ease of editing in text editors.

WebVTT Evolution

WebVTT, or Web Video Text Tracks, emerged as a modern successor to the SubRip Subtitle (SRT) format, building on its cue-based design to support advanced web and streaming applications. Developed initially by the in 2010 and later standardized by the W3C, WebVTT provides a format for marking up external text tracks including captions, , descriptions, and chapters. Unlike SRT's basic structure, WebVTT introduces XML-like cue blocks and support for regions to group and position text, along with timestamps measured in milliseconds (equivalent to SRT's precision) for synchronization. Key enhancements in WebVTT include embedded metadata such as the "kind" attribute (e.g., kind=subtitles for dialogue or kind=captions for non-speech audio descriptions) and "voice" for speaker identification, enabling richer accessibility features. It also supports CSS styling for customization of fonts, colors, and layouts, along with alignment and positioning options like line offsets and text direction. These additions make WebVTT suitable for dynamic web environments, while maintaining backward compatibility with SRT through straightforward conversion tools that map cues and timings. WebVTT has been integrated as the standard for timed text in HTML5's Despite these advances, files tend to be larger than equivalent SRT files because of their verbose syntax and additional markup, which can impact loading times in bandwidth-sensitive scenarios. As a result, SRT continues to be favored for legacy offline applications and simple subtitle needs where minimal file size is prioritized.

References

Add your contribution
Related Hubs
Contribute something
User Avatar
No comments yet.