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

字幕を時間範囲で切り出す

タイミング時間範囲の切り出しと分割
字幕テキストを貼り付けることもできます

オプション

この瞬間より前に表示されているものはすべて除きます。それより前に始まっていても、この瞬間にまだ表示されている字幕は残し、端で切ります。空にするとファイルの先頭から切り出します。

この瞬間以降に始まるものはすべて除き、この瞬間を越えて続く字幕はそこで切ります。この瞬間自体は範囲に含まれません。ちょうどこの時刻に始まる字幕は次の区間に属します。空にするとファイルの末尾まで切り出します。

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

このページは、字幕ファイルのうち時間の窓の内側に入る部分だけを残し、残りを取り除きます。開始だけ、終了だけ、あるいは両方を渡すと、ファイルを1回たどります。窓の外に完全にある字幕は削除され、端のどちらかをまたぐ字幕はその端で切られ、内側に完全にある字幕はそのまま通ります。

規則は重なりであり、「どこから始まるか」ではありません。4秒に始まって5秒でもまだ画面にある字幕は、5秒から10秒の窓の一部なので残ります。開始はちょうど5秒まで前へ引かれます。これがファイルの切り出しとタイムラインの一部を動かすことの違いです。開始時刻で判定するページはその字幕を削除して台詞を1行道連れにし、終了で判定するページはまだ始まっていない字幕を残します。

窓の閉じる瞬間は含まれません。窓が終わる位置ちょうどから始まる字幕は、この区間ではなく次の区間に属します。窓が開く位置ちょうどで終わる字幕は、すでに画面から消えています。半開の境界は、同じファイルの隣り合う2つの範囲を切り出して同じ行が両方に出るまで、細かすぎるように見えます。

すべてこのブラウザタブ内で起きます。ファイルはローカルで読まれ、切られ、書き戻され、1バイトもアップロードされません。SRT、WebVTT、ASS、SSA、SBV、SAMI、MicroDVD、TTML、JSON、CSV を受け付けます。MicroDVD は時刻がフレーム番号なので、フレームレートを欄に入れる必要があります。

例

ファイルの途中から10秒の窓を切り出す

入力

1
00:00:01,000 --> 00:00:02,500
Before the window.

2
00:00:04,000 --> 00:00:06,000
Crosses the start.

3
00:00:07,000 --> 00:00:08,000
Fully inside.

4
00:00:09,000 --> 00:00:11,500
Crosses the end.

5
00:00:14,000 --> 00:00:15,000
After the window.

出力

2
00:00:05,000 --> 00:00:06,000
Crosses the start.

3
00:00:07,000 --> 00:00:08,000
Fully inside.

4
00:00:09,000 --> 00:00:10,000
Crosses the end.

5つの字幕、4つの異なる結果、1回の処理です。1つ目は窓が開いた時点ですでに消えており、5つ目はまだ来ていないので、どちらも削除されます。2つ目は4秒に始まりましたが5秒でも話していたので残り、開始が 5000 ms へ引かれます。4つ目は最後の1.5秒を同じように失います。3つ目は一度も触られません。

下限だけを指定して導入を切る

入力

1
00:00:00,500 --> 00:00:02,000
Intro card.

2
00:00:02,500 --> 00:00:04,000
Still talking over the logo.

3
00:00:05,000 --> 00:00:06,000
First line of the programme.

出力

2
00:00:03,000 --> 00:00:04,000
Still talking over the logo.

3
00:00:05,000 --> 00:00:06,000
First line of the programme.

終了の欄が空なので閉じる境界がなく、窓はファイルの終わりまで続きます。導入のカードは削除され、3秒の印をまたいで話された行はそこで切られます。空欄はゼロではありません。終了の欄に0を入れると空の窓になり、何もしなかったとページが表示します。

ファイルより広い窓

入力

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

2
00:00:03,000 --> 00:00:04,000
Also short.

出力

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

2
00:00:03,000 --> 00:00:04,000
Also short.

両方とも内側にあるので、どちらもバイト単位でそのまま返ります。窓の開始位置へずらされることはなく、1秒の字幕は窓が0から開いても1秒のままです。切り出しは外側を取り除くだけで、内側を動かしません。

よくある質問

窓より前に始まって窓の中でまだ表示されている字幕はどうなりますか?

残り、開始時刻が窓の開く瞬間ちょうどまで前へ引かれます。このページが適用する規則は重なりで、字幕の一部でも窓の内側にあればその部分が結果に属します。ファイルの切り出しとタイムラインの一部を動かすことの最も重要な違いで、境界をまたいで話された行がそこで切っても消えない理由です。

切り出すと残った字幕の番号は振り直されますか?

振り直されません。字幕はファイル内で持っていた番号を保つので、2番から始まる区間を残しても2番から始まり、番号の飛びが取り除かれたものを示します。振り直しは頼んでいない行への別の変更になり、行を確認したいときに切り出したファイルを元と照らし合わせにくくします。

窓が開く位置ちょうどで終わる字幕が消えるのはなぜですか?

窓が開くときにはすでに画面から消えているからです。境界は後に続く窓に属します。反対側も同じ規則で、窓が閉じる位置ちょうどから始まる字幕は次の区間に属します。両方の境界が半開なので、同じファイルの隣り合う2つの範囲が共有する端の字幕を奪い合いません。

2つの欄の片方を空のままにできますか?

できます。それが通常の使い方です。開始の欄が空なら窓はファイルの先頭から、終了の欄が空なら終わりまで続きます。開始だけを入れれば導入を、終了だけを入れれば末尾を切ります。両方が空、あるいは閉じる瞬間が開く瞬間より後でない場合は、空のファイルを返すのではなく何もしなかったと報告します。

字幕を切り出すと失われたものとして報告されますか?

いいえ。窓の外を取り除くことがこのページの役目なので、損傷として報告しません。結果の行は削除した字幕の数と端で切った数を伝えます。ほかの処理の副作用として字幕を落とすページとは違い、そちらでは失われた情報のレポートが削除に触れる唯一の場所になります。

どの字幕形式を切り出せて、なぜ一部は外れているのですか?

SRT、WebVTT、ASS、SSA、SBV、SAMI、MicroDVD、TTML、JSON、CSV です。プレーンテキストと LRC は受け付けません。切り出しは各字幕の両端を読み書きしますが、その2形式は終了時刻をファイルに持ちません。次の字幕の開始から導いた終了を書き戻すと次の開始を書き換えることになり、出力は入力とバイト単位で同じになって、ページが行ったことについて嘘をつきます。

関連ツール