メインコンテンツへスキップ
SubtitleMatrix

字幕の空白を埋める

タイミング短すぎる字幕を延長
字幕テキストを貼り付けることもできます

オプション

ある字幕が終わって次の字幕が始まるまでの、画面が空く時間(ミリ秒)の上限です。空白は直前の字幕からではなく、そこまでで最も遅い終了時刻から測るため、短い字幕の下に長い字幕がある場合に、画面に存在しなかった空白を作り出しません。値の意味はページによって変わります。空白を埋めるページでは、これより広い空白を埋めます(0 が一般的で、2つがちょうど接します)。チェックのページでは、これより広い区間をすべて一覧にし、ファイルは変更しません。いずれの場合も、この値以下のものはそのままです。

2つの字幕の間の空白には端が2つあります。前の字幕の終了と、後の字幕の開始です。前の字幕の終了(End)は前の字幕の終了を動かすので、間隔を詰めるとその字幕が長くなり、広げると短くなります。後の字幕のタイミングはミリ秒単位で変わりません。後の字幕の開始(Start)は後の字幕の開始を動かし、前の字幕はそのままにします。タイミングをより信頼できる側を選んでください。通常は最後に発話される字幕です。字幕はその台詞が聞こえる前に出るべきではないからです。

タイミングを数える基準のフレームレートです。形式のページでは MicroDVD が必要とする値で、同形式は時間をフレーム番号で保存します。フレームレートのページでは、そのファイルがどのレートを前提に作られたか(字幕が合わせて作られた版)を指し、ページの2つ目の欄には実際に使う動画のレートを入れます。よく使われるのは 23.976、24、25、29.97、30、50、59.94、60 です。間違えると時間軸全体がずれます。フレームレートのページでは、ずれは固定量ではなく比率で生じます。

このページは、ある字幕と次の字幕の間にある空白を、前の字幕を長く表示することで埋めます。残してよい間隔の最大値を入力すると、それより広い間隔はすべてその値に縮まります。前の字幕の終了時刻が後ろへ動き、次の字幕には触れず、両方のテキストもそのまま残ります。入力欄の初期値である0は、2つの字幕がちょうど接することを意味し、暗いフレームを挟まずに字幕が続きます。

これが何ではないかを先に確認します。2つの字幕を1つに結合するのは別のページで、出来上がるファイルも違います。ここでは2行は2つの字幕のままで、それぞれのスタイル、位置、カラオケのタイミングを保ち、タイムラインのプレビューでも2本のバーが接するだけです。1本の長いバーにはなりません。2行が1つの文の前半と後半で、まとめて読ませたいなら結合してください。別々の内容で、たまたま間に沈黙があっただけなら、前の字幕を長く表示します。

動かす向きがこのページの要点で、どちらでも必ず成功します。2つの字幕は必ず端と端を接した状態にできるので、入力した値には正確に届きます。前の字幕は次の字幕が始まる位置で終わり、それを越えることはありません。

どちらの端を動かすかは選べます。既定の終了では前の字幕が長くなり、開始では次の字幕の開始を前へ引き戻して前の字幕はそのままです。開始は、次の字幕が本来より遅く書かれている場合、つまり前の字幕が消えた瞬間に出るべき行に向いています。ほかのページと同じく、ファイルはブラウザタブ内で読み書きされ、アップロードはありません。SRT、WebVTT、ASS、SSA、SBV、SAMI、MicroDVD、TTML、JSON、CSV に対応し、内容が変わらなかったファイルはバイト単位でそのまま返ります。

例

2つの間隔を両方埋める

入力

1
00:00:01,000 --> 00:00:02,000
First line.

2
00:00:06,000 --> 00:00:07,000
Second line.

3
00:00:07,420 --> 00:00:08,000
Third line.

出力

1
00:00:01,000 --> 00:00:06,000
First line.

2
00:00:06,000 --> 00:00:07,420
Second line.

3
00:00:07,420 --> 00:00:08,000
Third line.

上限が0なので両方の間隔が完全に閉じます。1行目は1秒ではなく5秒、2行目は 1000 ms ではなく 1420 ms 表示されます。3つ目は動かず、ファイル内の字幕は3つのままです。テキストは結合されていません。どちらの場合も、変わったのは間隔の左側の字幕です。

上限ちょうどの間隔と、1ミリ秒超えた間隔

入力

1
00:00:01,000 --> 00:00:02,000
First.

2
00:00:02,200 --> 00:00:03,000
Second.

3
00:00:03,201 --> 00:00:04,000
Third.

出力

1
00:00:01,000 --> 00:00:02,000
First.

2
00:00:02,200 --> 00:00:03,001
Second.

3
00:00:03,201 --> 00:00:04,000
Third.

上限が 200 のとき、ちょうど 200 の間隔は上限内なのでそのまま、201 の間隔はちょうど 200 に縮み、2つ目の字幕が1ミリ秒だけ後ろへ延びます。この2つを別扱いにするのは意図的です。ちょうど上限の間隔は要件を満たしており、作業対象にすると、1ミリ秒低い上限がファイル内のすべての間隔を変えてしまいます。

反対の端を動かした同じファイル

入力

1
00:00:01,000 --> 00:00:02,000
First.

2
00:00:05,000 --> 00:00:06,000
Second.

出力

1
00:00:01,000 --> 00:00:02,000
First.

2
00:00:02,000 --> 00:00:06,000
Second.

上の実行で終了ではなく開始を選んだ結果です。1つ目は元の時刻のまま、2つ目は1つ目が消えた瞬間に現れ、長くなったのは2つ目です。表示時間は1秒ではなく4秒になります。どちらも間隔を閉じますが、どちらの行の時刻を信じるかが違います。

よくある質問

間隔を埋めると字幕は1つに結合されますか?

されません。それがこのページと、隣り合う字幕を結合するページの違いです。ここでは2つの文は2つの字幕のままで、それぞれのテキスト、スタイル、位置、単語ごとのタイミングを保ち、字幕数も変わりません。結合すると1つの字幕になり、2つ目のスタイルは失われます。

間隔の上限を0にすると何が起きますか?

すべての字幕が次の字幕の開始位置で終わり、暗いフレームを挟まずに連続して表示されます。手作業で切ったファイルや別ツールから変換したファイルで最初に試す設定で、タイムラインでは離れたバーが途切れない1本の帯になります。0は空欄ではなく、実際の指定です。

間隔を埋めるとどちらの字幕の時刻が変わりますか?

選んだ端です。既定の終了では前の字幕の終了時刻が後ろへ動き、次の字幕はミリ秒単位でそのままです。前の字幕が長く表示されるだけです。開始では次の字幕の開始が前へ動き、前の字幕は触りません。両方を動かす設定はありません。両方を動かすと間隔だけでなく、2つの位置そのものが変わるからです。

前の字幕が終わる前に次の字幕を始めることはできますか?

できません。動くのは組の片方の端だけで、もう一方の境界で止まります。間隔を閉じると2つは接しますが、追い越すことはありません。前の字幕がすでに次の開始より後に終わっているファイルは、間隔ではなく重なりがあり、さらに長くすると悪化します。先に重なりを除去するページを使ってください。

上限を一部の間隔より大きく設定するとどうなりますか?

それらの間隔は元のままではなく、ちょうど上限まで広がります。「これより広い間隔を残さない」という指定なので、上限を超える間隔はすべてそこまで引き寄せられ、ファイル先頭の字幕は大きく長くなることがあります。非常に大きな値なら対象がなくなり、間隔をまだ確認していないファイルの安全な初回実行になります。

実行しても各字幕のスタイルは残りますか?

すべて残ります。テキストに触れず、字幕も結合しないので、斜体は斜体のまま、ASS の字幕はスタイル、位置、レイヤーを保ち、WebVTT の字幕はリージョンや配置を保ちます。変わるのは各間隔の左側の終了時刻、開始を選んだ場合はその開始時刻だけです。

関連ツール