Audio and video · Independent · 22 Oct 2026

smacke/ffsubsync

Automagically synchronize subtitles with video.

← Audio and video
FFsubsync: subtitle synchroniser. Automatically aligns subtitle files with video audio.

In simple English

Movie subtitles often arrive slightly out of sync with the video. This tool fixes that problem automatically. It listens to the speech inside the video file. Then it slides the subtitle text back and forth until the words match what people are saying. You can run it on your own computer or right inside your web browser. It costs nothing and runs in under half a minute.

What it is

A command-line program and Python library that aligns subtitle files with video or audio streams. It converts both into simple speech timelines and matches them using fast mathematical algorithms.

What it is good for

Anyone who downloads a video and a subtitle file only to find the words appearing too early or too late.

Stars7.9k
LicenceMIT
Latest0.5.1 (2026-07-24)checked 22 Oct 2026
Last code change2026-07-24
Written inPython
Setup effort
2 / 5
Payoff
4 / 5
Good
  • Syncs subtitles in seconds without manual guesswork.
  • Works directly in your web browser with no installation needed.
  • Handles messy foreign character encodings automatically.
Watch for
  • Requires the FFmpeg (a command-line tool for converting audio and video) utility installed on your system first.
  • Advanced neural voice detection options need heavy extra downloads like PyTorch (a library for machine learning).
  • Fails on mid-file scene cuts unless you use special experimental flags.
Replaces

manual subtitle shifting in a media player

Works well with

VLC media player

Similar repositories
  • kaegi/alass1.5k stars

    A Rust-based subtitle synchroniser that uses dynamic programming to handle mid-file timing shifts.

  • pums974/srtsync68 stars

    A similar Python tool that uses WebRTC voice activity detection and Fast Fourier Transforms for alignment.

Also reviewed on Repo Radar
  • snapcast/snapcast8.0k stars

    A server and clients that play one audio stream in several rooms, kept in time with each other.

  • MusicPlayerDaemon/MPD2.8k stars

    A background music player with no interface of its own, controlled over a network by separate client programs.

  • AcademySoftwareFoundation/OpenTimelineIO2.0k stars

    An interchange format and library for editing timelines: the order and length of cuts, and references to the media, but not the media.

Install
brew install ffmpeg
pip install ffsubsync

Independent: reviewed for Repo Radar outside the daily editions. Every independent repository

On Stack Radar: Design & Creative › Video Creation & Editing › Captions & Subtitles.

Get the next edition in your inbox

A dozen repositories, opened and checked. The licence read, the last release dated, and the ones that did not make it named with the reason. It is the half most lists leave out.

No tracking pixels. One click to leave. The archive stays free either way.

We use your address to send the edition and nothing else. Confirm by email, leave in one click. How we handle it.