Subliminal: buscando legendas via terminal

Publicado por Luís Fernando C. Cavalheiro em 27/09/2017

[ Hits: 5.638 ]

Blog: https://github.com/lcavalheiro/

 


Subliminal: buscando legendas via terminal



Tretadores e deboístas do Viva o Linux, aqui começa mais uma Dica do Dino® trazendo para vocês informações do tempo em que só de terminal se vivia em GNU/Linux. Hoje eu quero compartilhar com vocês uma descoberta recente mas muito interessante. Imagine que você tenha um diretório cheio de filmes ou episódios de uma série qualquer (não me interessa como você conseguiu isso) e precise caçar a legenda pra todos eles? Lá se vai uma tarde tediosa no OpenSubtitles.org fuçando vídeo a vídeo, certo?

Errado! Existe um programinha em Python que faz o trabalho braçal para você. Senhores, sejam apresentados ao subliminal! Vamos ver como ele funciona?

Instalando o subliminal

Primeiro procure se existe o pacote python3-subliminal ou algo assim nos repositórios de sua distro. Se não existir, instale com:

# pip3 install subliminal

Usando o subliminal

Ele é um aplicativo para linha de comando, então abra um terminal e lance alguns comandos. Não temam, ubunteiros, é apenas um terminal, ele não morde.

cd /diretorio/onde/ovideo/esta
$ subliminal download -l pt-BR -p opensubtitles arquivodevideo


Explicando:
  • -l: indica o idioma no qual a legenda será baixada, no caso, português do Brasil;
  • -p: indica onde o subliminal vai procurar a legenda, no caso no OpenSubtitles.org. Pode ser especificado mais de uma vez e as opções possíveis são addic7ed, legendastv, opensubtitles, podnapisi shooter, thesubdb e tvsubtitles.

Mas Dino®, eu quero baixar legendas para todos os vídeos em um determinado diretório. Como faz?

Como hoje eu estou paciente, vou te explicar como. Usa um find, caceta! Veja um exemplo:

find /diretorio/onde/osvideos/estao -type f -execdir subliminal download -l pt-BR -p opensubtitles {} \;

Onde:
  • -type f indica que o find deve processar apenas os arquivos em si, não os diretórios;
  • -execdir... indica o que o find deve fazer com cada arquivo encontrado, no caso executar o comando que o segue. O {} substitui o nome do arquivo e esse uso do find deve terminar com os caracteres \;

Difícil?

Conclusão

E é isso, senhores. Caso vocês queiram ler mais sobre o subliminal, clique aqui para ser direcionado para a página do projeto, e é isso. Com isso eu encerro mais esta Dica do Dino® com o famoso GET SLACK OR DIE!!!

Outras dicas deste autor

Recuperando inicialização do Slackware após atualização do kernel via slackpkg

Slackware64: multilib for dummies (usando slackpkg+)

ALSA e headsets USB: hotplugging

Plugin Pipelight no Fedora 20

Slackpkg: escolha qual programa usar para fazer o download de dados

Leitura recomendada

Vídeo sobre como participar do Google Summer of Code

Hardware Project Simulator 0.1 - Simulador de montagem de computadores

TP-1 Engine - motor para criação de jogos

Luna - Assistente virtual modo TXT para Linux

Referenciando linhas anteriores em um arquivo csv usando Pandas

  

Comentários

Nenhum comentário foi encontrado.



Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts