Skip to content

Instantly share code, notes, and snippets.

@dardevelin
Created January 30, 2014 23:46
Show Gist options
  • Save dardevelin/8722601 to your computer and use it in GitHub Desktop.
Save dardevelin/8722601 to your computer and use it in GitHub Desktop.
mank319 script
#!/bin/bash
echo "TRANSLATE ME, I AM WRITTEN IN GERMAN ;)"
#Den Titel zwischenspeichern
title=$(youtube-dl --get-title $*)
#Sonderzeichen, die bei Dateinamen Probleme bereiten ersetzen
title=$(echo "$title" | sed -e s/[^\]\[A-Za-z0-9._{}[:space:]\(\)\-]/_/g)
#Nur dann, wenn Titel nicht leer, hat die Verbindung geklappt und nur dann sollen die weiteren Schritte eingeleitet werden!
if [[ -n "$title" ]]; then
#Das Video herunterladen: format optionen schränken auf flv und mp4 mit bestmöglicher Audioqualität ein
#Grep auf Destination wird nachher eine einzige Zeile zurückliefern in der die Zieldatei steht
youtube-dl --continue --format 34/35/120/18/82/83/85/84/22/37/38/5/6 -o "$title.%(ext)s" $1
#Als Formate kommen lediglich mp4 oder flv infrage
if [ -f "$title.flv" ]; then
#Danach das Video zu mp3 konvertieren --eopts gibt diejenigen Optionen an, die an Lame weitergereicht werden sollen
pacpl -t mp3 "$title.flv" -eopts="-V8 --vbr-new -mm"
#Im Anschluss das Video löschen
trash-put "$title.flv"
else
#Danach das Video zu mp3 konvertieren --eopts gibt diejenigen Optionen an, die an Lame weitergereicht werden sollen
pacpl -t mp3 "$title.mp4" -eopts="-V8 --vbr-new -mm"
#Im Anschluss das Video löschen
trash-put "$title.mp4"
fi
else
echo "Connection Problem: Cannot get video title."
exit 137
fi
#Nichtgenutze Zeilen (Im Praxistest als nicht sehr tauglich erwiesen)
#avconv -i "$title.flv" -acodec copy -vn "$title.mp4"
#result ist ein String nach dem Format: [download] Destination: Hörbuch ABC 123 Test.flv
#dest_file=$( cut -d ':' -f 2- <<< "$result") #Hinter dem : mit cut abschneiden ergibt den Dateinamen
#whitespaces am Anfang entfernen
#read -rd '' dest_file <<< "$dest_file"
#Den Titel zwischenspeichern
#title=$(youtube-dl --get-title $*)
#gute UA: --user-agent "Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.1; WOW64; Trident/4.0; SLCC2; Media Center PC 6.0; InfoPath.2; MS-RTC LM 8" IE8
##result=$(youtube-dl --continue --format 34/35/120/18/82/83/85/84/22/37/38/5/6 -o '%(title)s.%(ext)s' $* | grep 'Destination:')
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment