Skip to content

Using Aegisub and GitHub to edit and collaborate on .srt files

Drew Neil edited this page Mar 28, 2015 · 5 revisions

This document introduces some of the tools that we use for creating and editing captions collaboratively.

We use Aegisub to create and edit .srt files, and we use GitHub to collaborate together on captioning work.

Introducing Aegisub

Aegisub is a free, cross-platform open source tool for creating and modifying subtitles.

Aegisub has its own native file format, which uses the (slightly unfortunate) .ass suffix. If you create subtitles in the .ass format, you can export them to other subtitle file formats, including .srt (SubRip Text) files.

You can also open .srt files in Aegisub. Having opened an .srt file, you can make changes and save them, and Aegisub will write the changes in .srt format. This workflow makes it possible to work directly with .srt files, without having to mess around with .ass files and exporting them to .srt format.

Introducing GitHub

GitHub provides the tools to allow two or more people to work on the same file at the same time. For example, one person could be transcribing captions, while another proof-reads them and makes corrections.

If two people make changes to different parts of the same file, their changes can be merged together simply. (On the other hand, if two people change the same part of a file, merging can cause a conflict which needs resolved. That can complicate matters a little, but it's not hard to deal with).

You can interact with GitHub in two different ways:

  • using the GitHub app (or another git client)
  • using the github.com website

The GitHub app lets you commit changes to your local git repository (sometimes called the 'working copy'). The github.com website lets you browse the shared repository, where everybody's changes come together.

Outline of workflow

  • ensure that Aegisub is not running
  • synchronise changes from github.com to local repository
  • open the .srt file in Aegisub, and load the video
  • make changes
  • save the .srt file
  • commit changes using the GitHub app
  • synchronise changes from local repository to github.com

When to save, commit, and sync

  • save changes in Aegisub every 5 minutes (or more!)
  • commit changes into local github repository every 1 hour (whenever you take a break)
  • synchronise your changes to GitHub.com at the end of each day