From 01757e7519f8949bc2f563b83139339b358b164f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Daniel=20L=C3=B8vbr=C3=B8tte=20Olsen?= Date: Thu, 27 Sep 2018 12:29:28 +0000 Subject: [PATCH] Add youtube to m3u script --- scripts/yt2m3u | 29 +++++++++++++++++++++++++++++ 1 file changed, 29 insertions(+) create mode 100644 scripts/yt2m3u diff --git a/scripts/yt2m3u b/scripts/yt2m3u new file mode 100644 index 0000000..fc69218 --- /dev/null +++ b/scripts/yt2m3u @@ -0,0 +1,29 @@ +#!/usr/bin/env bash +set -euo pipefail +IFS=$'\n\t' + +function get_duration { + preconvert=$(youtube-dl --get-duration -- "$1" | perl -p -i -e 's/(\d\d?):(\d\d)/$1 minutes+$2 seconds/' 2> /dev/null) + convert=$(units "$preconvert") + stripped=$(echo "$convert" | grep -o '[0-9]*') + echo "$stripped" +} + +function get_title { + result=$(youtube-dl --get-title -- "$1") + echo "$result" +} + +function makeline { + duration=$(get_duration "$1") + title=$(get_title "$1") + echo "#EXTINF:$duration,$title" +} + +videos=$(youtube-dl --get-id "$1") +videos=($videos) + +for i in "${videos[@]}"; do + makeline "$i" + echo "ffmpeg2wav:youtube-dl:$i" +done \ No newline at end of file