alass
é uma ferramenta de linha de comando para sincronizar legendas com os filmes.
Pode corrigir automaticamente
O processo de alinhamento não é apenas rápido e preciso, mas também em linguagem. Isso significa que você pode alinhar legendas aos filmes em diferentes idiomas.
alass
significa "Sincronização automática de legenda agnóstica da linguagem". A teoria e os algoritmos estão documentados na tese de minha bacharel e resumidos na apresentação de meu bacharel.
Obtenha o último executável daqui! Basta baixar e extrair o arquivo. O arquivo alass.bat
é a ferramenta de linha de comando.
Obtenha o último executável daqui! Para executar o executável, ffmpeg
e ffprobe
precisam ser instalados. Você pode alterar seus caminhos com as variáveis de ambiente ALASS_FFMPEG_PATH
(Padrão ffmpeg
) e ALASS_FFPROBE_PATH
(Padrão ffprobe
).
O comando mais básico é:
$ alass movie.mp4 incorrect_subtitle.srt output.srt
Você também pode usar alass
para alinhar a legenda incorreta a uma legenda diferente:
$ alass reference_subtitle.ssa incorrect_subtitle.srt output.srt
Além disso, você pode ajustar o quanto o algoritmo tenta evitar a introdução ou remoção de uma pausa:
# split-penalty is a value between 0 and 1000 (default 7)
$ alass reference_subtitle.ssa incorrect_subtitle.srt output.srt --split-penalty 10
Os valores entre 5 e 20 são os mais úteis. Qualquer coisa acima de 20 perde algumas divisões importantes e qualquer coisa abaixo de 5 introduz muitas divisões desnecessárias.
Se você deseja mudar apenas a legenda, sem introduzir divisões, você pode usar --no-splits
:
# synchronizing the subtitles in this mode is very fast
$ alass movie.mp4 incorrect_subtitle.srt output.srt --no-splits
Atualmente suportados são arquivos .srt
, .ssa
/ .ass
e .idx
. Todo formato de vídeo comum é suportado para o arquivo de referência.
A extração do áudio de um vídeo leva de 10 a 20 segundos. A computação do alinhamento geralmente leva entre 5 e 10 segundos.
O alinhamento é geralmente perfeito - a porcentagem de "boas legendas" é de cerca de 88% a 98%, dependendo de quão rigoroso você classifica uma "boa legenda". O download das legendas aleatórias do OpenSubtitles.org
teve uma taxa de erro de cerca de 50% (tamanho da amostra n = 118). De todas as linhas de legenda (não arquivos de legenda) no banco de dados testado, após a sincronização
Comparado a uma legenda de referência (possivelmente não perfeita).
Instale a ferrugem e a carga e corra:
# this will create the lastest release in ~/.cargo/bin/alass-cli
$ cargo install alass-cli
O módulo de atividade de voz que este projeto usa é escrito em C. Portanto, é necessário um compilador C ( gcc
ou clang
) para compilar este projeto.
Para usar alass-cli
com arquivos de vídeo, ffmpeg
e ffprobe
precisam ser instalados. É usado para extrair os dados de áudio bruto. Você pode definir os caminhos usados pelo alass
usando as variáveis de ambiente ALASS_FFMPEG_PATH
(padrão ffmpeg
) e ALASS_FFPROBE_PATH
( ffprobe
padrão).
Se você deseja construir e executar o projeto a partir do código -fonte:
$ git clone https://github.com/kaegi/alass
$ cd alass
$ cargo build
$ cargo run -- movie.mp4 input.srt output.srt
Todos os parâmetros são mostrados para cargo build
também podem ser usados para cargo install
e cargo run
.
Você também pode vincular ffmpeg
como uma biblioteca dinâmica durante o tempo de compilação. A implementação da biblioteca pode extrair o áudio cerca de 2 a 3 segundos mais rápido. Infelizmente, é mais difícil de compilar, o manuseio de erros é muito básico e ainda pode ter erros.
Você deve remover " # FFMPEG-LIB
" de todas as linhas que começam com ela em alass-cli/Cargo.toml
. Em seguida, use:
# Important: you have to be inside `alass-cli`! Otherwise the parameters get ignored.
$ cargo build --no-default-features --features ffmpeg-library
Para usuários do Linux: é recomendável adicionar o caminho da pasta ao caminho do seu sistema, bem como configurar um alias para alass
para alass-cli
. Adicione isso ao seu ~/.bashrc
(ou o arquivo de configuração do seu shell favorito):
export PATH= " $PATH : $HOME /.cargo/bin "
alias alass= " alass-cli "
Este espaço de trabalho cargo
contém dois projetos:
alass-core
, que fornece o algoritmo
É direcionado a desenvolvedores que desejam usar o mesmo algoritmo em seu projeto.
alass-cli
que é a ferramenta oficial de linha de comando
É alvo de usuários finais que desejam corrigir suas legendas.
Abra o ReadMe da alass-core
.
Este programa foi chamado de aligner
no passado. Isso tornou quase impossível encontrar em um mecanismo de pesquisa, então alass
foi escolhido.