5.3 Saving Subtitled QuickTime Movies

InqScribe makes it very simple to convert your transcript into a subtitle text track that becomes part of the QuickTime movie itself. This means that once you export a subtitled movie, anyone can play it -- in any application, including on the web -- and see your subtitles. Your audience does not have to have InqScribe.

See this Knowledge Base page for advice and tips for creating subtitled QuickTime movies.

5.3.1 Limitations

Note that QuickTime is required to generate subtitled movies. If you are using Windows Media Player to play back your media source, the Save Subtitled QuickTime Movie... menu item will be disabled.

iOS devices (iPhones, iPads, iPod Touches) will play QuickTime movies but will not display subtitles. The technique InqScribe uses to generate subtitles is simply not supported on iOS. We are exploring alternative methods to generate subtitles that are compatible with iOS.

5.3.2 Preparing Transcripts

Before exporting the subtitled movie, you should make sure that your transcript meets the following criteria:

  • Each "subtitle" in the transcript should be preceded by a timecode indicating when the text should appear in the movie. Note that each subtitle could actually be one or more lines of text.
  • Make sure that no single subtitle is too long. "Too long" is a relative term, of course, so just keep this in mind: InqScribe will automatically size the subtitle region to fit the largest single subtitle in your transcript. If you have one subtitle that's paragraphs long, this means your subtitle region may be significantly taller than your original movie!
  • Your subtitles appear in chronological order.
  • Avoid using square brackets like these [] except to surround timecodes. This isn't a hard and fast rule, so if you have good reason to want to use brackets, read the section below on bracket rules.

Here's a brief example of a prepared transcript.

Note that the line break after each timecode isn't required, but makes it a bit easier to see what's going on.

Text before the first timecode will be ignored.
[00:00.00]
Start here.

[00:05.00]
Five seconds later.

[00:10.00]
The end.

Any text that appears before the first timecode in your transcript will be ignored. This is a good place to store notes about the media that shouldn't be turned into subtitles.

You don't need a timecode at the very end of the movie; InqScribe will take care of this for you. In the above example, imagine the video is 12 seconds long. The final subtitle "The end." will appear 10 seconds in, and stay on screen until the video ends.

Note: If you are creating subtitles in a right-to-left language such as Hebrew or Arabic, make sure you keep timecodes and subtitle text on separate lines. This will reduce confusion about whether timecodes (which read left to right) precede or follow text (which read right to left) on the same line.

Bracket Rules

Using square brackets [] in your transcript must be done with care because QuickTime has its own set of parsing rules for converting text to a movie text track.

Basically, if you enclose any text within a pair of square brackets, when you go to export your subtitled movie, QuickTime may try to turn that text into a timecode. If it can't, it will complain, and then InqScribe will show you an error message like "Could not export the subtitled movie".

It seems that QuickTime's timecode parser looks for 1 or more colon-separated 'fields', surrounded by square brackets, where each field consists of 0-2 characters. Any such string that turns out to have a character that is not a number causes QT to abort.

These examples will all cause an error:

[a:]
[ss]
[:]
[ab:c]
[]

If any one of those fields has at least three characters, QT will not try to parse it and everything works.

[aaa:] <- works
[sss] <- works

Adding a space at the end seems to work as well, unless there's a space at the beginning. (QuickTime's parser is a little squirrely.)

[a: ] <- works
[ a:] <- fails
[ a: ] <- fails

5.3.3 Exporting Subtitles

Use the File > Save Subtitled QuickTime Movie... menu item to begin the export process.The export dialog gives you control over several aspects of the process. Note that InqScribe will remember your Subtitling settings on a per-document basis until you quit the application. This makes it a bit easier to experiment with different subtitle settings without having to change every setting every time you open the dialog.

By default, InqScribe will place your subtitles at the bottom of the movie. The subtitle region will be the same width as the movie, and as tall as necessary to fit the longest subtitle in your transcript. You can use the controls in the dialog to customize other aspects of the subtitles.

Script and Language

The Script section allows you to define the language and text encoding that is used for your subtitles. These choices are important because you want your subtitles to be legible to anyone who views your new movie, even if they use a different operating system or language than you do.

Setting the Language of your subtitle is important. The languages listed in the Language popup menu will change based on the value of the Script popup menu. If the Script menu is set to "Roman", for example, only languages that use the Roman script (English, French, etc.) will appear in the Languages popup menu.

Once you have set the Script and Language for your subtitles, your next choice is whether you want to use Unicode text encoding or not. The Use Unicode check box determines whether your subtitles will be stored using Unicode (technically, big-endian UTF-16) or will be stored using the encoding related to the script system you have selected.

Note: A good, slightly technical overview of text encoding and Unicode is here; the Unicode Consortium is another useful site to learn more about these issues.

Use these rules of thumb to decide whether or not you want to use Unicode or export text in the native script system.

  • If you are exporting subtitles for yourself, or for an small audience that you know has a very similar computing environment (same OS, same primary language), you can choose either approach.

  • Unicode encoded subtitles will display much more reliably cross-platform and for users of other languages. If you are at all concerned about reliable encoding, check Use Unicode.

  • The main instance in which you would explictly not use Unicode is if you want to take advantage of some of the QTText directives described in the Advanced Features section. Due to a limitation in QuickTime, Unicode encoded text ignores any QTText directives that are placed within the text itself.

  • Finally, if you try exporting subtitles in the native script system, and they look terrible, even on your machine, try checking Use Unicode. (For example, InqScribe can create Polish subtitles on Windows, but Windows users won't necessarily see those subtitles at all. Unicode-based subtitles, however, display Polish text properly regardless of Language settings.)

Note: If you use Unicode subtitles, you need to have QuickTime 6.5 or higher. Older versions of QuickTime do not handle Unicode properly, particularly on Windows.

Font

You can control the alignment, font, font size, font style, and text color of the subtitle text using the appropriate controls.

You also have control over the background for the subtitles. Normally, you can use the Custom Color control to choose a specific background color. You may also set the background to Transparent, which is useful when you are displaying the text directly on top of video.

You may also assign a custom drop shadow to your subtitles. Drop shadows add depth and are particularly useful for transparent backgrounds, because they help the text to "pop" out of the video.

Drop shadowed text has three properties. The Right and Down offsets refer to where, in pixels, the shadow is placed in relation to the text. Intensity refers to the strength of color of the drop shadow, and ranges from light to dark.

Position

You can control where subtitles appear relative to your movie using the Position popup menu. This menu has four "smart" settings and one customizable setting. Each of the settings is described here, along with an example case.

Selecting Above or Below places the subtitle above or below the movie. These choices will expand the overall size of the movie enough to include the subtitles. The subtitle region will be the width of the movie, and the height of the subtitle region will be set to fit the largest single subtitle in your transcript.

Above MovieBelow Movie
Examples of Above and Below.

Selecting Flush with Top or Flush with Bottom places the subtitle on top of the video itself, and aligns either the top edge or the bottom edge of the subtitle region with the corresponding edge of the movie. The subtitle region will be the width of the movie, and the height of the subtitle region will be set to fit the largest single subtitle in your transcript. These positions will not change the overall size of the movie unless you have a subtitle that is so long it forces the subtitle region to be taller than the movie itself.

Top of MovieBottom of Movie
Examples of Flush with Top and Flush with Bottom. These examples set Background to "Transparent" and use a Drop Shadow to improve legibility.

The above settings all act "smart" in that they will try to determine the height of your subtitles automatically. There are, however, some instances in which you may be better off setting explicit height values.

  • Your movies will be viewed on both Windows and Macintosh computers. Mac fonts tend to appear about a third larger than Windows fonts of the same point size. So if you create a movie on a Mac, when it is viewed on Windows, there will be extra space below the text. Conversely, if you create a movie on Windows, the text area may be too small to display all the text when viewed on a Mac.

  • You are exporting a non-Roman language using Unicode. In certain cases, QuickTime miscalculates the height of the text when using non-Roman languages. If you export subtitles and the height is obviously off, you will need to position the text region yourself.

You can use the Customize Position... button to explicitly define the location of your subtitles. This button opens a dialog box that lets you set precise Top, Left, Width, and Height values for the subtitle rectangle.

All coordinates in this dialog are relative to the movie's existing coordinate system. In most cases, the top, left of the movie is (0, 0), but there may be occasions where this is not the case.

Note that you have the option to set the height of the custom position to 0, in which case InqScribe will choose a height that fits the longest subtitle in your transcript. If you define a height other than 0, your defined height will be used, even if you have subtitles that do not fit in the defined space.

Boxed SubtitleSubtitles on the Side
Two examples of custom subtitle positions. The first places the subtitle within a small rectangle in the lower right of the video. The second moves the subtitle to the right of the video, providing additional room for longer transcripts.

The last element that affects the position of your subtitles in the Padding field. Padding refers to the number of pixels of extra space between the edge of the subtitle region and where the subtitle text is drawn. If you find that your subtitles appear too close to the edge of the movie for your taste, try increasing the padding.

Options

If you check the Save as Self-Contained Movie box, then the exported file will contain a copy of your original source movie and can be used anywhere. If this box is not checked, the exported file will contain a reference (or alias) to the original movie and will only work if the original movie is accessible.

Tip: Don't save as self-contained until you're happy with the appearance of the subtitles. Leaving this box unchecked is a great way to experiment with subtitle appearance, because the exported files are much, much smaller and can be created much faster.

If you check the Open Movie After Export box, then once you click the Export button, the newly created movie will automatically be opened in QuickTime Player (or whatever default application you use to view .mov files). This is handy for checking your work.

Target

Click the Save As... button to define the name and location for the exported movie. The location of the target file is shown to the right of the button; if you mouse over the location, the full path to the target file will be displayed.

Normally, InqScribe will be cautious and, if the target file already exists, ask you to confirm that you want to replace the file. If you'd rather not see this confirmation dialog, you can check the Replace Existing File Without Asking box.

Tip: A popular approach to creating subtitles is to check the Open Movie After Export and Replace Existing File Without Asking boxes, and then iterate, previewing your subtitles in QuickTime Player and refining export settings in InqScribe. If you do this, be sure to close the movie in QuickTime Player before re-exporting it from InqScribe. Otherwise, you will get an error because InqScribe can't replace a movie that's already open in another application.

The Save Temporary Text Files option, if checked, will save two intermediate QTText-formatted files. InqScribe generates these files as part of the process of creating your subtitled movie. Assuming you are saving your new subtitled movie as "subtitles.mov", the two files will be called "subtitles.mov_meas.txt" and "subtitles.mov.txt". (The first file is used to calculate the overall dimensions of the text track, and the second file is the one used to make your subtitles.)

Normally, these files are discarded, but you may want to inspect them if:

  • You want to create a text-only movie without an accompanying audio or video track. To do this, generate a subtitled movie while saving the temporary files. Throw away the movie. Then open “subtitles.mov.txt” (or whatever it’s called) directly in QuickTime Player. QuickTime Player will convert the text file to a movie, which you can then save.
  • You want to enhance your subtitles with special QTText directives. You can generate the QTText files and then edit them in your favorite text editor. When you’re ready, open the text file in QuickTime Player to convert it to a movie.
  • The subtitle creation process isn’t working and you want to troubleshoot. In this case it’s very useful to save these intermediate files and try to open them directly from within QuickTime Player. This will help isolate whether the problem lies within InqScribe or with the QuickTime’s ability to convert QTText files to a movie.

5.3.4 Advanced Features

QuickTime text tracks (on which InqScribe's subtitling is based) can be highly customized in ways that go beyond the settings of this dialog. If you want to take advantage of these features, you can insert QTText descriptors directly into your transcript.

For example, if you want to highlight a single word, you can mark up your transcript as follows.

The last two words will be {bold}bold faced{plain}.

Or, if you want to include an actual link to a URL within a subtitle, you can mark up your transcript like this:

Go see what {HREF:<http://www.inqscribe.com/>}InqScribe{ENDHREF} can do!

That's right, you can add clickable URLs to your movies!

Note that these advanced features will not work if you export subtitles with Use Unicode checked. This is due to a limitation in QuickTime.

It's worth noting that as of 2012, information about QTText descriptors has dropped off the web; Apple no longer maintains a page documenting them. We no longer recommend using the advanced features of QTText, in part because there's no documentation, but more importantly, because Apple does not appear committed to supporting QTText-based subtitles in the future. We are exploring alternative approaches for generating subtitled movies that may be viewed by the widest possible audience.