SRT・VTT字幕ファイルの翻訳方法(タイムコードを維持する)

字幕を翻訳するには、字幕ファイル(SRTまたはVTT)そのものを、テキスト行だけを変更し、番号とタイムコードは一切そのままにするツールで翻訳します。その後、新しいファイルで動画を再生し、長すぎて時間内に読み切れない字幕がいくつかないか確認します。ファイル全体を汎用の翻訳ツールに貼り付けると、タイムコードが壊れたり、字幕の同期がずれたりする典型的な失敗につながります。

このガイドでは、字幕ファイルの仕組み、起こりうる問題、そのままアップロードできる翻訳済みファイルの作り方を説明します。

SRTファイルの仕組み

SRTファイルはプレーンテキストです。各字幕(「キュー」)は、3つの部分で構成されます。

12
00:01:04,250 --> 00:01:07,100
I didn't think you'd come.
Neither did I.
  1. カウンター(12)
  2. タイムコード:字幕が表示されて消えるタイミングを、ミリ秒単位で指定します
  3. 1行以上のテキスト行

空行が、あるキューと次のキューを区切ります。翻訳するのはテキスト行だけです。翻訳ツールがカウンターを変更したり、矢印を書き換えたり、タイムコードのカンマをピリオドに変えたり、2つのキューを結合したりすると、多くの動画プレーヤーやアップロードページでファイルが受け付けられなかったり、字幕が違うタイミングで表示されたりします。

Webでよく使われるVTT(WebVTT)ファイルも、見た目はよく似ています。先頭に WEBVTT ヘッダーがあり、ミリ秒の前にはピリオドを使います。タイムコードの後ろに位置や配置などの設定が付いたり、斜体を表す <i> のような簡単なタグが含まれたりすることもあります。これらの部分も、そのまま残す必要があります。

汎用の翻訳ツールで字幕ファイルが壊れる理由

  • タイムコードをテキストとして扱います。 数字を「ローカライズ」したり、区切り文字を変えたり、矢印の行を文章のように翻訳したりするツールがあります。
  • 行を結合したり分割したりします。 テキスト全体を処理する翻訳ツールは、キューをつなげて段落にしてしまうことがあり、その結果、タイムコードより字幕の数が少なくなります。
  • 空行がなくなります。 空行は、プレーヤーにキューの終わりを伝える役割をしています。
  • 各キューを単独で見ます。 2つのキューにまたがる文(「I didn't think」/「you'd come」)は、前半と後半を別々に翻訳すると、意味の通らない文になることがあります。

字幕に対応した翻訳ツールなら、この4つの問題をすべて避けられます。キューを読み取り、前後の行を文脈としてテキストを翻訳し、同じ構造でファイルに書き戻します。DropTranslateの字幕翻訳もこの方法で動作します。すべてのカウンターとタイムコードをそのまま保ち、翻訳した各字幕を元と同じ行数に改行したうえで、SRTまたはVTTファイルとして返します。

翻訳前の準備

  1. 最終版の同期済みファイルから始めます。先に元のファイルでタイミングの問題を直してください。翻訳では、早く表示される字幕は直りません。
  2. UTF-8で保存します。 古いSRTファイルは、レガシーな文字コードで保存されていることがあり、アクセント付きの文字が妙な記号に化けます。多くの字幕エディターで、UTF-8に保存し直せます。
  3. 翻訳したくない部分は取り除きます。たとえば、スタイルを変える予定の話者ラベルや、編集者向けのメモです。
  4. そのまま残したい名前や用語を控えておきます。 登場人物名、製品名、地名などです。

翻訳後:行の長さと読む速さを確認する

翻訳は元より長くなることが多く、字幕はタイムコードで決まった時間しか画面に出ません。プロの字幕制作者は、次の3つの上限を基準にしています。

  • 字幕あたりの行数: ほとんどのスタイルガイドでは、最大2行までです。
  • 1行あたりの文字数: 行の長さの上限です。文字が映像にかぶったり、小さな画面で見切れたりしないようにするためです。
  • 読む速さ: 視聴者が無理なく読める1秒あたりの文字数です。1秒しか表示されない長い字幕は、画面に収まっていても読めません。

具体的な数値は、プラットフォームや放送局、視聴者層によって異なります(たとえば、子ども向けコンテンツでは通常、より遅めに設定されます)。スタイルガイドがあるプラットフォームに納品する場合は、その数値を使ってください。

翻訳したファイルは、次の手順で確認します。

  1. 新しい字幕を付けた動画を通常の速度で再生し、最後まで読み切れない字幕がないか確認します。
  2. 詰め込まず、短くします。 良い字幕は内容を凝縮します。「I didn't think you'd come」は、意味を損なわずに「I didn't expect you」と短くできます。ネイティブスピーカーなら、すばやく対応できます。
  3. 改行位置を確認します。 自然な位置で改行してください(たとえば、冠詞と名詞の間は避けます)。
  4. 名前、数字、画面上のテキスト(看板や、映像に焼き込まれたキャプションなど)が、視聴者が目にするものと一致しているか確認します。

エディターで1秒あたりの文字数が表示される場合は、その値で並べ替え、速い字幕から順に直してください。

焼き込み字幕は別の作業になります

字幕が映像の一部になっている場合(「焼き付け字幕」または「ハードコード字幕」)は、翻訳できる字幕ファイルがありません。まず文字起こしから字幕を作り直し、そのファイルを翻訳する必要があります。直接翻訳できるのは、動画に付属している字幕ファイル、またはエディターからダウンロードやエクスポートできる字幕ファイルです。

よくある質問

翻訳後もタイミングは変わりませんか?

字幕に対応した翻訳ツールなら、変わりません。タイムコードはそのままコピーされ、変わるのはテキストだけです。翻訳した字幕が長すぎて表示時間内に読めない場合は、タイミングを変えるのではなく、テキストを短くしてください。字幕エディターでのタイミング調整に慣れている場合は、その限りではありません。

異なる文字を使う言語にも字幕を翻訳できますか?

はい。ファイルがUTF-8で保存されていること、そして動画プレーヤーやプラットフォームがその文字に対応していることを確認してください。アラビア語やヘブライ語のような右から左に書く言語では、行末の句読点を確認してください。プレーヤーによっては、反対側に表示されることがあります。

機械翻訳した字幕ファイルは、そのまま公開できる品質ですか?

社内向け動画、SNSのクリップ、最初の下書きなら、出発点として十分なことが多いです。映画、有料講座、放送用の場合は、ネイティブスピーカーに確認してもらってください。字幕は短く、文脈への依存が大きいため、トーンや慣用表現が重要です。簡単なチェック方法については、機械翻訳で十分?をご覧ください。

SRTとVTTのどちらを翻訳すればよいですか?

プラットフォームが求める形式のほうです。テキストとタイミングは同等で、VTTには位置指定やスタイル設定などのオプションが加わります。後から変換しなくて済むように、アップロードする形式のまま翻訳してください。

まとめ

コピーしたテキストではなく、字幕ファイルそのものを翻訳しましょう。タイムコードと構造はそのまま保ち、UTF-8で保存します。そのうえで、新しいファイルで動画を一度見て、速く流れすぎる字幕を短くしてください。ほかのファイル形式については、ドキュメントを翻訳する方法をご覧ください。

SRTまたはVTTファイルをDropTranslateにドロップすると、同じタイムコードを保った翻訳ファイルが返ってきます。

SRTとVTT字幕をタイミングを崩さず翻訳する方法を解説。字幕ファイルの仕組み、準備、行の長さと読み取り速度の確認方法を紹介します。