Skip to content

TTML から STL への字幕変換ツール

TTML キューのタイミングとテキストを、Spruce 形式のテキスト STL エントリに変換します。

TTML ファイルをここにドラッグ&ドロップ

またはクリックして選択

50MB以下の.ttml, .itt, .xmlファイルに対応

コアエンジンアーキテクチャ

無料オンライン TTML から STL への変換ツール

この変換ツールは TTML ドキュメントの <p> キューを読み取り、テキストベースの Spruce STL を書き出します。タイミングは 29.97 fps のフレームグリッドに量子化され、改行は縦棒セパレーターに変換され、一般的な TTML インラインタグは削除されます。各出力キューには開始時刻、終了時刻、テキストが含まれます。

ペイロード&構文インスペクター

TTML → STL コード構文と構造の検証

ヘッダー定義、タイムスタンプ構文、キューペイロードのフォーマットを並べて比較し、コードレベルの対応関係を確認できます

ミリ秒同期
input.ttml
TTML 入力
<?xml version="1.0" encoding="UTF-8"?>
<tt xml:lang="en" xmlns="http://www.w3.org/ns/ttml">
<body>
<div>
<p begin="1.000s" end="4.000s">Hello, world!</p>
<p begin="4.500s" end="8.000s">This is a subtitle file.</p>
<p begin="8.500s" end="12.000s">Converted locally!</p>
</div>
</body>
</tt>
output.stl
STL 出力
// Spruce Subtitle File
// Format: Start Time, End Time, Subtitle Text
 
00:00:01:00 , 00:00:04:00 , Hello, world!
00:00:04:15 , 00:00:08:00 , This is a subtitle file.
00:00:08:15 , 00:00:12:00 , Converted locally!
仕様シート

TTML vs STL 技術仕様

規格準拠
入力形式

TTML

TTML

TTML(Timed Text Markup Language)は XML ベースの字幕フォーマットです。この変換ツールは、begin と end、または begin と dur のタイミング属性を持つ <p> 要素を対象とし、秒単位またはクロック値のタイミングに対応します。begin 属性がないキューはスキップされます。

出力形式

STL

STL

この出力はバイナリ EBU STL ではなく、テキストベースの Spruce STL です。ファイルにはジェネレーターコメントと、開始時刻・終了時刻・テキストのエントリが含まれます。タイミングは 29.97 fps の SMPTE 形式 HH:MM:SS:FF 値を使用し、表示上の改行は縦棒で表されます。

フォーマットの違い

TTML は XML であり、この STL 出力はプレーンテキストのキューリストです。
TTML のタイミング属性は、フレームベースの SMPTE 形式タイムコードに変換されます。
TTML の <br/> 要素は、STL の縦棒セパレーターになります。
TTML のスタイルとメタデータは STL 出力にはマッピングされません。

変換のトラブルシューティングと注意点

プレイヤー互換性、文字エンコーディング、タイミング同期に関する実践的な解決策

4 個の注意点
GOTCHA #1

プレーヤーで字幕のタイミングがずれたり音ズレが発生する

動画のフレームレートの違い(23.976fpsと25fpsなど)が原因の場合があります。当サイトの「字幕同期ツール」で全体の遅延を一括調整できます。

GOTCHA #2

日本語の漢字や記号が文字化け(?)して表示される

Shift-JISなど古い文字コードで保存されたファイルは文字化けします。出力ファイルはUTF-8に標準化されます。元のファイルが破損している場合は文字コード変換ツールをご利用ください。

GOTCHA #3

複数人物が同時に話す際に字幕が重なって見づらい

フォーマットによって重複表示の仕様が異なります。当サイトの字幕エディターで各行の表示時間を微調整できます。

GOTCHA #4

動画編集ソフト(Premiere、DaVinci Resolve等)で読み込みエラーになる

当ツールの変換エンジンは、改行や構文の一般的な問題を整理したクリーンなファイルを出力します。主要な編集ソフトでの読み込みをテストしてください。

機能

begin/end または begin/dur のタイミングを持つ TTML <p> キューを読み取ります。
テキストベースの Spruce STL エントリを書き出します。
タイミングを 29.97 fps のフレームグリッドに量子化します。
キューテキストの改行を縦棒セパレーターに変換します。
一般的な TTML インラインタグを削除します。
処理はすべてブラウザ内でローカルに行われます。

変換する理由

STL のテキストエントリはコンパクトで、プレーンテキストとして確認しやすくなっています。
変換では明示的な開始時刻と終了時刻が保持されます。
縦棒セパレーターにより、STL テキストの改行を簡潔に表現できます。
ワークフローがこのレイアウトを求める場合、Spruce 形式のテキストファイルが役立ちます。
Scenarios

主なユースケース

テキスト STL の準備

対応する TTML キューから、テキストベースの Spruce 形式 STL エントリを作成します。

改行の変換

TTML の改行を STL の縦棒セパレーターに変換します。

タイミングの変換

begin と end の値を、フレームグリッドの SMPTE 形式タイムコードに変換します。

Format Ecosystem

関連フォーマット

使い方

  1. 1

    TTML ファイルを選択するか、ドロップします。

  2. 2

    パーサーが <p> のテキストとタイミング属性を抽出します。

  3. 3

    一般的なインラインタグを削除し、改行は保持します。

  4. 4

    タイミングを SMPTE 形式のフレームタイムコードに変換します。

  5. 5

    各キューを開始時刻、終了時刻、縦棒区切りのテキストとして書き出します。

よくある質問

いいえ。出力は開始・終了・テキストからなるテキストベースの Spruce STL です。バイナリ EBU STL は生成されません。

時刻は 29.97 fps の SMPTE 形式フレームグリッドに量子化されます。TTML のミリ秒精度は、表現可能な最近のフレームへ調整される場合があります。

はい。登録や透かしはなく、変換はブラウザ内で実行されます。

TTML の改行は、STL テキスト項目では縦棒セパレーターとして書き出されます。

いいえ。一般的なインラインタグは削除され、TTML のスタイルやメタデータはマッピングされません。

いいえ。処理はブラウザ内で行われ、字幕ファイルはアップロードされません。

字幕を変換する準備はできましたか?

TTML ファイルをここにドロップして STL に即座に変換。