Skip to content
Mike Szymaniak edited this page Jun 24, 2020 · 4 revisions

How does it work?

SubSync is listening to the audio track of your movie, using speech recognition engine CMUSphinx to generate text transcription. It is then translated word-by-word using dictionary (for subtitles of different language). Next words are linked with similar words in your subtitles, creating synchronization points. This points are used to fix subtitles time codes.

Why don't you just generate subtitles from audio like YouTube?

Transcription done with speech recognition is very poor, most of the words are generated incorrectly. Unfortunately open source speech recognition engines are far from state of the art proprietary technology used by YouTube and other big players.

How bad it is? You could see for yourself: if you enable advanced debug options in settings, there will be "Dump reference words" button available in synchronization window.

SubSync is able to discard mismatched words, producing usable results, but it won't generate acceptable transcription.

Why it failed to synchronize my subtitles?

SubSync can only fix delay and pace, applying single correction to all subtitle lines. Not all subtitles can be synchronized this way. If part of your subtitles needs different delay that the rest, synchronization will fail. It won't work e.g. for director's cut movie and subtitles for theatrical version or video recorded with commercials in the middle with subtitles for content lacking it.

Other typical problems with synchronization could be:

  • languages set incorrectly, or not set at all,
  • mismatch characters encoding,
  • "max adjustment" not enough to cover biggest difference in subtitles.

Or it could fail simply because your subtitles are too difficult to fix with used algorithm.

Subtitles are synchronized, but it still working

Green tick box means initial synchronization is done. Save button becomes active, and you could try out produced subtitles. SubSync is still running, because not all data was yet processed. It still could yield better results. This way you could have your subtitles quickly but not at the expense of correctness.

Where is config stored on disk?

Configuration and assets downloaded from server are stored:

  1. Windows
  • config: %APPDATA%\subsync\subsync.json (typically C:\Users\<username>\subsync\subsync.json
  • assets: %ALLUSERSPROFILE%\subsync\assets (typically C:\ProgramData\subsync\assets)
  1. Linux
  • config: ~/.config/subsync/subsync.json
  • assets: ~/.config/subsync/assets
  1. Mac
  • config: ~/Library/Preferences/subsync/subsync.json
  • assets: ~/Library/Preferences/subsync/assets

Assets can be installed manually by extracting archives to asset directory.