ビデオと字幕 · 字幕ツールキット
字幕ファイル内のタグが離れていると、プラットフォームでのキャプションのアップロードが中断される理由
· なぜそれが重要なのか
字幕 テキスト処理 webvtt
プラットフォームはキャプションのアップロードを厳密に、多くの場合サイレントに解析します。この投稿では、字幕ファイルが拒否されたり表示がおかしくなる一般的な理由、タグやコードの書式設定が通常の原因である理由、クリーンな標準ファイルが問題を回避する方法について説明します。
アップロードは受け入れられ、キャプションにはリテラルのタグが表示されます - 汚れたファイルの静かな失敗
最悪の結果は拒否ではありません。アップロードが拒否された場合、フォームを見ている間に何か問題があることがわかります。一般的な結果は、承認され、視聴者に独自のマークアップを表示するキャプションが続きます。これは、アップロード チェックとレンダリング パスが異なるソフトウェアであり、異なる質問をするためです。
アップロード チェックでは通常、ファイルがキューに解析されるかどうかが尋ねられます。レンダリングでは各キューの内容をどうするかが尋ねられ、見慣れないタグを無視するパーサーはそれをテキストとして描画します。どちらのステップも、設計どおりに実行されました。
プラットフォームが実際に受け入れるもの — プレーンな SRT と、予測可能な構造を備えた WebVTT、余分なものはほとんど許容されない
プラットフォームが受け入れるものは、ツールが出力するものよりも狭いです。実際には、これはプレーン SRT または予測可能な形状を持つ WebVTT を意味します。つまり、空白行、タイムコード行、テキスト行などで区切られたブロックです。余分なものに対する許容度は低く、さらに重要なのは文書化されていないため、その形状を超えるものは機能ではなくリスクであると考えるのが安全です。
これは保守主義そのものではありません。任意のマークアップを受け入れるプラットフォームは、Web、モバイル、テレビのクライアント全体で一貫してマークアップを表示する方法を決定する必要がありますが、これはキャプション ファイルを受け入れるよりもはるかに大きな負担となります。
通常の原因 — HTML のようなタグ、ASS スタイルのコード、BOM、混合行末、および空白のキュー
繰り返し発生する犯人は少数です。イタリック体、スピーカーボイス、およびキュークラスの山括弧タグは、それらをサポートする形式からの変換後も存続します。中括弧で区切られたオーバーライド コードは SubStation フォーマットから到着し、その外部では何も意味しません。ファイルの先頭にあるバイト オーダー マークは、最初のインデックス番号に付加されます。クロスプラットフォーム編集によるブロック分割の中断による行末の混在。マークアップが削除された後にテキストが空になったキューは、タイムスタンプ付きの空白のままになります。
これらはどれも珍しいものではありません。これらは、各ステップが個別に適切であった変換チェーンの通常の出力であるため、エディターでは問題なく見えるファイルに表示されます。
あるプラットフォームが別のプラットフォームが拒否するものを許容する理由 — 類似したアップロード フォームの背後にある異なるパーサー
プラットフォームが異なれば、許容されるサブセットも異なるため、障害の診断がわかりにくくなります。同じファイルを 1 つのサービスでクリーンにアップロードして正しくレンダリングし、2 つ目のサービスでマークアップをアップロードしてレンダリングし、3 つ目のサービスで拒否しても、実際の原因を示すエラー メッセージは表示されません。ファイルは試行間で変更されませんでした。 3 人のパーサーが同意しませんでした。
したがって、1 つのプラットフォームを参照として扱うのは間違った本能です。最も寛容なサービスで動作するファイルは、他のサービスについては何も伝えません。最も厳密なパーサーは、ファイルが移植可能かどうかを定義するパーサーです。
作業例: 1 つのファイル、3 つのアップロード - 同じ散らかったものがどのように異なって表示され、掃除後に消えるか
60 個のキューのフレーム上部オーバーライド コード、40 個の強調タグ、およびバイト オーダー マークを含む 1 つのエクスポートを取り上げます。 3 つのサービスにアップロードすると、どこでも受け入れられる可能性があります。最初の場合、タグが尊重され、オーバーライド コードが文字通り描画されます。 2 番目では両方ともテキストとして表示されます。 3 番目では、マークは最初のキューにかかりますが、これはまったく表示されず、冒頭の行は通常タイトルであるため、誰も気づきません。
一度クリーニングすると、ソースにある 3 つのクラスがすべて削除されます。山括弧タグと中括弧コードは置き換えられ、残された空白は折りたたまれ、削除によって空になったキューはタイムスタンプ付きの空白として出力されるのではなく削除され、ファイルは 1 から連続して再番号付けされたキューで書き換えられます。同じ出力が 3 つのサービスすべてに送信されます。
これでカバーされないもの — プラットフォーム固有のスタイル ガイド、1 行あたりの文字数制限、および焼き付けられたキャプション
これは編集上の適合性ではなく、構造的な移植性を対象としています。行の長さ、最大文字数、スピーカー ラベルの位置、効果音の処理に関するプラットフォーム スタイル ガイドは、クリーン ファイルでは自動的には満たされない別個の要件です。構造的に完璧なキャプション ファイルでも、スタイル ガイドに違反する可能性があります。
焼き付けられたキャプションはまったく異なるメカニズムです。ビデオ フレームにレンダリングされるテキストはキャプション ファイルではないため、オフに切り替えることはできず、ここで説明する内容の影響を受けません。
要点: 一度クリーンアップすれば、どこにでもアップロード — 字幕ツールキットのクリーン機能と変換機能がプラットフォームに適したファイルを生成する方法
一度クリーンアップして、どこにでも同じファイルをアップロードします。別の方法として、プラットフォームごとに個別のエクスポートを維持すると、マスターとの同期が失われる可能性のあるファイルの数が増加し、それらのいずれからも根本的な混乱が除去されません。
クリーンアップと変換を一緒に実行し、報告された問題をアップロード後ではなくアップロード前に読んでください。問題は番号によってキューに名前を付けます。これは、ファイルに問題があることが分かることと、どの行を見るべきかを知ることの違いです。