I have been looking around for a way to easily incorporate video and an external subtitles file into a single file that will allow me to simply use a video player to view the video with the option to turn the subtitles on.
After some researching, it appears that there is a standard for including subtitles within MPEG-4 video files called MPEG-4 Part 17, or MPEG-4 Timed Text.
If you use software such as MP4Box, you can import DivX/XviD encoded video along with an external subtitle file such as SRT into a single MP4 container file. Note: importing a video at it’s original quality level is not the same as re-encoding it into MPEG which would lead to some visual quality loss.
Now the trick is finding a video player that will be able to allow me to turn on the subtitles which watching the video. The VLC media player (available for just about every platform out there), which can play just about anything you can throw at it, should be able to display the subtitles.
*** Update 1/17/06 ***
MP4Box did produce a MP4 file that was playable by VLC player and shows the subtitles, however, this same MP4 file didn’t work at all within QuickTime 7.1 (even after accounting for the bug that the MP4 file should be renamed with an .3GP extension so that QuickTime can show the subtitles). Windows Media Player was able to play the video but was unable to show the subtitles.