WebVTT is quite a powerful format. It has been developed to transport timed data chunks, including captions, subtitles, video descriptions, chapters, and in fact any chunk of data that cues up with a time segment of a media element.
The support of WebVTT in <track> elements in browsers is coming along nicely – Safari has released it, IE10, Opera and Chrome have previews and will release it in their next versions, and the Firefox community is also highly active.
As can be expected, support of WebVTT in media transport formats is taking a bit longer to specify and implement. However, we are already seeing specifications for these formats, even though at the time of writing of this article, as far as we know, there are no implementations of any of these specifications yet.
- WebVTT in WebM was the first specification for encapsulating WebVTT in a media container.
- WebVTT in Apple’s HTTP Live Streaming has been published just recently and details how to use WebVTT for captions with m3u8. While it right now covers plain cues only and no CSS styling, it is the first format to show how HTTP adaptive streaming formats can make use of WebVTT.
Other formats where we heard that work is happening, but no public specifications have been made available yet include WebVTT in MP4 containers, WebVTT in Ogg, and WebVTT in MPEG DASH.