Subtitles in videos don't appear on iPad? I've searched around for an answer to this, but I can't seem to find it. Perhaps someone here can help?

I've created several M4V files through Handbrake from a DVD I own, and added them to iTunes. The episodes of the TV show appear OK, but the soft-coded subtitles I selected in Handbrake don't appear as an option when playing the episode on my iPad. But, if I open these same M4V files through VLC Player, the subtitles are there, and can be turned on and off.

If they're in the M4V file, why can't I enable these subtitles on my iPad? :(
As you discovered, DVDs often store subtitles in the VobSub format, which are images, not text. QuickTime and the iOS Video app only handle SRT/3GPP format text subtitles.

Using the very handy (and free) Subler, VobSubs can be converted to SRT subtitles and packaged in an MP4/M4V. It does this using OCR, but I've found the results to be quite accurate, since the source material is pretty clean.

If you need support for non-english subtitles, you need to go here and download the proper Tesseract language file, unzip it (so you have a .traineddata file), and place it in the Contents/Resources/tessdata folder in the Subler.app bundle.

Converting from VobSub to SRT with Subler


Open Subler, and create a new file.
Import your existing MP4/M4V (or MKV) file (File → Import → File…).
The import settings should be automatically set up properly, but make sure that the subtitle track's action is set to 3GPP Text, not Passthru.

Other tracks should be set to Passthru, unless you have audio in a format the MP4 container doesn't support (but this should have been taken care of by Handbrake).

Click Add.
Optional: Click on the subtitle track and change the Forced setting to All Samples Are Forced, if you need forced subtitles (i.e. always on, for foreign languages).
Optional: Add any metadata you might want. Subler has a nice auto-search option (File → Import → Search Metadata Online…).
Save the file. This should be relatively quick, since it's not transcoding any of the video or audio.