ムービーに字幕を付ける場合は、字幕情報ファイルを用意してください。
字幕情報ファイルとは、どういったタイミングで字幕内容(文字列)を表示するのかを記述したテキスト形式のファイルです。
字幕情報ファイルの書式
| (a) | 1行目は時刻単位(整数)を記述します。 |
| (b) | 2行目以降は、1行につき、開始時刻(INTIME)、終了時刻(OUTTIME)、字幕内容の3つをカンマ区切りで記述します。 |
| (c) | 開始時刻、終了時刻の数値を時刻単位で割ると秒になるようにします。 |
| (d) | 終了時刻は表示時間に含みません。 |
| (e) | 字幕内容の内部にはカンマがあってもそのまま文字情報として解釈します。 |
| (f) | ’;’(セミコロン)から始まる行はコメントとして解釈されます。 |
| (g) | 文字コードは、ascii、シフトJIS、UTF-8、BOM付きのUTF-16(UTF-16LE)に対応しています。
記述された文字コードのままムービー内に入ります。 |
| (h) | 改行コードは0値に置き換えて文字データとして含めます。
アプリケーション側で字幕情報を取得時には改行コード分を含めた文字サイズを取得します。 |
字幕情報ファイルの例
【例1】 再生時間を基準とした字幕情報
時刻単位は1000です。字幕内容はそれぞれ、0~2秒、5~7.5秒、7.5~10秒の期間に表示されます。
;INTIME, OUTTIME, Subtitle, Comment
1000
0, 2000, FirstMessage.
5000, 7500, Second Message.
7500, 10000, Third Message.
【例2】 フレーム番号をベースとした字幕情報
ムービーのフレームレートが29.97fpsの場合、時刻単位を29970にすると1フレームの表示時間は1000で表せます。1秒間の表示枚数は、29.97×1000=29970となります。
この例では、字幕内容はそれぞれ、0~100フレーム、150~200フレーム、200~250フレームの期間に表示されます。
;INTIME, OUTTIME, Subtitle, Comment
29970
0, 100000, FirstMessage.
150000, 200000, Second Message.
200000, 250000, Third Message.