Working with Captions
There can only be one caption at any time code.
At the top level, there are Language Tracks. Language tracks allow having captions for different languages (or different target word per minute rates or caption types) have their own caption text. (Caption data share the speaker and time properties).
There is also a Speakers array. Caption data has indexes to this array.
A caption has the following properties:
In the Caption List, caption properties for only one Language Track are shown. You can select the current Language Track using the Language Track combo box at the top of the list.
- Time: The timestamp for the caption data.
- Speaker: Index to the Speaker in Speakers array.
- Text: The text for the caption for each language track.
Captionate allows you to have a different caption text for each Language track. Though the name is 'Language Track', you can use Language Tracks to have different type of captions for the same language (for example normal subtitles or captions for the deaf and hard of hearing, or with different target wpm rates).
When Captionate opens an FLV file without any Language Tracks defined, a track named 'default' is created for you. If you won't be having multiple tracks, you don't need to add new tracks - you can just edit the properties of the default track.
You can define as many Language Tracks as you like. A language track has the following properties:
You can manage the Language Tracks using the Manage Language Tracks Dialog. Also Captionate has buttons for adding, editing and deleting the current selected Language Track near the Language Track combo box.
- Display name (string): Can be any text you enter. Intended to be the text shown to the user for selecting the track.
- Type (string): Can be any text you enter. Intended for the 'type' of the track that can be programmatically queried. (You can modify the default values you can select by editing the 'TrackTypes.txt' file in the Captionate folder).
- Language code (string): Can be any string. Intended for a language code for the track that can be programmatically queried. (You can modify the default values you can select by editing the 'LanguageCodes.txt' file in the Captionate folder).
- Target wpm rate: Target words per minute rate for the track. Captionate shows you the current wpm for each caption in the captions list.
- String Data (string): Can be any text you enter. Usage depends on the player code. For example you can have style code here, or simply use the field for any other information about the track.
Each caption stores an index to the speakers array. If you won't be specifying speakers for captions, you don't need to define any speaker.
You can define as many Speakers as you like. A Speaker has the following properties:
You can manage the Speakers using the Manage Speakers Dialog. Also Captionate has buttons for adding, editing and deleting the current selected speaker in the Caption Add Panel near the speaker combo box.
- Name (string): Name of the speaker.
- String Data (string): Can be any text you enter. Usage depends on the player code. For example you can have style code here, or simply use the field for any other information about the speaker.
You can add a caption using one of the following:
When you add a new caption, unless you change it, the playhead time is used. When you click on the Timeline, the time value in the Caption Add panel is updated with the playhead time.
- Press Add Caption in the Caption Add panel.
The caption text will be added to the current selected Language Track using the time and selected speaker in the Caption Add Panel.
- Press CTRL+2.
This invokes the Add a Blank Caption command. You can also choose the command from the menu or click the toolbar button, or press Insert when the list has focus. A blank caption will be added at the playhead time with no speaker selected.
- Press F11.
This invokes the New Caption command. You can also choose the command from the menu or click the toolbar button. Caption Properties Dialog will be displayed. The time in the dialog will be set to current playhead time. In this dialog you'll also have the option to cancel. One important property of this dialog is that you can have many open at the same time.
This allows real-time caption entry while the Preview Video is playing. For example, you can press F11 or CTRL+2 as many times as necessary while the video is playing to have captions at desired points of time.
(While the video is playing, a Playback Latency value is used. You can change this value using the Preferences Dialog).
Using File|Import|Captions from Plain Text... command, you can import captions from a plain text file. In this case, you will make use of Import from Plain Text Dialog and Assign Caption Times Window.
Caption Add Panel also has a feature to 'feed caption text from a plain text file'. After you import a plain text file, the caption text will be updated with the next line after each add operation.
Because there's no duration property for a caption, you'll need to insert a blank caption to remove the current caption when needed.
All the data in the caption list can be edited in place. If the current cell is not in edit mode, you can use the ENTER or F2 key to enter the edit mode, ENTER to accept changes, ESCAPE to cancel changes. Rate (wpm) value is automatically calculated and updated, hence you can not directly edit it.
Using F3, you can assign the current playhead time to a caption.
Only captions for one language track are visible at a time in the captions list. You can edit caption text for a caption data by selecting other tracks using the Language Track combo box at the top of the list. (Note that speaker value is shared for a caption and there's only one speaker per caption even if you have many language tracks).
Icons displayed for captions help you identify if a caption has text for all language tracks. If all tracks have text, blue icon will be displayed. If some tracks have text but at least one track does not, a gray icon will be displayed. If none of the tracks have text, a dot icon will be displayed.
Also, using the Edit Caption command, either by clicking its icon on the sidebar or by using the context menu or the Data Menu, you can edit a caption. This command brings up the Caption Properties Dialog, where you can also edit text for each language track.
You can use Data|Captions| Assign Caption Times... command to bring up the Assign Caption Times Window and re-assign time codes for the captions easily while the video preview is playing.
Additionally, you can export the data as XML, edit the XML file and import it back.
You can delete the selected caption in the Captions List using the Delete Caption command in the context menu or the Data Menu. You can also press DELETE when the list has focus.
You can delete all captions using Delete All Captions command. Note that after you delete all captions, there will not be any caption for any language track. To delete captions (caption text) for a language track, you should delete the language track.
For captions, Captionate embeds onCaptionInfo and onCaption events.
Basically, onCaptionInfo event provides the information for language tracks and speakers when the FLV starts. onCaption event will be called when a caption needs to be displayed. It provides the text for all tracks of the caption and index to the speakers array.
For general information on events see Events Overview. See event topics for sample code.
After adding captions you can test your FLV using Test FLV (CTRL+Enter) command in Utility menu.
You can see the size of the captions using the FLV Information Dialog, Size Report Tab.
You can decrease/increase the time codes of all captions a certain amount using the Tweak Times command in Utility menu.
You can convert your captions to cue points. While not all data is preserved, this may come handy.