#!/bin/bash
#
#Modifiez votre chemin d'accés à ycatch.sh çi dessous
directory="/home/sebastien/YoutubeDL"
#
#Modifiez le nom du dossier qui contiendra les musiques téléchargées
music="Music"
#
#Modifiez le chemin de creation du dossier music çi dessous
directoryMusic="/home/sebastien/YoutubeDL/"
#
#Ne pas modifier
musicpath="$directoryMusic/$music"
file1="$directory/videos.txt"
file2="$directory/ycatch.txt"
file3="$directory/urlrename.txt"
#
#Creation du dossier contenant les musiques
if [ -d $musicpath ]; then
echo "le dossier music est présent"
else
mkdir Music
echo "Le dossier music vient d'être créer"
fi
#
#Création du fichier pour télécharger les musiques
if [ -e $file1 ]; then
echo "fichier videos.txt présent - Veuillez le supprimer en cas de problemes"
else
touch videos.txt
echo "fichier videos.txt généré"
fi
#
#Création du fichier pour capter le clipboard
if [ -e $file2 ]; then
echo "fichier ycatch.txt présent - Veuillez le supprimer en cas de problemes"
else
touch ycatch.txt
echo "fichier ycatch.txt généré"
fi
#
#Création du fichier pour capter l'url afin de renommer correctement
if [ -e $file3 ]; then
echo "fichier urlrename.txt présent - Veuillez le supprimer en cas de problemes"
else
touch urlrename.txt
echo "fichier urlrename.txt généré"
fi
#
#Copie du clipboard vers ycatch.txt
xclip -out -selection clipboard >> $file2
#
#Vérification des données récupérées
if [ -s $file2 ]; then
echo "ycatch contient des données et vont être transférées dans videos.txt si elles sont valides"
less ycatch.txt | grep -o "<a href="http://www.youtube.com/watch?v=" target="_blank">http://www.youtube.com/watch?v=</a>.*" | sort -u >> videos.txt
cut -c 32- ycatch.txt >> urlrename.txt
while read inputline
do
url="$(echo $inputline)"
done < urlrename.txt
if [ -s $file1 ]; then
echo "données valide, début de la phase de téléchargement"
# DL les video youtube du .txt
#
while read inputline
do
youtube_url="$(echo $inputline)"
youtube-dl -t $youtube_url
done < videos.txt
rm -f videos.txt
rm -f ycatch.txt
rm -f urlrename.txt
# Script pour Flv vers mp3.
if [ -e *.flv ]; then
echo "Fichier .flv détecté"
for i in *.flv;
do
f=$i
file=${f%$url.*}.mp3
#
#Vous pouvez modifier à vos risques et périls
#les donnés suivantes :
#ar est la valeur de la fréquence d'échantillonnage audio
#ab est la valeur du bitrate en bit/s
#ac est le nombre de canaux audio
ffmpeg -i $i -f mp3 -ar 44100 -ab 128000 -ac 2
$file
rm $i
mv -f $file Music
done
# Script pour mp4 vers mp3.
#
elif [ -e *.mp4 }; then
echo "fichier mp4 détecté"
for f in *.mp4; do
newname=`echo $f | tr ' ' '_' `
mv "$f" $newname
f=$newname
mplayer $f -ao pcm:file=tmp.wav
lame -b 128 -q 2 tmp.wav ${f%.*}.mp3
rm -f tmp.wav
rm -f $f
done
else
echo "aucun fichier téléchargé"
fi
else
echo "Veuillez copier une URL valide"
rm -f videos.txt
rm -f ycatch.txt
rm -f urlrename.txt
fi
else
echo "ycatch ne contient aucune données"
fi