alass
字幕を映画に同期させるコマンドラインツールです。
自動的に修正できます
アラインメントプロセスは、高速で正確であるだけでなく、言語に依存しないものでもあります。これは、字幕を異なる言語で映画に合わせることができることを意味します。
alass
、「自動言語に依存しないサブタイトル同期」の略です。理論とアルゴリズムは、私の学士の論文に文書化されており、私の学士号のプレゼンテーションに要約されています。
ここから最新の実行可能ファイルを入手してください!アーカイブをダウンロードして抽出するだけです。ファイルalass.bat
はコマンドラインツールです。
ここから最新の実行可能ファイルを入手してください!実行可能ファイルを実行するには、 ffmpeg
とffprobe
インストールする必要があります。環境変数ALASS_FFMPEG_PATH
(デフォルトffmpeg
)およびALASS_FFPROBE_PATH
(デフォルトffprobe
)でパスを変更できます。
最も基本的なコマンドは次のとおりです。
$ alass movie.mp4 incorrect_subtitle.srt output.srt
alass
使用して、誤った字幕を別のサブタイトルに合わせることもできます。
$ alass reference_subtitle.ssa incorrect_subtitle.srt output.srt
さらに、アルゴリズムの導入や削除を避けるために、アルゴリズムがどれだけ試行しようとしているかを調整できます。
# split-penalty is a value between 0 and 1000 (default 7)
$ alass reference_subtitle.ssa incorrect_subtitle.srt output.srt --split-penalty 10
5〜20の値が最も便利です。 20を超えるものは、いくつかの重要なスプリットを逃し、5を下回るものはすべて、多くの不要なスプリットを導入します。
サブタイトルのみをシフトしたい場合は、 --no-splits
を導入せずに使用できます。
# synchronizing the subtitles in this mode is very fast
$ alass movie.mp4 incorrect_subtitle.srt output.srt --no-splits
現在サポートされているのは、 .srt
、 .ssa
/ .ass
、および.idx
ファイルです。すべての一般的なビデオ形式は、参照ファイルにサポートされています。
ビデオからのオーディオの抽出には約10〜20秒かかります。通常、アライメントを計算するには5〜10秒かかります。
通常、アライメントは完全です - 「良い字幕」をどのように厳格に分類するかによって、「良い字幕」の割合は約88%から98%です。 OpenSubtitles.org
からランダム字幕をダウンロードすると、約50%のエラー率がありました(サンプルサイズn = 118)。同期後、テストされたデータベース内のすべてのサブタイトル行(サブタイトルファイルではない)の
(おそらく完璧ではない)参照サブタイトルと比較してください。
錆と貨物を取り付けてから走ります。
# this will create the lastest release in ~/.cargo/bin/alass-cli
$ cargo install alass-cli
このプロジェクトが使用する音声活性モジュールはCで記述されています。したがって、このプロジェクトをコンパイルするには、Cコンパイラ( gcc
またはclang
)が必要です。
ビデオファイルを使用してalass-cli
使用するには、 ffmpeg
とffprobe
インストールする必要があります。生のオーディオデータを抽出するために使用されます。環境変数ALASS_FFMPEG_PATH
(デフォルトffmpeg
)およびALASS_FFPROBE_PATH
(デフォルトffprobe
)を使用して、 alass
が使用するパスを設定できます。
ソースコードからプロジェクトを構築して実行する場合:
$ git clone https://github.com/kaegi/alass
$ cd alass
$ cargo build
$ cargo run -- movie.mp4 input.srt output.srt
cargo build
にはすべてのパラメーターが表示されます。 cargo install
やcargo run
にも使用できます。
コンパイル時間中にffmpeg
ダイナミックライブラリとしてリンクすることもできます。ライブラリの実装は、オーディオを約2〜3秒速く抽出できます。残念ながら、コンパイルするのは難しく、エラー処理は非常に基本的なものであり、バグがまだある可能性があります。
alass-cli/Cargo.toml
で始まるすべての行から「 # FFMPEG-LIB
」を削除する必要があります。次に使用してください:
# Important: you have to be inside `alass-cli`! Otherwise the parameters get ignored.
$ cargo build --no-default-features --features ffmpeg-library
Linuxユーザーの場合:フォルダーパスをシステムパスに追加して、 alass-cli
へのalass
をセットアップすることをお勧めします。これを~/.bashrc
(またはお気に入りのシェルのセットアップファイル)に追加します:
export PATH= " $PATH : $HOME /.cargo/bin "
alias alass= " alass-cli "
このcargo
ワークスペースには2つのプロジェクトが含まれています。
アルゴリズムを提供するalass-core
プロジェクトで同じアルゴリズムを使用したい開発者を対象としています。
公式のコマンドラインツールであるalass-cli
字幕を修正したいエンドユーザーのターゲットです。
alass-core
からReadmeを開きます。
このプログラムは、過去にaligner
と呼ばれていました。これにより、検索エンジンで見つけることがほぼ不可能になり、代わりにalass
が選択されました。