Pular para o conteúdo

Subliminal: buscando legendas via terminal

Dica publicada em Python / Miscelânea
Luís Fernando C. Cavalheiro lcavalheiro
Hits: 7.043 Categoria: Python Subcategoria: Miscelânea
  • Indicar
  • Impressora
  • Denunciar
O Viva o Linux depende da receita de anúncios para se manter. Ative os cookies aqui para nos patrocinar.
Não conseguimos carregar os anúncios. Se usa bloqueador, considere liberar o Viva o Linux para nos patrocinar.

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!!!

O Viva o Linux depende da receita de anúncios para se manter. Ative os cookies aqui para nos patrocinar.
Não conseguimos carregar os anúncios. Se usa bloqueador, considere liberar o Viva o Linux para nos patrocinar.
O Viva o Linux depende da receita de anúncios para se manter. Ative os cookies aqui para nos patrocinar.
Não conseguimos carregar os anúncios. Se usa bloqueador, considere liberar o Viva o Linux para nos patrocinar.

Fontes TrueType da MS e Telegram Desktop no OpenSUSE

Tornando o cliente oficial do Discord multiusuário em GNU/Linux

OpenJDK 7 em Debians-like - Como instalar corretamente

Fazendo o right-click do touchpad funcionar no GNOME

Steam for Linux no Slackware usando SlackBuild de AlienBOB

Vídeo sobre como participar do Google Summer of Code

Criando aplicativos multiplataforma (Android, iOS, Windows) com Python + Kivy

Novo TradutorOOoNote substitui texto e envia o antigo para anotação

Obtendo mirrors mais velozes no Arch Linux

Python: Somando valores em um dicionário de strings

Nenhum comentário foi encontrado.

Contribuir com comentário

Entre na sua conta para comentar.