TTMLファイルとは?
Netflix、Apple TV、プロ向け放送システムで使われるXMLベースの字幕フォーマット、TTML(Timed Text Markup Language)について知っておくべきすべて。
TTML(Timed Text Markup Language)は、W3Cが標準化したXMLベースの字幕フォーマットです。Netflix、Apple TV/iTunes、多くの放送システムで要求される配信フォーマットであり、SRTなどのプレーンテキストフォーマットにはない豊富なスタイリング、位置指定、メタデータをサポートしています。
TTMLの略称と意味
TTMLは「Timed Text Markup Language」の略称です。W3C(World Wide Web Consortium)が、動画の字幕やキャプション用のタイムドテキストを標準的に表現する方法として開発しました。このフォーマットはW3C TTML1およびその後継であるIMSC(TTML Profiles for Internet Media Subtitles and Captions)で正式に仕様化されています。
TTMLファイルの仕組み
TTMLファイルはXML文書で、ルート要素の<tt>の中に<head>(メタデータ、スタイリング)と<body>(字幕コンテンツ)が含まれます。各字幕キューは<p>要素で、begin属性とend属性でタイミングを秒単位(例:begin="1.500s")で指定します。<p>内のテキストには、改行用の<br/>タグ、インラインスタイリング用の<span>、さまざまなスタイリング属性を含めることができます。
TTMLを使うべきケース
Netflix、Apple TV/iTunes、またはEBU-TTやIMSC標準に準拠する放送システムへ字幕を納品する場合にTTMLが必要です。また、豊富なスタイリングとメタデータが必要なプロフェッショナルなローカライズやキャプショニングのワークフローでも使用されます。一般向けの動画プレーヤーを利用している場合は、SRTやVTTの方が適しているでしょう。
TTMLファイルの構造
<?xml version="1.0" encoding="UTF-8"?>
<tt xmlns="http://www.w3.org/ns/ttml">
<body>
<div>
<p begin="0.500s" end="3.000s">最初の字幕行</p>
<p begin="3.500s" end="6.000s">2つ目の字幕<br/>改行あり</p>
</div>
</body>
</tt>
TTMLのメリット
- W3C標準のタイムドテキスト規格で、クロスプラットフォームの整合性を保証
- 豊富なスタイリング:フォント、カラー、サイズ、位置、配置をサポート
- Netflix、Apple TV/iTunes、多くの放送システムで必須フォーマット
- XML構造によりバリデーションとプログラム的処理が可能
- メタデータ、役割、言語アノテーションをサポート
- IMSC(業界標準のキャプショニングプロファイル)の基盤
TTMLのデメリット
- SRTなどのプレーンテキストフォーマットより複雑
- XMLのオーバーヘッドでファイルサイズが大きくなる
- 一般向けメディアプレーヤーではサポートが限定的
- 手動編集にはXMLの知識が必要
- プロファイルの違い(TTML1、IMSC、EBU-TT)で互換性の問題が生じうる
TTMLを使用するプラットフォーム
TTMLよくある質問
TTMLとITTの違いは何ですか?
ITT(iTunes Timed Text)はAppleがiTunesおよびApple TV向けに使用するTTMLのプロファイルです。XML構造はTTMLと基本的に同じですが、ITTにはAppleの納品仕様に固有の追加メタデータ要件があります。
SRTをTTMLに変換できますか?
はい。SRT to TTML 変換ツールを使えば、プレーンテキストのSRT字幕をTTMLフォーマットに変換できます。変換時にすべてのタイミングとテキストデータが保持され、XMLに再構成され、特殊文字がエスケープされます。
TTMLはスタイリングをサポートしていますか?
はい。TTMLはXML属性とネストされた要素によるインラインスタイリングをサポートしています。<head>セクションで<style>要素を使ってスタイルを定義して参照することも、<p>や<span>要素に直接スタイリングを適用することもできます。
TTMLの時間フォーマットは何ですか?
TTMLは begin="1.500s"(1.5秒)のような時間式を使用します。HH:MM:SS.mmm形式やフレームベースのタイミングもサポートしていますが、実際には秒ベースのフォーマット(例:1.500s)が最も一般的です。
TTMLとIMSCは同じですか?
IMSC(TTML Profiles for Internet Media Subtitles and Captions)はTTMLの標準化されたプロファイルです。すべてのIMSC文書は有効なTTMLですが、すべてのTTML文書がIMSCの制約に適合するわけではありません。IMSCはストリーミングプラットフォーム配信の業界標準です。