I'm using videojs in an HTML page to publish a video with VTT captions. Problem is: iPhones do not play the mp4 in the videojs player - it renders the full videojs player, but when you click the Play button, it opens the mp4 in it's native player (QT player, presumably). This is normal behaviour for video on iPhones - but at that point I lose my captions, which are inserted in the videojs player through css.
So I ran the MP4s through Handbrake with imported .srt files. In my local VLC player, the captions appear. But when I put the same files (MP4 + SRT) in the same directory on my web server, the subtitles do not appear on the video in iPhones. In fact, the subtitles - or any subtitles option - also do not appear in the native players of desktop Firefox, Chrome or IE 11 (which uses a QT plugin for video).
It's not a problem of coding (used UTF-8) or server configuration - if I insert two <tracks>
in the videojs <video>
element - one the vtt file, one the srt file - both play, together, in the videojs player.