このプロジェクトについて

bili_add_onは、動画にBilibiliの弾幕をオーバーレイするためのコマンドラインツールです。このツールは、Bilibiliの動画IDから弾幕XMLを自動的に取得する機能や、ローカルのXMLファイルを読み込む機能を備えています。 主な機能と特徴: 1. 多様な入力モード: - overlay:ローカルの動画ファイルに弾幕を重ねます。標準入力(STDIN)および標準出力(STDOUT)のパイプ操作をサポートしています。 - capture:キャプチャデバイス(カメラや画面キャプチャなど)からリアルタイムで映像を入力し、弾幕を重ねます。 - list-devices:利用可能なキャプチャデバイスを一覧表示します。 2. レンダリングとカスタマイズ: - スクロール、下部固定、上部固定、逆方向など、多様な弾幕モードをサポートしています。 - 弾幕の不透明度、表示領域(上下境界の比率)、フォントサイズのスケーリング、スクロール速度、行間をカスタマイズ可能です。 - グリフレベルのフォントフォールバックメカニズムを備えており、ユーザー定義フォント、システムフォント、プロジェクト内蔵フォント(源ノ角ゴシックなど)をサポートしています。 3. エンコーディングとパフォーマンス: - 動画のエンコード・デコードにはffmpegを利用します。 - NVIDIA NVENC、AMD AMF、Intel QuickSyncなどのハードウェアアクセラレーションによるエンコードをサポートし、libx264ソフトウェアエンコードのプリセット調整も提供します。 - デコード、レンダリング、エンコードの3段階並列パイプラインアーキテクチャを採用しています。 4. 音声処理: - デフォルトで元の動画の音声を保持します。また、--audioオプションを使用して外部音声ソースを指定し、タイムラインのトリミングや同期を行うことも可能です。 本ツールはMITライセンスの下でオープンソースとして公開されています。