Subliminal: buscando legendas via terminal

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

[ Hits: 5.952 ]

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

Gerencie a bateria do seu notebook usando o powertop

Use o Vim no Slackware

Alterando o gerenciador de sessão no Fedora 21

Fazendo o Steam funcionar no openSUSE Leap 42.2

Instalação do VLC no openSUSE Tumbleweed usando o repositório da VideoLAN

Leitura recomendada

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

Reproduzindo vídeos em modo texto no Linux

Instalando o pyenv no Linux Mint e Ubuntu

Vídeo sobre como participar do Google Summer of Code

Carteira de Bitcoin Electrum no Linux

  

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