Last week, our friends at the Participatory Culture Foundation put out a beta release of Universal Subtitles, an online tool that allows people to add subtitles to any video on the web.

Although it’s still in beta, Universal Subtitles looks really promising as it’s designed to work with videos already on the web. This means you can pull a video from Youtube or and add your own subtitle track. Once the first set of subtitles is complete you can add translations or ask others to submit a translation.

Universal Subtitles has one of the slicker interfaces I’ve seen for transcribing audio. It’s a three step process in which you 1) type in the transcription, 2) set the timing using a “guitar hero” style interface, and 3) review and share the subtitled video via embedding or social networks.

The tool is well laid out and easy to use, each step has a video tutorial which walks you through the process, not that it’s needed since everything is pretty intuitive. I tested it out on the first 25 seconds of one our videos, and it took about 5 minutes to go through the three stages.

One potential drawback is that the Universal Subtitles player uses Javascript to generate the embed code which can get messed up on some wysiwyg editors, including the one used to edit this blog. Overall it looks like a great tool that will make it much easier for people to translate videos. I’m looking forward to seeing what else the people at Universal Subtitles come up with. Some of the features in the pipeline include:

  • Ability to link multiple URLs to a video
  • Discussion spaces on every video and translation (‘talk’ pages)
  • Support on all modern web browsers
  • Caption -> subtitle conversion / options
  • Support for non-latin character sets
  • Machine translation option once subtitles have been transcribed
  • Keyboard accessbility for site and widget
  • Support for translating the interface of the subtitling tool and website
  • Subtitle ratings and flagging
  • Messaging among Universal Subtitles users
  • HTML5 embedding code that includes flash fallback options
  • Compliance with emerging timed text standards
  • Additional import / export subtitle formats


I spoke to Dean Jansen from Open Subtitles and learned that they’re working on a WordPress plugin which will hopefully fix the embed situation with their player. I also just got an email asking me to review some revisions made to my original subtitles.

Universal Subtitles Reviewing Screen
Revisions done by others to your subtitles can be reviewed side by side.

To learn more about Universal Subtitles, check out their demo at

16 thoughts on “Universal Subtitles: Open Source Subtitling for Web Video

  1. Just added Romanian translation!

    I was following the development of Open Subtitles for some time and I am very excited about the project!

  2. Just did a quick Spanish translation of the subtitles. Got turned on to Universal Subtitles yesterday and found this video which needs translating into as many languages as possible.

  3. Over the weekend someone came in and finished the subtitles for the video I started as an example. Thanks to user "abood" over at!

  4. Hi Bryan

    I took the liberty of completing the subtitling job of the video you embedded above and which you have already worked on. I would like you to check it out.

    I'm not sure if your comments moderation allows website addresses to be inserted in here, therefore, I will provide the normal link and lettered link.


    http colon slash slash universalsubtitles dot org slash videos slash ezhyEsZyuiYm slash

    Finally, please note that this is not spam and that I really completely subtitled the video above.


    1. @aboodilankaboot Great job with the subtitles! You even managed to get the all cap WITNESS down, as well as spelling Neyra's name correctly. Thanks again for taking the time to do such a thorough job!

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>