やり方

SRT ファイルの作り方:書式の基本から手作業・字幕ソフト・自動生成まで

SRT ファイルの作り方はシンプルで、「番号」「タイムコード」「字幕の本文」「空行」の4つを繰り返したテキストを、UTF-8 で .srt という拡張子で保存すれば完成です。この記事では書式を実例で分解したうえで、メモ帳での手書き、字幕ソフト、音声からの自動生成の3つの方法を、向き不向きとあわせて説明します。

約8分で読めます · 更新日

ご注意:mydubly の操作画面は現在英語のみです。日本語音声の文字起こし、日本語への翻訳、日本語音声の生成には対応しています(ボタンの表記が英語になります)。

SRT ファイルとは:文字だけで書かれた字幕の設計図

SRT(SubRip Text)は、動画のどの時間にどの文字を表示するかを記録した、ごく単純なテキストファイルです。映像そのものは含まれず、動画ファイルとは別に「横に添えて」使うため、サイドカー字幕とも呼ばれます。

YouTube の字幕アップロード、VLC や PotPlayer などのプレーヤー、Premiere Pro や DaVinci Resolve などの編集ソフトの多くが SRT を読み込めます。形式が古くから使われていて仕様が単純なぶん、迷ったらまず SRT で作っておけば困ることが少ない、というのが実務での感覚です。他の形式との違いは字幕ファイル形式の比較 (英語)で詳しく整理しています。

一方で、SRT は基本的に「いつ・何を表示するか」だけの形式です。文字の色や位置、フォントを細かく指定したいなら、Aegisub が標準で扱う ASS 形式など、装飾に対応した形式を検討することになります。

書式を1ブロックずつ分解する

SRT は「キュー」と呼ばれるブロックの連続です。1つのキューは次の4つの要素でできています。

  1. 通し番号:1 から始まる整数。上から順に 1、2、3 と振ります。
  2. タイムコード:開始時刻と終了時刻を「-->」でつなぎます。書式は「時:分:秒,ミリ秒」で、ミリ秒の前はピリオドではなくカンマです。
  3. 本文:画面に出す文字。1行でも2行でも構いません。
  4. 空行:次のキューとの区切り。これを忘れると、次の番号まで本文の一部として表示されてしまいます。
実際の SRT の中身(2キュー分)

1 / 00:00:01,200 --> 00:00:04,000 / 本日は商店街の夏祭りについてご案内します /(空行)/ 2 / 00:00:04,300 --> 00:00:07,800 / 開催は8月の第1土曜日です /(空行)※「/」の位置で実際には改行します。

時刻は必ず2桁・2桁・2桁・3桁で書きます。「0:0:1,2」のような省略形は、読み込めるプレーヤーもありますが、編集ソフトや YouTube でエラーになることがあります。また、前のキューの終了時刻と次のキューの開始時刻が重なると、2つの字幕が同時に表示される原因になります。

方法1:メモ帳やテキストエディットで手書きする

数十秒の告知動画や、字幕が数行しかない場合は、手書きが一番早いこともあります。特別なソフトは要りません。

  1. 動画をプレーヤーで再生し、セリフの始まりと終わりの時刻をメモします。
  2. Windows ならメモ帳、Mac ならテキストエディットを開き、上の書式どおりに入力します。テキストエディットは「フォーマット」メニューから「標準テキストにする」を選んでから書き始めてください。
  3. 保存時に文字コードを UTF-8 にし、ファイル名を「動画名.srt」にします。拡張子が .srt.txt になっていないか、エクスプローラーや Finder で拡張子を表示して確認しましょう。
  4. 動画と同じフォルダに同じファイル名で置き、プレーヤーで再生して表示とタイミングを確認します。

手書きで一番多い失敗は文字コードです。古い環境で Shift_JIS のまま保存すると、海外製のプレーヤーやサービスで日本語が化けることがあります。症状と直し方は字幕ファイルの文字化け対策にまとめました。

方法2:字幕ソフトで作る

字幕が数十〜数百行になるなら、専用の字幕ソフトを使うほうが確実です。代表的な無料ソフトとして、Windows 向けの Subtitle Edit や、波形を見ながらタイミングを合わせられる Aegisub がよく知られています。

字幕ソフトの利点は、音声の波形や映像を見ながら開始・終了時刻をクリックで決められることです。番号の振り直しや、時刻の重なりのチェックも自動で行ってくれるものが多く、手書きのようなケアレスミスが起きにくくなります。

ただし、セリフを一字一句打ち込む作業そのものは手作業のままです。10分の対談でも、聞き取りと入力には相応の時間がかかります。「タイミング合わせは得意だが、文字起こしに時間を取られる」という悩みは、この方法でよく聞かれます。

方法3:音声から自動生成してから直す(mydubly の場合)

最近は、音声認識で文字起こしとタイムコードを同時に作り、人が仕上げる流れが一般的になってきました。mydubly もこの方法で SRT を作れます。ブラウザで動くアプリで、手順は次のとおりです(画面は英語表記です)。

  1. トップページの動画エリア「Drop a video here」に MP4、MOV、WebM、MKV、M4V のいずれかをドロップします。音声だけなら「Drop audio here」に MP3 や M4A などを入れます。
  2. 「Full translation output」のスイッチをオフのままにします。これが「Timestamped transcript only」、つまり文字起こしと字幕だけを作るモードです。
  3. 話されている言語は自動判定されます(Source: Auto detect)。「Select language」では、元の言語の字幕なら話されている言語と同じ言語を選び(翻訳なしでそのまま出力されます)、別の言語の字幕が欲しい場合はその翻訳先を選びます。
  4. 「Transcribe video」(音声なら「Transcribe audio」)を押し、処理が終わるまでタブを開いたままにします。
  5. 「Download subtitles」で subtitles.srt を保存します。
料金の計算例

10分の動画の SRT を作る場合、文字起こしの料金は1分あたり1クレジットなので 10 クレジット、金額にすると $0.01 です。3分の短い動画は1ファイルの最低料金が適用されて 5 クレジットになります。登録時にもらえる 100 クレジットで、合計100分ぶんまで試せます。

できないことも先に書いておきます。mydubly には字幕の編集画面がなく、話者名の表示、字幕の焼き付け(ハードサブ)、既存の SRT の読み込みや翻訳にも対応していません。出力される SRT は UTF-8(BOM 付き)で、発話の区切りごとに1行の字幕が1つずつ並ぶ形です。日本語では1つの発話が長くなりがちなので、ダウンロード後に方法1か方法2の道具で改行や分割を加えてください。具体的な直し方はSRT ファイルの編集方法 (英語)が参考になります。詳しい機能は字幕生成ツールのページ (英語)で確認できます。

どの方法を選ぶか:分量と仕上がりで決める

3つの方法は優劣ではなく、字幕の量と、どこまで手をかけられるかで選び分けるものです。

手書き(メモ帳)
字幕が数行〜十数行の短い動画向き。道具は不要だが、時刻の打ち間違いが起きやすい
字幕ソフト
数十行以上で、タイミングを細かく詰めたいとき。文字の入力は自分で行う
自動生成+手直し
話している時間が長い動画向き。下書きを短時間で作れるが、固有名詞や句読点の確認は必須

たとえば自治会のお知らせ動画30秒なら手書きで十分です。社内研修の60分の録画なら、自動生成で下書きを作り、担当者が人名や社内用語を直してから字幕ソフトで改行を整える、という組み合わせが現実的でしょう。

日本語字幕を読みやすく整えるコツ

形式として正しい SRT でも、読みにくければ視聴者は離れてしまいます。日本語ならではのポイントをまとめます。

  • 1行に詰め込みすぎない。映像翻訳の現場では「1秒あたり4文字程度」という目安がよく語られます。詳しくは字幕の文字数ルールをご覧ください。
  • 改行は意味の切れ目で入れる。「ご案内/します」のように語の途中で切らず、助詞の後ろで区切ると読みやすくなります。
  • 数字の表記をそろえる。「8月」「八月」が混在しないよう、半角数字か漢数字かを最初に決めておきます。
  • えー、あのー などのフィラーは、記録目的でなければ削ります。

作った SRT が表示されないときの確認ポイント

読み込めない・表示されないときは、次の順で確認すると原因が見つかりやすくなります。

  • 拡張子が本当に .srt になっているか(.srt.txt になっていないか)。
  • タイムコードのミリ秒の前がカンマになっているか、「-->」の前後に半角スペースがあるか。
  • キューの間に空行があるか、番号が抜けたり重複したりしていないか。
  • 文字コードが UTF-8 か。プレーヤー側で文字コードを指定できる場合は、そちらも確認します。
  • 動画ファイルと SRT のファイル名が一致しているか(プレーヤーで自動読み込みする場合)。

よくある質問

SRT ファイルはメモ帳だけで作れますか?

作れます。書式どおりに入力し、文字コードを UTF-8 にして拡張子を .srt で保存すれば SRT ファイルになります。ただし字幕の行数が多いと時刻の入力ミスが増えるため、長い動画では字幕ソフトや自動生成を併用するほうが効率的です。

タイムコードのミリ秒はピリオドでも大丈夫ですか?

SRT ではカンマが正式な書き方です。ピリオドは WebVTT という別の形式の書き方で、SRT に混ぜると読み込めないソフトがあります。迷ったら「00:00:01,200」のようにカンマで統一してください。

SRT と VTT はどちらで作るべきですか?

動画編集ソフトや YouTube に入れるだけなら、対応範囲の広い SRT で困ることはほとんどありません。ウェブページの動画プレーヤーに字幕を付ける場合は VTT が求められることがあります。なお mydubly では「Download subtitles」で SRT、「Download VTT」で VTT をダウンロードでき、どちらも同じ字幕が入っています。

自動生成した SRT はそのまま公開できますか?

公開前に必ず目を通すことをおすすめします。音声認識は録音状態や話し方、専門用語によって聞き違いが起きるため、人名や商品名、数字は特に確認が必要です。日本語の場合は句読点や改行位置も整えると、ぐっと読みやすくなります。

mydubly で作った SRT に話者名を入れられますか?

mydubly には話者を区別する機能がないため、話者名は自動では入りません。必要な場合は、ダウンロードした SRT をテキストエディタや字幕ソフトで開き、「(司会)」のように手で書き足してください。

YouTube の動画リンクから SRT を作れますか?

mydubly は URL からの読み込みに対応していないため、動画ファイルが手元にある必要があります。自分のチャンネルの動画なら、YouTube に上げる前の元ファイルを使うのが確実です。他人の動画の字幕を作る場合は、権利者の許可を得てください。