Add custom SRT subtitle files to Netflix with advanced timing controls and styling options
A powerful browser extension that allows you to load your own subtitle files (SRT format) into Netflix, with full control over timing, appearance, and positioning. Perfect for watching content in languages not officially supported by Netflix, or for using community-created subtitles.
- 📄 Load Custom SRT Files - Upload any .srt subtitle file
- ⏱️ Advanced Timing Controls - Fine-tune subtitle sync with ±0.1s precision
- 🎨 Customizable Appearance - Adjust font size, colors, background, and shadows
- 💾 Smart Persistence - Remembers your settings and delay per video
- 🌐 Multi-language Support - Full Unicode support including Sinhala, Arabic, Chinese, etc.
- ⌨️ Keyboard Shortcuts - Quick access to common controls
- Per-video delay memory
- Real-time subtitle preview
- Settings export/import
- Multiple position options (top, middle, bottom)
- Customizable background opacity
- Text shadow controls
- Auto-load last subtitle (optional)
-
Download the Extension
git clone https://github.com/yourusername/subflix.git cd subflix -
Generate Icons (choose one method):
# Using shell script (requires ImageMagick, rsvg-convert, or Inkscape) ./create-placeholder-icons.sh # OR using Python (requires Pillow) python3 create-icons.py
-
Load in Browser
- Open Chrome and go to
chrome://extensions/ - Enable "Developer mode" (toggle in top-right)
- Click "Load unpacked"
- Select the
SubFlixfolder
- Open Chrome and go to
-
Download and prepare (same as above)
-
Load in Firefox
- Open Firefox and go to
about:debugging#/runtime/this-firefox - Click "Load Temporary Add-on"
- Navigate to the
SubFlixfolder - Select
manifest-v2.json
- Open Firefox and go to
Note: In Firefox, the extension will be removed when you close the browser. For permanent installation, you'll need to sign it through Firefox Add-ons.
-
Open Netflix and start playing any video
-
Click the SubFlix extension icon in your browser toolbar
-
Upload a subtitle file:
- Click "Upload Subtitle" button
- Select your
.srtfile - Wait for confirmation
-
Adjust timing (if needed):
- Use the timing buttons to sync subtitles
-5sto-0.1sfor early subtitles+0.1sto+5sfor late subtitles
-
Customize appearance (optional):
- Adjust font size
- Change background opacity
- Modify text color
- Toggle shadows
| Shortcut | Action |
|---|---|
Ctrl+Shift+S |
Toggle subtitles on/off |
Ctrl+→ |
Delay +0.5s |
Ctrl+← |
Delay -0.5s |
Ctrl+↑ |
Increase font size |
Ctrl+↓ |
Decrease font size |
Ctrl+0 |
Reset delay to 0 |
Note: Use Cmd instead of Ctrl on macOS
SubFlix supports standard SRT (SubRip) format:
1
00:00:01,000 --> 00:00:04,000
First subtitle line
Can be multiple lines
2
00:00:05,000 --> 00:00:08,000
Second subtitle- Sequential numbering (1, 2, 3...)
- Timestamp format:
HH:MM:SS,mmm --> HH:MM:SS,mmm - Text content (can be multi-line)
- Empty line between subtitles
Popular sources:
- OpenSubtitles.org
- Subscene
- YIFY Subtitles
- Community forums and fan translations
| Setting | Description | Default |
|---|---|---|
| Extension Toggle | Enable/disable subtitles | ON |
| Font Size | Subtitle text size (12-48px) | 24px |
| Background | Subtitle background style | Opaque |
| Background Opacity | Background transparency | 85% |
| Text Color | Subtitle text color | White (#FFFFFF) |
| Shadow | Enable text shadow for better readability | ON |
| Shadow Strength | Shadow intensity | 90% |
| Position | Where to show subtitles (top/middle/bottom) | Bottom |
| Vertical Offset | Distance from edge (0-200px) | 80px |
| Auto-load Last | Automatically load last used subtitle | OFF |
| Remember Delay per Video | Save timing offset for each video | ON |
- Export: Click "Export" in Advanced Settings to save current configuration
- Import: Click "Import" and select a previously exported JSON file
- ✅ Check that the extension is enabled (toggle switch in popup)
- ✅ Verify subtitle file was uploaded successfully
- ✅ Ensure you're on a Netflix video page (not browse page)
- ✅ Try refreshing the Netflix page
- ✅ Check browser console for errors (F12 → Console tab)
- Use the timing controls to adjust
- Large adjustments: ±1s or ±5s buttons
- Fine adjustments: ±0.1s buttons
- The offset will be remembered for this video (if enabled)
- Make sure you downloaded the correct subtitle file
- Check that the subtitle file matches the episode/movie
- Verify the subtitle language in the file
- Make sure you generated the icon files (see Installation)
- Check for errors in
chrome://extensions/ - Try reloading the extension
- Check that manifest.json is valid
- Maximum file size: 5MB
- Only
.srtfiles are supported - Check that the file is valid SRT format
- Try opening the file in a text editor to verify format
SubFlix/
├── manifest.json # Chrome V3 manifest
├── manifest-v2.json # Firefox V2 manifest
├── popup/
│ ├── popup.html # Extension UI
│ ├── popup.css # UI styles
│ └── popup.js # UI logic
├── content/
│ ├── content.js # Netflix integration
│ ├── subtitle-engine.js # SRT parser & sync
│ └── overlay.js # Subtitle display
├── background/
│ └── background.js # Service worker
├── lib/
│ ├── storage.js # Storage helpers
│ └── utils.js # Utilities
└── assets/
├── icons/ # Extension icons
└── styles/ # Additional CSS
# Clone repository
git clone https://github.com/yourusername/subflix.git
cd subflix
# Generate icons
./create-placeholder-icons.sh
# or
python3 create-icons.py
# Load in browser (see Installation section)Contributions are welcome! Please:
- Fork the repository
- Create a feature branch (
git checkout -b feature/amazing-feature) - Commit your changes (
git commit -m 'Add amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
- Netflix's UI updates may occasionally hide the subtitle overlay (refresh page to fix)
- Very long subtitle lines may require manual line breaks in the SRT file
- Fullscreen mode on some systems may require position adjustment
Q: Is this legal? A: Yes. The extension only displays subtitle files you provide. Ensure you have the right to use any subtitle files you download.
Q: Does this work with Netflix's existing subtitles? A: SubFlix adds custom subtitles on top of the video. You can disable Netflix's built-in subtitles for a cleaner experience.
Q: Can I use this with other streaming services? A: Currently, SubFlix is designed specifically for Netflix. Support for other platforms may be added in the future.
Q: Will Netflix detect this extension? A: The extension only adds visual overlays to your browser. It doesn't modify Netflix's code or violate their terms of service.
Q: Can I use multiple subtitle files at once? A: Not in the current version. This feature is planned for a future release.
Q: Does this work on mobile? A: No, browser extensions are not supported on mobile Netflix apps. Desktop browsers only.
This project is licensed under the MIT License - see the LICENSE file for details.
- Netflix Sans font rendering
- SRT subtitle format specification
- Community subtitle contributors
- Open source browser extension ecosystem
- Issues: GitHub Issues
- Discussions: GitHub Discussions
- Auto-download subtitles from OpenSubtitles API
- Support for ASS/SSA subtitle formats
- Multiple simultaneous subtitle tracks
- Subtitle editor within extension
- Cloud sync for subtitle library
- Support for other streaming platforms
- Subtitle search by movie/show name
- Better Netflix UI integration
Made with ❤️ for subtitle enthusiasts worldwide
SubFlix is not affiliated with Netflix, Inc.