[WEB Tool] Subtitle Converter v1.0 — SRT / VTT / ASS / SBV / LRC を相互変換、ズレ補正もできる字幕ツールの使い方ガイド

[WEB Tool] Subtitle Converter v1.0 — SRT / VTT / ASS / SBV / LRC を相互変換、ズレ補正もできる字幕ツールの使い方ガイド

概要

Subtitle Converter は、字幕ファイルの形式変換・ズレ補正・文字コード変換を、ブラウザ上で行えるWEBツールです。

SRT、WebVTT、ASS(SSA)、SBV、LRC の 5 つの形式を読み込み、どの形式にも書き出せます。読み込み時に文字コードを自動で判定するので、Shift_JIS などで保存された古い字幕ファイルも開けます。書き出しでは、UTF-8、UTF-16 LE に加えて、Shift_JIS も選べます。

ズレの直し方は、ミリ秒のずらし、FPS の変換、2 点指定、動画の再生位置に合わせる方法の 4 つです。動画や音声を読み込むと、字幕を重ねて表示しながら確認できます。

データはすべてお使いの端末(ブラウザ内)で処理されます。字幕ファイルや動画をサーバーへアップロードすることはありません。

Subtitle Converter

アプリのリンク。

スタートメニューから起動

トップページのスタートメニューから起動できます。

サンプルの字幕 10 行と、動画のプレビューが表示された Subtitle Converter

スクリーンショット

Subtitle Converter — サンプルを読み込んだ画面

サンプルの字幕 10 行と、動画のプレビューが表示された Subtitle Converter

左にファイルと文字コード、中央に字幕の一覧とプレビュー、右に補正と書き出しのツールが並びます。

Subtitle Converter — ヘルプのダイアログ

使い方を説明するヘルプのダイアログ

ヘッダーの「? HELP」を押すと、ツール内で使い方を確認できます。

動画

サンプルの字幕 10 行と、動画のプレビューが表示された Subtitle Converter

ツールの特徴

  • 5 つの形式を相互に変換: SRT、WebVTT、ASS / SSA、SBV、LRC の読み込みと書き出し
  • 文字コードの自動判定: UTF-8、UTF-16、Shift_JIS、EUC-JP、GBK、Big5、EUC-KR などを判定。化けたときは手動で選び直せます
  • 文字コードを選んで書き出し: UTF-8、UTF-8(BOM 付き)、UTF-16 LE(BOM 付き)、Shift_JIS
  • 4 種類のズレ補正: SHIFT(ミリ秒)、FPS 変換、2 点指定、動画の再生位置に合わせる
  • 動画・音声でプレビュー: 再生位置に合わせて字幕を重ね表示し、再生中の行を一覧でハイライト
  • 一覧でそのまま編集: 開始・終了・本文を直接書き換え。行の追加・削除、Undo(40 段)
  • 整形をまとめて実行: タグの除去、効果音や話者表記の除去、空行の削除、並べ替え、重複や重なりの修正
  • 複数ファイルを一括処理: ずらしや整形を、読み込んだ全ファイルに一度に適用
  • 完全ローカル処理: 外部ライブラリ非依存、サーバー通信なし

まず試す:サンプルを読み込む

  1. 画面左の「Load sample」ボタンを押します。
  2. 字幕 10 行と、各字幕の開始位置でビープ音が鳴る 30 秒の音声が読み込まれます。
  3. 再生ボタンを押すと、ビープ音が鳴るのと同時に字幕が出ます(最初は、ぴったり合っています)。
  4. 右の SHIFT で「+1s」を押してから、もう一度再生してみてください。字幕が 1 秒遅れてズレます。Undo で元に戻せます。
  5. CLEANUP の項目にチェックを入れて「Apply cleanup」を押すと、効果音の除去や重複のまとめなどの結果を確認できます。

自分のファイルで使うときは、字幕ファイルを左の破線エリアにドロップするだけです。

使い方

1. 読み込み

  • 字幕ファイル(.srt .vtt .ass .ssa .sbv .lrc .txt)を、左の破線エリアにドロップ、またはクリックして選びます。複数ファイルを同時に読み込めます。
  • 「PASTE TEXT」欄にテキストを貼り付けて、「Parse pasted text」で読み込むこともできます。
  • 形式は、拡張子ではなく中身で判定します。文字コードも自動で判定します。
  • 文字が化けたときは、「INPUT ENCODING」で Shift_JIS や EUC-JP などを選び直してください。同じファイルを、選んだ文字コードで読み直します。
  • 複数のファイルは、左のファイル一覧をクリックして切り替えます。

2. 動画・音声のプレビュー

  • 動画や音声ファイルを、画面にドロップするか、「Load video / audio…」で選びます。
  • 再生位置に合わせて、字幕が映像の上に表示されます。再生中の字幕は、一覧で緑の線でハイライトされます。
  • 「follow playback」にチェックを入れておくと、再生中は一覧が自動でスクロールします。

3. 一覧の編集

中央の一覧で、字幕を 1 行ずつ確認・編集できます。

項目内容
START / END開始・終了の時刻。0:01:23.456 のほか、1:23 のような短い書き方も入力できます
TEXT本文。そのまま書き換えられます
DUR表示時間と、1 秒あたりの文字数(cps)

行の右にあるボタンの意味は、次のとおりです。

  • ▶:その字幕の開始位置へ、動画をシークする
  • S:開始時刻を、いまの再生位置にする
  • E:終了時刻を、いまの再生位置にする
  • +:その行の下に、字幕を 1 行追加する
  • ✕:その行を削除する

赤い警告マーク(⚠)は、「終了が開始より前」か「次の字幕と時間が重なっている」行です。cps がオレンジのときは、1 秒あたり 20 文字を超えていて、読みにくい字幕です。

画面上部の「Undo」で、直前の操作を取り消せます(ファイルごとに 40 段まで)。

4. ズレを直す(TOOLS 右パネル)

ズレの種類によって、使うものが違います。

症状使うもの
最初から最後まで、同じだけズレているSHIFT
動画を見ながら合わせたいSync selected row to video time
後ろにいくほどズレる(FPS 違い)FPS / SCALE
前半は合うのに、後半のズレ幅が違うTWO-POINT SYNC

SHIFT

  • ミリ秒を入力して「Apply (ms)」を押すと、全体がずれます。マイナスなら早く、プラスなら遅くなります。
  • 「-1s」「-0.5s」「-0.1s」「+0.1s」「+0.5s」「+1s」のボタンで、すぐにずらせます。
  • 「from cue #」と「to cue #」に字幕の番号を入れると、その範囲だけをずらせます(空欄なら全体)。

動画に合わせる

  1. 動画を読み込みます。
  2. ズレている字幕の行を、一覧でクリックします。
  3. 動画を、その台詞が始まる瞬間で止めます。
  4. 「Sync selected row to video time」を押します。

いまの再生位置と、選んだ字幕の開始時刻の差の分だけ、全体がずれます。

FPS / SCALE

  • 「FPS」は、字幕の元の FPS を左、動画の FPS を右に選んで、「Convert FPS」を押します。例:23.976 → 25。
  • 「Multiply time」は、倍率を直接入力して、時間全体に掛けます。

TWO-POINT SYNC

前半は合っているのに、後半のズレ幅が違うときに使います。

  1. 合わせたい 2 か所の字幕の番号を、「cue # A」と「cue # B」に入力します。
  2. その 2 つの字幕の、正しい開始時刻を、「new time A」と「new time B」に入力します。
  3. 「Apply」を押すと、間の字幕も、直線的に伸び縮みして合います。

5. 整形(CLEANUP)

チェックを入れた項目を、まとめて実行します。

項目内容
strip tags<i> などのタグや、ASS の装飾タグを消す
remove [..] (..) (..) ♪..♪効果音、話者表記、歌の記号を消す
trim / collapse spaces行の前後の空白と、連続するスペースを整える
remove empty cues中身が空の字幕を削除する
sort by start time開始時刻の順に並べ替える
merge consecutive duplicates同じ文が続いたら、1 つにまとめる
fix overlaps終了を、次の字幕の開始までに切り詰める
min duration短すぎる字幕を、指定した長さ(ミリ秒)まで延ばす

6. 検索置換・改行

  • FIND & REPLACE:字幕の本文だけが対象です。「regex」にチェックを入れると、正規表現が使えます(置換側で $1 などが使えます)。
  • LINE BREAKS:「Unwrap to one line」で、字幕を 1 行にまとめます。「Re-wrap」で、指定した文字数で折り返します。

7. 出力(OUTPUT)

項目内容
形式SRT / WebVTT / ASS / SBV / LRC
文字コードUTF-8 / UTF-8(BOM) / UTF-16 LE / Shift_JIS
改行CRLF / LF
keep ASS headerASS から ASS に書き出すとき、元のスタイル定義を保つ
フォント・サイズASS に書き出すとき、新しく付けるスタイルのフォントと大きさ

「DOWNLOAD」で、表示中のファイルを保存します。「DOWNLOAD ALL」で、読み込んだ全ファイルを順に保存します。ファイル名は、元の名前の拡張子を、選んだ形式に変えたものです。

右上の「apply to all files」にチェックを入れると、SHIFT や CLEANUP などの操作が、読み込んだ全ファイルに適用されます。

注意事項

  • 本ツールは、ブラウザ内で字幕を処理します。ファイルが外部サーバーへ送信されることはありません。
  • ASS から SRT や VTT など、ほかの形式へ変換すると、位置の指定や細かいスタイルは失われます(斜体・太字・下線は残ります)。
  • ほかの形式から ASS へ書き出すときは、指定したフォントとサイズの標準スタイルが、新しく付きます。
  • LRC は、終了時刻を持たない形式です。読み込むときは、次の行の開始を終了とみなします。書き出すときは、字幕内の改行がスペースになります。
  • WebVTT の位置指定(line: や position: など)と、NOTE・STYLE のブロックは、読み込んだあと残りません。
  • Shift_JIS で書き出すとき、Shift_JIS にない文字は ? になります。その文字数は、画面下に表示されます。
  • 文字コードの自動判定は、文が短いと外れることがあります。化けたときは、手動で選び直してください。
  • 数千行の字幕での動作速度は、まだ確認していません。

よくある質問 (FAQ)

Q. 文字化けしたときは、どうすればいいですか?
A. 左の「INPUT ENCODING」で、Shift_JIS や EUC-JP などを選んでください。選んだ文字コードで、そのファイルを読み直します。

Q. 動画ファイルは、アップロードされますか?
A. されません。動画や音声は、ブラウザ内で再生しているだけです。どこにも送信されません。

Q. ズレの直し方が分かりません。
A. 画面左の「Load sample」で、ビープ音つきのサンプルを読み込んでください。音と字幕のズレを、実際に直して試せます。ツール内のヘルプ(「? HELP」)にも、症状別の早見表があります。

Q. ASS のスタイルは、保てますか?
A. ASS から ASS へ書き出すときは、元のスタイル定義を保ちます(「keep ASS header」にチェックしたとき)。ほかの形式への変換では、位置とスタイルは失われます。

Q. 古いプレーヤーで、字幕が文字化けします。
A. 文字コードを、Shift_JIS か UTF-8(BOM 付き)にして、書き出してみてください。

技術記事

実装の詳細は、技術記事にまとめています。

更新履歴

バージョン日付内容
v1.0.02026/10/11初回公開(SRT / VTT / ASS / SBV / LRC の相互変換、文字コードの自動判定と Shift_JIS 書き出し、ズレ補正 4 種、動画・音声プレビュー、整形、検索置換、複数ファイル一括処理)

クレジット

ライブラリ

  • 本ツールの字幕の解析・変換・文字コード処理・プレビューは、すべて外部ライブラリ非依存の純粋な JavaScript (Web API) で自作されています。
  • サンプルのビープ音声は、ブラウザ内で生成しています。