ffsubsync
Language-agnostic automatic synchronization of subtitles with video, so that subtitles are aligned to the correct starting point within the video.
Cost / License
- Free
- Open Source (MIT)
Platforms
- Windows
- Mac
- Linux
- Python
Features
- Subtitles and captions
- Add subtitles
- Srt
- Support for subtitles
- Synchronization
- Embed subtitles into video
- VLC
ffsubsync News & Activities
Recent activities
- LinuxDoge reviewed ffsubsync
fantastic piece of software! when getting subtitles from opensubtitles.com etc, they are often for a wrong framerate, another cut or just badly made by hand. This tool is technically overkill for fixing FPS, but it works for that! It works really well for aligning one .srt file to a reference file, which you can easily extract from a video using ffmpeg. Fast, efficient, just works.
- LinuxDoge liked ffsubsync
- niksavc liked ffsubsync
- K0RR added ffsubsync
- K0RR added ffsubsync as alternative to Subtitle Edit, Aegisub, SubTypo and Amara
- K0RR liked ffsubsync
ffsubsync information
What is ffsubsync?
Language-agnostic automatic synchronization of subtitles with video, so that subtitles are aligned to the correct starting point within the video.
Usage: ffs video.mp4 -i unsynchronized.srt -o synchronized.srt
How It Works:
- Discretize both the video file's audio stream and the subtitles into 10ms windows.
- For each 10ms window, determine whether that window contains speech. This is trivial to do for subtitles (we just determine whether any subtitle is "on" during each time window); for the audio stream, use an off-the-shelf voice activity detector (VAD) like the one built into webrtc.
- Now we have two binary strings: one for the subtitles, and one for the video. Try to align these strings by matching 0's with 0's and 1's with 1's. We score these alignments as (# video 1's matched w/ subtitle 1's) - (# video 1's matched with subtitle 0's).




Comments and Reviews
fantastic piece of software! when getting subtitles from opensubtitles.com etc, they are often for a wrong framerate, another cut or just badly made by hand. This tool is technically overkill for fixing FPS, but it works for that! It works really well for aligning one .srt file to a reference file, which you can easily extract from a video using ffmpeg. Fast, efficient, just works.