aribb24.js
アライブビーニジュウヨンジェイエス
日本のデジタル放送の字幕と文字スーパー(ARIB STD-B24)を、Webブラウザの動画の上に描くためのJavaScriptライブラリです。MITライセンスのオープンソースで、EPGStationやKonomiTVといったブラウザで番組を見るソフトの字幕表示に使われています。
- 種別
- ARIB字幕のレンダラー(描画ライブラリ)
- 公開場所
- GitHub(monyone/aribb24.js)、npmパッケージ aribb24.js
- ライセンス
- MIT License
- 主な言語
- TypeScript
- 対応する字幕
- ARIB STD-B24の字幕と文字スーパー(TR-B14・TR-B15の運用)、ブラジルのABNT NBR 15606-1
- 字幕の受け取り方
- mpegts.jsが渡すPESのプライベートデータ、MPEG-TSやHLSのID3タイムドメタデータ
- 描画の方法
- Canvas、SVG、HTML、テキスト
- 付属のCLIツール
- ts2sup、ts2vobsub、ts2ass、ts2imsc、ts2b36
- 組み込んでいる主なソフト
- EPGStation、KonomiTV、web-bml
録画した番組をブラウザで再生すると、テレビでは出ていた字幕が消えてしまう。放送の字幕は映像に焼き込まれておらず、日本独自の符号で別に送られているので、ブラウザの動画プレーヤーはそのままでは読めません。aribb24.jsは、その字幕をブラウザの中で解いて動画に重ねるためのライブラリです。
aribb24.jsが使われる場面
使われているのは、テレビの放送や録画をWebブラウザで見るためのソフトです。録画管理ソフトのEPGStationは、Webでの字幕と文字スーパーの表示にaribb24.jsを使っています。テレビ視聴用のメディアサーバーであるKonomiTVや、データ放送をブラウザで表示するweb-bmlも、字幕の表示にaribb24.jsを組み込んでいます。
放送局や配信事業者の検証用の画面、字幕付きの番組アーカイブを社内で閲覧するシステムのように、ブラウザで放送のTSを扱う場面なら同じ使い方ができます。npmのパッケージとして配布されているので、自分で作るプレーヤーにも組み込めます。
字幕を別の形式のファイルに書き出すコマンドラインのツールも付いています。PGS(.sup)、VobSub、ASS、IMSCの画像プロファイル、ARIB STD-B36への変換があり、録画のTSから字幕だけを抜き出して別の工程に回すときに使えます。
aribb24.jsの仕組みと組み込み方
扱うのはARIB STD-B24の字幕と文字スーパーで、運用規定のTR-B14とTR-B15に沿った放送に対応します。ブラジルのデジタル放送の字幕規格(ABNT NBR 15606-1)にも対応しています。
組み込みは、字幕のデータを受け取る「Feeder」、画面に描く「Renderer」、両者と動画をつなぐ「Controller」の3つを組み合わせる形です。字幕の受け取り方は次の2通りです。
- mpegts.jsでTSを再生し、字幕のPESをイベントで受け取ってFeederに渡す
- TSやHLSの中に、字幕をID3のタイムドメタデータとして入れて届ける。tsreadexというツールで変換したものを想定している
描画の方法はCanvas、SVG、HTMLの断片、テキストから選べます。放送用の追加記号(ARIB外字)は、パブリックドメインのフォント「和田研中丸ゴシック2004ARIB」から取り出したグリフのデータで描きます。
aribb24.jsで字幕が出ないときに確かめること
字幕が出ないときは、次の順に見ていくと原因を絞れます。
- ブラウザに届いた時点で字幕のデータが残っているか。ffmpegで映像をH.264などに変換するとき、字幕のストリームを落としていることがある
- HLSで配信している場合、字幕がID3のタイムドメタデータとして入っているか
- 字幕と文字スーパーのどちらを受け取る設定になっているか、何番目の言語を選んでいるか
- 記号が豆腐(□)になる場合は、フォントの設定と、外字を私用領域(PUA)で扱う設定が合っているか
よくある質問
aribb24.jsは無料で使えますか
MITライセンスで公開されているので、著作権表示とライセンス文を残せば無料で使えます。商用のソフトに組み込むこともできます。
aribb24.jsで4K放送の字幕は表示できますか
aribb24.jsが対象にしているのはARIB STD-B24の字幕です。新4K8K衛星放送の字幕はTTMLを土台にした別の方式なので、この用途には向きません。
TSファイルの字幕をSRTに変換できますか
付属のツールが出力する形式は、PGS、VobSub、ASS、IMSC、ARIB STD-B36です。SRTが欲しい場合は、ASSに書き出してから変換するか、SRTを出せる別のツールを使います。字幕の形式ごとの違いは字幕ファイル形式の早見表で整理しています。
この用語を扱ったコラム
-
クローズドキャプションとは?YouTubeのCCボタンと字幕の仕組み YouTubeなどの動画プレーヤーにある「CC」ボタンで切り替わるのがクローズドキャプションです。映像に焼き込むオープンキャプションとの違いから、米国のCEA-608/708、日本のARIB方式、WebVTT/SRTまで規格の全体像を解説します。 放送技術解説 -
字幕ファイル形式の早見表|SRT・WebVTT・TTML・ARIBの使い分け 字幕ファイルの形式は機能の優劣ではなく、再生する場所の違いで分かれています。SRT・WebVTT・TTML(IMSC)・ARIB STD-B36の4系統を、スタイル指定・位置指定・ルビ・主な行き先の軸で比較し、変換で何が落ちるか、どの形式を原本にすべきかを整理します。 AI字幕生成
似ている形式との違い
| 名前 | 主に使う場面 | aribb24.jsとの違い |
|---|---|---|
| libaribcaption | ffmpegやプレーヤーでの字幕デコード | C++で書かれたARIB字幕のデコーダ兼レンダラー。ffmpegなどに組み込んで使い、aribb24.jsはブラウザ上での表示が主な用途 |
| b24.js | ブラウザでのARIB字幕表示 | aribb24.jsが参考にした先行実装。v1はb24.jsのAPIと互換を持たせていた |
| web-bml | データ放送の表示 | データ放送(BML)の画面を描くソフト。字幕の表示にはaribb24.jsを使っている |
関連する用語
最終更新