scripts

misc scripts and tools
git clone git://git.2f30.org/scripts.git
Log | Files | Refs

commit 4d528c1cd6afce9042ef723b2421d248efd021ab
parent 6ba30e5bc63d82f3ec52bf2b80174586bc87e441
Author: lostd <lostd@2f30.org>
Date:   Thu Jan  9 14:26:47 +0200

Enable simplistic artist - title tagging

Diffstat:
ytfetch | 19+++++++++++++++----
1 file changed, 15 insertions(+), 4 deletions(-)
diff --git a/ytfetch b/ytfetch @@ -9,32 +9,43 @@ if test -z "$1"; then exit 1 fi +# newline separated +IFS=' +' + for URL in "$@"; do echo "see $URL" # each --get comes on a line by its own in a predefined order # command line order does not matter - LIST=$(youtube-dl --restrict-filenames --get-url --get-filename \ + LIST=$(youtube-dl --restrict-filenames \ + --get-url --get-filename --get-title \ -o "%(title)s.%(ext)s" "$URL") I=0 # keep state for L in $LIST; do case $I in 0) - DIRECT="$L" + ARTIST=${L%% - *} + TITLE=${L#* - } ;; 1) + DIRECT="$L" + ;; + 2) F="${L%.*}.mp3" if test -f "$F"; then # already have this? echo "hav $F" else echo "get $L" wget "$DIRECT" -O "$L" 2> /dev/null - ffmpeg -i "$L" "$F" 2> /dev/null + ffmpeg -i "$L" \ + -metadata artist="$ARTIST" -metadata title="$TITLE" \ + "$F" 2> /dev/null rm "$L" fi ;; esac # incr and mod with the number of --get used above I=$(expr $I + 1) - I=$(expr $I % 2) + I=$(expr $I % 3) done done