Home » Questions » Computers [ Ask a new question ]

How can I re-sync the subtitle and the video using VLC media player?

How can I re-sync the subtitle and the video using VLC media player?

When I play a movie with subtitles (on VLC media player), the text is often displayed too soon or too late. Is there a way to delay the starting point of the subtitles?

Asked by: Guest | Views: 93
Total answers/comments: 5
Guest [Entry]

"Open VLC media player.
Click the File Menu.
Click Open File.
Click Browse to Open the Movie.
Check the ""Use a subtitle file"" Box.
Click Browse to Open the Subtitle.
Click ""Advanced Settings""
Move the Delay into the minus if the subtitles are too fast. Move it into the positive if the subtitles are too slow.

You can also just press H and G while the video is running to align the subtitles backward and forward in time; for the voice use J and K. The increments are in milliseconds, so it can be pretty easily fine tuned that way.

Source

If you want to fix the subtitles 'for good', I recommend Subtitle Workshop; it's free."
Guest [Entry]

"By command-line is possible to use the option --sub-delay followed by the number positive or negative of 1/10 of seconds of delay to add. So to shift the subtitle of 3 second you can run vlc with the following command line

vlc --sub-delay 30 myfile.avi

In a similar way acts the option --sub-fps that override the normal fps.

--sub-fps Frame per second
Override the normal frames per second settings. This will only work
with MicroDVD and SubRIP (SRT) subtitles.

With VLC 3.0.0 there are some other option that can be useful (and almost self-explicative)

--sub-fps
--sub-delay
--sub-type
--sub-file
--sub-language
--sub-autodetect-file

More options maybe interesting:

--sub-description, --sub-autodetect-fuzzy --sub-autodetect-path --sub-margin
-sub-source --sub-filter --sub-track --sub-track-id

Specifically with subsdelay

--subsdelay-mode --subsdelay-factor --subsdelay-overlap
--subsdelay-min-alpha --subsdelay-min-stops --subsdelay-min-start-stop
--subsdelay-min-stop-start

For further information invoke vlc -H or check the online vlc user manual"
Guest [Entry]

"2017 VLC version 2.2.6

Open

Tools => Track Synchronization => Subtitle Track Synchronization

Here you can increase/decrease the speed."
Guest [Entry]

"With VLC for Mac (mine is v3.0.6),

Use the menu File > Advanced Open File ...;
In the prompt, select the File tab, and browse to your video file;
Check Add Subtitle File, then click Choose... to bring up the next prompt;
In that prompt, browse to your subtitle file;
Check Override parameters;
Set your delay in seconds in Delay. Minus values speed up subtitle and vice versa;
Hit OK then hit Open. The video either restarts or continues depending on your related settings in your Preferences;
If the delay is not quite there, repeat #1-7 with adjustments; if that still doesn't seem to work, then after resetting, close and reopen VLC.

One trick: Use big numbers at first, e.g., 20s, to test water, then fine-tune to close in on the actual delay."
Guest [Entry]

"Other answers are good temporary solutions, but...
To permanently fix the timing of subtitles:

Download the free Subtitle Workshop program.

Convert at least a little bit of your video to .avi or other formats it supports (not .mp4). For example, you could convert it with a program like Ffmpeg:
ffmpeg -i .\myMovie.mp4 -t 0:02:00 .\myMovie_cut.avi`

In Subtitle Workshop, open the video and the .srt subtitle file.

Use a stopwatch (such as an app on your phone) to time how far out of sync your subtitles are with the audio when you play the video.

Edit > Timings > Set Delay, set a positive or negative delay time, select the ""All subtitles"" radio button, Apply. (Thanks to this answer to How to accurately shift subtitles)"