VLC is one of my favorite video tools. It's cross-platform, works with a multitude of file types and is loaded with options and features. One feature that is very useful is adding subtitles to your video project.
First off you need a finished video project sans subtitles. In my work environment, that usually means rendering video to MP4 for publication to Youtube using an NLE like Sony Vegas Pro. With rendered video in hand the only thing left is to create a subtitle file. For that I've had good results with subtitleeditor in Linux, but there are a lot of tools available. What I like about subtitleeditor is the ability to use a waveform for timings. Open the video, build an audio track, and start subtitling. Save the results as an SRT file and you're ready to move to VLC.
In VLC, I first go to simple settings (VLC—Tools—Preferences) and find the Subtitles/OSD tab. I change the Force Subtitle Position field to -20 px which positions the subtitles a little lower on the bottom of the screen. You can experiment with this based on your video. After making the change, I save the settings
Next I switch to advanced settings (VLC—Tools—Preferences; find the radio box at bottom left and switch show settings to All). Select from the left:
Video, expand the Subtitles/OSD entry and choose Text renderer
I suggest the following changes but you can experiment to find an optimal look for your project:
Force bold (checked)
Background Opacity: 100
Text default: Leave White
Background default: Leave Black
Now we are ready to re-render the video with subtitles. This will read your original MP4 as an input file, read your SRT file with its timings, and burn the subtitles into a new MP4 file. The result will be a smaller, subtitled file with the same quality as the original. In my test, I completed the second render in 10% of the time as the first render out of Sony.
(Add) The file name of your video file (MP4)
(Check) Use a subtitles file
(Browse) to the file name of your subtitles file (SRT)
Select: Media...Convert/Save; Click on downarrow;
...Key in Destination file
...Select tool icon from Settings—Profile
Select Subtitles tab
Check "Overlay subtitles on video"
Select 'Save' (this setting will be remembered for future renders)
Select 'Start' (I use the default H.264 + MP3) settings.
It is fast. A 30 render in Vegas with multiple m2ts file taking about 30 minutes, was re-rendered in 4 minutes and produced a 500MB MP4 file.