Subliminal: buscando legendas via terminal

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

[ Hits: 5.607 ]

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

Instalando e configurando controle PS-like no Debian Stretch

Alterar o gerenciador de login do openSUSE

Pacotes RPM - Instalação em sua distribuição sem usar o Alien

Desabilitando o indexador de arquivos Baloo no KDE Plasma

Skype no Slackware SEM PulseAudio

Leitura recomendada

Carteira de Bitcoin Electrum no Linux

Usando a função map em vez de for (Python)

"RPG Maker" escrito em Python e Pygame

DojoTools

Hardware Project Simulator 0.1 - Simulador de montagem de computadores

  

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