ASS ファイル形式とは?
拡張子 .ass を持つファイルには、SubStation Alpha 標準を使用してフォーマットされたビデオ字幕テキスト作成用のスクリプトが含まれています。.ass ファイルは、ビデオ字幕の作成と編集のためのオープンソースのマルチプラットフォームツールであるAegisubで作成および編集されるのが一般的です。.ass ファイルは、4つまたは5つのセクションに分かれたプレーンなUTF-8テキストで、以下の内容が含まれています。
- *Script Info* - バージョン、作成者、タイトル、および画面フォーマットと解像度に関連する一般情報。
- *V4+ Styles* - 以下を含むテキストの書式設定とスタイルに関する情報:
- フォント
- フォントサイズ
- 色
- 配置
- テキストの整列
- *Events* -
H:MM:SS.cc形式のイベントリストとテキストのタイミング、および行ごとの追加属性。 - *Pictures* - UUEエンコードされた画像(オプション)。
- *Fonts* - 埋め込みフォントデータ(オプション)。
.ass 形式は、SSA v4+ 仕様に密接に従ったSubStation Alpha標準の拡張です。基本的なSSA v4標準に準拠するファイルは .SSA 拡張子を使用します。.ass 字幕スクリプトは、*ハードサブ*と呼ばれるプロセスでビデオに字幕をオーバーレイするために使用されます。Matroska マルチメディアコンテナも .ass 字幕をサポートしており、別のストリームとして埋め込むことができます。これは *ソフトサブ*として知られる手法です。.SRT のような単純な形式と比較して、.ass は行ごとのカラオケタイミング効果、モーション追跡、およびアルファチャンネルの透明度を可能にします。
セキュリティと安全性
リスク: LOW.ass はプレーンテキストであり、コードを実行することはできないため、ファイルを開くことは安全です。2つの小さな注意点があります。(1) メディアプレイヤーを最新の状態に保ってください。数年前の研究(«Subtitle Hell», 2017)では、不正な形式の字幕解析が一部のプレイヤーで悪用される可能性があることが示されました。(2) ASSは外部フォントを参照でき、非常に重いタイプセッティングやカラオケは、非力なプレイヤーに一時的な負荷をかけることがありますが、どちらもセキュリティリスクではありません。非ラテン文字が正しく表示されるよう、UTF-8で保存してください。
形式の詳細
概要ASS ファイルを開くプログラム
技術的詳細
詳細仕様| ファイルエンコーディング | UTF-8プレーンテキスト。オプションでUTF-8 BOM (EF BB BF) が先行する場合がある |
| MIMEタイプ | text/x-ssa |
| ファイル識別 | バイナリのマジックバイトはありません。ファイルは常に最初の行のセクションヘッダー `[Script Info]` で始まります |
| 必須セクション | `[Script Info]`, `[V4+ Styles]`, `[Events]` |
| オプションセクション | `[Fonts]` (埋め込みフォントデータ) および `[Graphics]` (UUEエンコードされた画像) |
| タイミング形式 | `H:MM:SS.cc` - 時、分、秒、センチ秒。字幕イベントごとに10ミリ秒の解像度を提供 |
| インラインオーバーライドタグ | `{}` で囲まれたスタイルオーバーライド。例:`{\b1}` (太字オン), `{\i1}` (斜体), `{\pos(x,y)}` (絶対位置), `{\an}` (テンキー配置) |
| カラオケサポート | `{\k}` (ワイプ), `{\kf}` (塗りつぶしスイープ), `{\ko}` (アウトラインスイープ) タグによる音節レベルのタイミング |
| カラー形式 | ABGR 16進表記。例:`&H00FFFFFF&`。プライマリ、セカンダリ、アウトライン、バックカラーの各チャンネルが独立したアルファバイトを保持 |
| アニメーションタグ | `{\move()}`, `{\fade()}`, `{\t()}` により、位置アニメーション、フェード遷移、および任意のスタイルパラメータのタイミング指定された補間が可能 |
| 描画モード | `{\p1}` によって有効化されるベクターシェイプレンダリング。画面上のグラフィックスのための線分、ベジェ曲線、B-スプラインコマンドをサポート |
| レイヤーフィールド | 各 `Dialogue:` イベントは `Layer` 整数を保持します。値が高いほど上にレンダリングされ、1つの字幕ストリーム内でのマルチレイヤー合成が可能 |
| 改行制御 | `[Script Info]` 内の `WrapStyle`: 0 = スマートラップ, 1 = 行末改行, 2 = ラップなし, 3 = 逆スマートラップ |
| 衝突処理 | `Collisions` プロパティが重なる行を制御します。«Normal» は重なりを避けるために行を上に押し上げます。«Reverse» は宣言された位置にそのまま残します |
| コンテナへの埋め込み | Matroska (`.mkv`) ファイル内に、コーデックID `S_TEXT/ASS` の字幕トラックとしてネイティブに保存可能 |
| リリース日 | Advanced SubStation Alpha (ASS) early 2000s, extending SubStation Alpha (SSA, 1998) |
| オープンスタンダード | はい · ロイヤリティフリー |
| 仕様書 | www.tcax.org |