日本語

ビデオと字幕 · 字幕ツールキット

字幕のリタイミングの仕組み: すべてのキューを固定オフセットでシフトする

· 仕組み

字幕 タイムコード ブラウザ処理

字幕キューの間隔がビデオ タイムラインの早い方にシフトする
オリジナル ToolAcre ベクトル イラスト

すべてのキャプションが同じ量だけ遅いか早い場合、修正はタイムコード演算です。この投稿では、リタイムによって各キューの開始と終了がどのようにシフトされるか、ゼロで何が起こるか、そしてそもそもオフセットを測定する方法について説明します。

すべてのキャプションは話者の 2 秒後に表示されます。一定のオフセットが引き起こす症状です。

すべてのキャプションが一致する音声ラインの約 2 秒後に表示される場合、キュー ブロックを個別に移動する必要はありません。一定のオフセットは、同じ演算を各キューに適用します。値が一定であるという事実が診断となります。キャプションが正しく開始され、40 分を超えるとさらに離れていく場合は、再スケーリングまたはフレーム レートの修正は別の操作となります。ファイル全体を触る前に、先頭、中間、末尾を確認してください。

オフセットの測定 – 会話の最初の明確な行で一時停止し、ビデオ クロックとキューの開始時刻を比較します。

明確な会話の 1 行で一時停止し、それが始まるビデオの時間をメモします。最初に一致する字幕の開始時刻と比較します。オーディオが 00:01:10.000 で始まり、字幕が 00:01:11.850 で始まる場合、キューは 1,850 ミリ秒遅れているため、調整は -1,850 ms になります。ビデオの後半にある 2 番目のチェックポイントでは、同じ違いが持続するかどうかをテストします。オフセットは録音を観察することで得られます。このツールは無関係な単語からそれを推測することはできません。

タイムコード演算 - HH:MM:SS,mmm をミリ秒に変換し、オフセットを追加し、逆変換します。

SRT はキューを HH:MM:SS,mmm として表現します。 WebVTT は通常、ミリ秒の前にドットを使用します。 (((時間×60+分)×60+秒)×1000)+ミリ秒を使用して、コンポーネントをミリ秒に変換します。選択したオフセットを 1 回加算し、結果を時、分、秒、および 3 桁のミリ秒に分解します。時間を整数で維持すると、数百のキューを処理するときに発生する一連の浮動小数点の丸めエラーが回避されます。パーサーとシリアライザーは、算術演算の後に形式固有の句読点を選択します。

両方のキュー境界をシフトすると、ゼロにクランプされている場合を除いてデュレーションが維持されます。

通常のキューの場合、開始と終了に同じオフセットが追加されます。02:00.000 から 02:03.500 までのキャプションは、シフトの前後 3.5 秒続きます。開始部分のみを変更すると、拡張されてしまいます。末尾のみを変更すると圧縮されます。 ToolAcre の shiftCues は、解析されたキューをマップし、キャプション テキストを書き換えることなく両方の値を更新するため、句読点やスピーカー ラベルは同じキューに付加されたままになります。最初の行とそれ以降の行をチェックして、選択した操作がフレーム レートの再スケールではなくシフトであることを確認します。

ゼロでのクランプ — ビデオの開始前に移動するキューはどうなるのか、および負の時間を設定できない理由

負のタイムスタンプは有効な字幕時間ではありません。 ToolAcre は、ゼロと交差する開始または終了をゼロにクランプし、影響を受けたキューの数を報告します。これは継続時間の保持に対する重要な例外です。元々 0.8 ~ 2.8 秒の長さで -1.85 秒シフトされたキューは、負の開始と 0.95 秒の終了を持つため、その継続時間は 2 秒ではなくなります。初期のキューは両端をゼロにクランプする可能性があります。開始付近で結果が正確であると主張するのではなく、クランプされた開始キューを確認または削除してください。

実用的な例: 40 分間の講義のキャプションを -1,850 ms だけシフトする — キューの前後、開始、中間、終了でチェック

40 分間の講義の場合、00:10.000 ~ 00:12.400 と 20:15.000 ~ 20:17.000 の合図を考慮してください。 −1,850 ms シフトにより、00:08.150 ~ 00:10.550 および 20:13.150 ~ 20:15.150 が生成されます。 39:55.000 の最後のキューも 1.85 秒前に移動します。ダイアログからの距離は 3 つのチェックポイントすべてで一定のままである必要があります。最初のキューは正しいのに、終了キューが依然として何秒も同期していない場合は、変更を元に戻し、代わりにドリフトを調査します。

これでカバーされないもの — 時間の経過とともに増大するドリフト。固定オフセットでは修正できません。

固定オフセットでは、異なる速度で編集されたオーディオ トラック、フレームが欠落しているビデオ カット、可変フレーム レート変換、または別のリリースに合わせたキャプションを解決できません。また、字幕ファイルにないダイアログを復元することもできません。 SRT と VTT の間のフォーマット変換は別の操作です。リタイミングは、単語を翻訳したり、アクセシビリティの説明を改善したりすることを前提とすべきではありません。人間がビデオに対する代表的なキューを確認するまで、ソース ファイルを保管してください。

要点: 一度測定し、すべてをシフトする — 字幕ツールキットのリタイム機能がファイル内のすべてのキューにオフセットを適用する方法

一定の差を 1 回測定し、それをすべての開始と終了に適用し、ゼロと交差するキューに特に注意を払います。 Subtitle Toolkit はミリ秒単位の解析と書き込みをローカルで行うため、キャプション テキストはアップロードされません。重要なチェックは、ダウンロードが完了したかどうかではありません。それは、最初、中間、最後のセリフがその合図と一致するようになったということです。