TwinSubs is a user-friendly GUI application designed to merge two subtitle tracks into a single, stylized bilingual ASS subtitle track.
Designed primarily for language learners, TwinSubs helps you master new languages by allowing you to watch videos with both the original language and your native translation displayed simultaneously. With advanced styling options, you can emphasize your target language while using the translation as a subtle secondary reference, making it the perfect tool for immersive language study.
Warning: TwinSubs is currently in active development. A functional portable release (Windows/macOS/Linux) is not yet available.
- Bilingual Fusion: Merge two distinct subtitle tracks into one.
- Advanced Styling: Generate ASS (Advanced SubStation Alpha) files with customizable fonts, colors, and positioning for each language.
- Media Support: Native support for MKV and MP4 files.
- Easy Processing: Drag-and-drop interface with batch processing capabilities for folders.
- Flexible Output: Generate external
.assfiles or embed them directly into MKV containers via remuxing. - User-Friendly: No command-line knowledge required.
TwinSubs is built with Java 21 and JavaFX.
- Java 21+ (JDK 21) installed on your machine.
- FFmpeg & FFprobe: Must be installed and available in your system
PATH.- macOS:
brew install ffmpeg - Linux:
sudo apt install ffmpeg - Windows: Install via ffmpeg.org or
winget install FFmpeg.
- macOS:
Clone the repository and run the following Maven command:
mvn clean javafx:runTwinSubs is currently in its V0 stage.
Coming soon: Future releases will provide portable builds (Windows, macOS, Linux). These releases will bundle FFmpeg and the JRE/JDK, ensuring a 100% "plug-and-play" experience for end-users, requiring no external installation.
TwinSubs V0 focuses on a robust temporal matching algorithm:
- Extraction: Uses FFmpeg to extract subtitle streams.
- Parsing: Converts SRT streams into a unified domain model.
- Matching: Aligns tracks based on temporal overlap.
- Rendering: Generates a bilingual ASS file with custom-defined layout and styles.
TwinSubs is open source and 100% free to use.
