Baixando o audio dos vídeos do youtube - YAD

Colaboração: Alexandre Martins

Data de Publicação: 10 de dezembro de 2012

Estou aqui mais uma vez para fazer mais uma contribuição interessante. Bom trata-se de uma espécie de um "A tube Catcher", porém para linux e usando o YAD como interface do script.

Requisitos: Ter instalado o pacote YAD versão acima da 0.16.0 (esta que foi usada no script). Ter também o pacote youtube-dl, mas esse não se preocupem, pois o script checa se este ultimo está instalado e o instala se necessário.

Restrições: Funciona apenas no KDE, por causa de apenas 2 comandinhos o "kdesudo" e o "kdialog". Os usuarios de Gnome, LXDE e demais, fiquem a vontade para fazer possíveis ajustes.

Explicando o script: Ao executar o script, o mesmo testa a instalação do pacote youtube-dl (responsável por baixar os vídeos, caso não esteja instalado, o kdesudo aparecerá na tela pedindo sua senha para a instalação do pacote). Em seguida é verificado a existência de um diretório chamado tmp dentro do diretório Música do usuário. Caso não exista, o mesmo será criado. Após isso aparecerá uma pequena janela com 2 campos, "URL" (URL do vídeo do youtube) e "Nome da Música" (Nome que queira dar a música referente a URL - nome sem extensão). A partir daí é com o youtube-dl, ele baixa o vídeo em baixa resolução (download mais rápido) e salva temporariamente no diretório tmp, em seguida começa a extrair o áudio adicionando o nome da musica inserido pelo usuário seguido da extensão ".mp3" (padrão de conversão). Ao terminar esse processo, a barra de progresso some, o áudio extraído é movido para o diretório Música e surge uma mensagem de conclusão na barra de tarefas. Eu ainda não realizei testes em outros vídeos como o vimeo pro exemplo...fique a vontade para realizar esses testes. Espero que gostem!

#!/bin/bash
#Por Alexandre Martins 

dpkg -l | grep youtube-dl
if [ "$?" != "0" ]
then
  kdesudo apt-get install youtube.dl
fi

if [ ! -e "/$HOME/Música/tmp" ]
then
  mkdir -p /$HOME/"Música"/tmp
  cd /$HOME/"Música"/tmp
fi

saida=$( \
     yad --form \
    --title="YouTube to MP3" \
    --width=300 \
    --height=100 \
    --field="URL: " "" \
    --field="Nome da Música:" "" \
     )

url=$(echo "$saida" | cut -d "|" -f1)
music=$(echo "$saida" | cut -d "|" -f2)

if [ "$url" != "" ]
then
  if [ "$music" != "" ]
  then

   youtube-dl -f 5 --extract-audio $url | \
  bar=$(yad --progress \
       --title "Processando..." \
       --width="300" \
       --progress-text="Baixando e Convertendo..." \
       --pulsate \
       --auto-close \
  --no-buttons \
       --auto-kill)

   mv *.mp3 $HOME/"Música"/"$music.mp3"
   kdialog --passivepopup "ArrancaMP3 - $music.mp3 concluído"

  fi
fi
Técnico em Informática, Estudante em análise de sistemas e pesquisador no mundo GNU/Linux.

[ Retornar ao Índice ]