I don't know about 'automatic', but in mpv[1] you have this:
> Ctrl+Shift+Left and Ctrl+Shift+Right
> Adjust subtitle delay so that the next or previous subtitle is displayed now. This is especially useful to sync subtitles to audio.
This works in 9/10 cases. :)
----