Captionator.js

No more excuses. Caption your online video today!

Download Captionator.js

0.5 Stable minified & production ready 0.5 Stable Unminified 0.6 CaptionPlanet development build

Enhance Your Video Accessibility with Captionator.js

In today's digital landscape, ensuring that your online videos are accessible to all audiences is paramount. Captionator.js is a powerful JavaScript polyfill designed to bridge the gap in HTML5 video captioning, enabling seamless integration of subtitles across various formats.

Seamless Integration with HTML5 Video

Captionator.js acts as a drop-in solution for your existing HTML5 video elements. By providing support for the <track> element and the TextTrack JavaScript API, it allows you to display subtitles in multiple formats, including SUB, SRT, YouTube's SBV, WebVTT, and Google's proposed timestamp syntax. This versatility ensures compatibility with a wide range of video content and platforms.

Future-Proof Compatibility

As web standards evolve, Captionator.js is committed to staying ahead. Future updates aim to support additional subtitle formats such as LRC, DFXP/TTML, and the WebVTT v2 proposed features. This forward-thinking approach ensures that your video content remains accessible as browser support for these standards becomes widespread.

Easy Implementation and Customization

Implementing Captionator.js is straightforward. Simply include the polyfill in your project, and it will automatically detect and enable <track> elements specified in your video markup. This ease of use allows you to focus on creating engaging content without worrying about complex coding requirements.

Moreover, Captionator.js provides a JavaScript API in line with the WHATWG's specification, offering flexibility for developers to create custom interfaces for selecting assistive or media enhancement tracks. This level of customization ensures that your video player aligns with your brand's unique requirements.

Commitment to Open Source and Community

As an open-source project, Captionator.js encourages community involvement. Developers can contribute to its growth by following the progress of the CaptionPlanet branch on GitHub. This collaborative approach fosters innovation and ensures that the tool continues to meet the evolving needs of the digital community.

In conclusion, Captionator.js is an essential tool for any developer or content creator looking to enhance the accessibility and reach of their video content. By integrating this polyfill, you ensure that your videos are inclusive, engaging, and future-ready.

Video Captioning in HTML5

At first glance, video captioning might not seem like a huge deal. Maybe it might appeal to you if you need to meet accessibility requirements in your workplace, or you're just doing it to be nice to people with hearing difficulties.

You're pretty far from the mark though. Yes, accessibility is an important driver for video captioning on the web. But it's about much more than ‘deaf people’ (and you should be providing quality captioning for them anyway!)

In addition to important accessibility benefits, captioning your video can allow automatically generated transcripts, text search-ability within videos (imagine what will be possible once Google supports crawling WebVTT!), chapter markers and powerful metadata capability, and much more! You could provide a track of time-specific comments on the video (the same way SoundCloud allows commenting on specific parts of audio) or even a live twitter feed on your video (similar in style to the ABC'S Q&A program.)

“Alright!”, you say. “I'm convinced. How does HTML5 allow me to caption my video?”

For a while, there wasn't an easy way to do it. Guys like Bruce Lawson were coming up with creative ways (if a little hacky) to implement support, in lieu of a proper standard.

Now, however, there's a really nice way to provide support - the HTML5 <track> element and its associated JavaScript API. There's a slight catch though. No currently shipping browser supports either of these features/standards. They will soon - Webkit has support in development, and Firefox can now parse the <track> element (but can't do anything with it yet.)

But you want to caption your HTML5 video now. And for that, you need Captionator.js.

Captionator.js

Captionator.js is a JavaScript polyfill designed to provide support for the <track> element and TextTrack javascript API. It currently supports subtitles in SUB, SRT, Youtube's SBV, WebVTT, and WebVTT with Google's proposed timestamp syntax. It will soon support LRC, DFXP/TTML and the WebVTT v2 proposed features.

Like most polyfills, it's intended to be a drop-in addition to your existing HTML5 video (and/or custom player) and provides a JavaScript API in line with the WHATWG's specification. This makes it easy to write your own interface for allowing the user to select assistive or media enhancement tracks, and when browsers land support for the feature, it'll move out of the way and let the browser take over (and you won't have to change a line of code!)

Captionator.js will automatically detect and enable <track> elements specified in markup - it's a totally painless solution! See the Captionator.js documentation to get started!

Captionator.js Out & About

CaptionPlanet

CaptionCrunch, the old development release, is now stable!

CaptionPlanet is the next stage frontier in the Captionator.js roadmap. At this stage, intended to be the 0.6 release milestone, the goal for CaptionPlanet is performance, compatibility, better testing, and broader format support.

Some things which slipped from the 0.5 CaptionCrunch release (in the interests of getting the new Captionator.js WebVTT renderer out the door) will be delivered in CaptionPlanet instead, namely:

This release is slightly less ambitious than 0.5 CaptionCrunch, but every bit as important.

As Captionator.js is an open source project, you can see all these new features come to fruition in real time by following progress of the CaptionPlanet branch on github! Just be aware that things might not always be pretty, or even work.