From 90ae291395f905a9195c925a3e173b5017e0a1bb Mon Sep 17 00:00:00 2001 From: root Date: Thu, 27 Sep 2018 12:18:03 +0000 Subject: [PATCH] Initial commit --- docker-compose.yml | 80 +++++ docker-liquidsoap | 1 + state/liquidsoap/config/.directory | 6 + state/liquidsoap/config/broadcast.liq | 32 ++ state/liquidsoap/config/main.liq | 57 ++++ .../playlists/Daniel/Dan - Edgy Music YT.m3u | 39 +++ .../Daniel/Dan - Nightcoreoranime.m3u | 0 .../playlists/Daniel/Dan - awesome.m3u | 58 ++++ .../playlists/Daniel/Dan - dontstarve1.m3u | 58 ++++ .../Daniel/Dan - dubstepthingies.m3u | 46 +++ .../Daniel/Dan - electronicrealmusic.m3u | 228 ++++++++++++++ .../Daniel/Dan - electronicrealmusic.txt | 0 .../Daniel/Dan - hackingslashing.txt | 289 ++++++++++++++++++ web/Dockerfile | 3 + web/admin.php | 52 ++++ web/functions.php | 124 ++++++++ web/index.php | 24 ++ yt-m3u | 29 ++ 18 files changed, 1126 insertions(+) create mode 100644 docker-compose.yml create mode 160000 docker-liquidsoap create mode 100644 state/liquidsoap/config/.directory create mode 100644 state/liquidsoap/config/broadcast.liq create mode 100644 state/liquidsoap/config/main.liq create mode 100644 state/liquidsoap/playlists/Daniel/Dan - Edgy Music YT.m3u create mode 100644 state/liquidsoap/playlists/Daniel/Dan - Nightcoreoranime.m3u create mode 100644 state/liquidsoap/playlists/Daniel/Dan - awesome.m3u create mode 100644 state/liquidsoap/playlists/Daniel/Dan - dontstarve1.m3u create mode 100644 state/liquidsoap/playlists/Daniel/Dan - dubstepthingies.m3u create mode 100644 state/liquidsoap/playlists/Daniel/Dan - electronicrealmusic.m3u create mode 100644 state/liquidsoap/playlists/Daniel/Dan - electronicrealmusic.txt create mode 100644 state/liquidsoap/playlists/Daniel/Dan - hackingslashing.txt create mode 100644 web/Dockerfile create mode 100644 web/admin.php create mode 100644 web/functions.php create mode 100644 web/index.php create mode 100755 yt-m3u diff --git a/docker-compose.yml b/docker-compose.yml new file mode 100644 index 0000000..4ac9551 --- /dev/null +++ b/docker-compose.yml @@ -0,0 +1,80 @@ +version: '2' + +services: + main: + build: ./docker-liquidsoap + volumes: + - ./state/liquidsoap/config:/config + - ./state/liquidsoap/playlists:/playlists + - ./state/liquidsoap/data:/data + - /etc/localtime:/etc/localtime:ro + command: /bin/bash -xc 'env; liquidsoap -v --debug /config/main.liq' + environment: + - HARBOR_PASSWORD=MGT7aEqP + - LIVE_PASSWORD=fuckyoujoa + - BROADCAST_PORT_5001_TCP_ADDR=broadcast + - BROADCAST_PORT_5001_TCP_PORT=5001 + links: + - icecast + ports: + - 8021:5001 + - 8022:5002 + - 127.0.0.1:5000:5000 + restart: on-failure + + broadcast: + build: ./docker-liquidsoap + volumes: + - ./state/liquidsoap/config:/config + - /etc/localtime:/etc/localtime:ro + command: /bin/bash -xc 'env; liquidsoap -v --debug /config/broadcast.liq' + environment: + - HARBOR_PASSWORD=MGT7aEqP + - ICECAST_PORT_8000_TCP_ADDR=icecast + - ICECAST_PORT_8000_TCP_PORT=8000 + - ICECAST_SOURCE_PASSWORD=KUsFNWgh + links: + - icecast + restart: on-failure + + icecast: + image: moul/icecast + volumes: + - /etc/localtime:/etc/localtime:ro + environment: + - ICECAST_SOURCE_PASSWORD=KUsFNWgh + - ICECAST_ADMIN_PASSWORD=admin + - ICECAST_PASSWORD=Bk3H7UM8 + - ICECAST_RELAY_PASSWORD=hackme + labels: + - traefik.enable=true + - traefik.frontend.rule=Host:icecast.radio.dodsorf.as + - traefik.port=8000 + - traefik.backend=icecast + - traefik.domain=dodsorf.as + - traefik.docker.network=reverse + networks: + - reverse + - default + + web: + build: ./web + environment: + - MAIN_PORT_5000_TCP=tcp://main:5000 + links: + - main + labels: + - traefik.enable=true + - traefik.frontend.rule=Host:radio.dodsorf.as + - traefik.port=80 + - traefik.backend=webradio + - traefik.domain=dodsorf.as + - traefik.docker.network=reverse + networks: + - reverse + - default + +networks: + reverse: + external: + name: reverse diff --git a/docker-liquidsoap b/docker-liquidsoap new file mode 160000 index 0000000..73682cf --- /dev/null +++ b/docker-liquidsoap @@ -0,0 +1 @@ +Subproject commit 73682cfcb241d1e9cfa16b51a98e2cbc424d2cbb diff --git a/state/liquidsoap/config/.directory b/state/liquidsoap/config/.directory new file mode 100644 index 0000000..2944163 --- /dev/null +++ b/state/liquidsoap/config/.directory @@ -0,0 +1,6 @@ +[Dolphin] +Timestamp=2018,9,5,23,22,33 +Version=4 + +[Settings] +HiddenFilesShown=true diff --git a/state/liquidsoap/config/broadcast.liq b/state/liquidsoap/config/broadcast.liq new file mode 100644 index 0000000..c22100e --- /dev/null +++ b/state/liquidsoap/config/broadcast.liq @@ -0,0 +1,32 @@ +# CONFIGS +set("log.file", true) +set("log.stdout", true) +set("log.level", 4) +set("server.telnet", true) +set("server.telnet.port", 5000) +set("log.file.path", "/tmp/broadcast.log") +set("audio.converter.samplerate.libsamplerate.quality","best") +set("buffering.path","/tmp") +set("decoding.buffer_length",10.) + + +# FUNCTIONS +dodsorfas_out = output.icecast(description="Dodsorfas Radio", genre="Misc", url="https://radio.dodsorf.as/") +output_docker_env.icecast = dodsorfas_out( + host=getenv("ICECAST_PORT_8000_TCP_ADDR"), + port=int_of_string(getenv("ICECAST_PORT_8000_TCP_PORT")), + password=getenv("ICECAST_SOURCE_PASSWORD") +) +def outputs(encoder, ~mount, input) + output_docker_env.icecast(encoder, mount=mount, input) +end + +input = mksafe(input.harbor("dodsorfas.main", port=5001, password=getenv("HARBOR_PASSWORD"))) + +# OUTPUTS +outputs(%mp3(bitrate=64), mount="/dodsorfas-radio-64.mp3", input) +outputs(%mp3(bitrate=128), mount="/dodsorfas-radio-128.mp3", input) +outputs(%mp3(bitrate=160), mount="/dodsorfas-radio-160.mp3", input) +outputs(%mp3(bitrate=192), mount="/dodsorfas-radio-192.mp3", input) +outputs(%vorbis, mount="/dodsorfas-radio.vorbis.ogg", input) +outputs(%opus, mount="/dodsorfas-radio.opus.ogg", input) diff --git a/state/liquidsoap/config/main.liq b/state/liquidsoap/config/main.liq new file mode 100644 index 0000000..8850379 --- /dev/null +++ b/state/liquidsoap/config/main.liq @@ -0,0 +1,57 @@ +set("log.file",false) +set("log.stdout",true) + +set("server.telnet",true) +set("server.telnet.port", 5000) +set("server.telnet.bind_addr", "0.0.0.0") + +set("decoder.file_extensions.gstreamer",["wav", "webm"]) +set("decoder.mime_types.gstreamer",["audio/x-wav", "audio/wav", "video/webm"]) + +def crossfade(a,b) + add(normalize=false, + [ sequence([ blank(duration=5.), + fade.initial(duration=5.,b) ]), + fade.final(duration=5.,a) ]) +end + +rad_io = input.http("http://relay0.r-a-d.io:80/main.mp3") +output.dummy(fallible=true, rad_io) + + +live = audio_to_stereo( + rewrite_metadata( + [ + ("title", "$(title) (LIVE - Dodsorfas Radio)"), + ("comment", "http://www.radio.dodsorf.as") + ], + stretch( + ratio=interactive.float("test", 1.00005), + input.harbor( + "dodsorfas.live", + id="dodsorfas.live", + port=5002, + password=getenv("LIVE_PASSWORD"), + user="source", + logfile="/tmp/harbor.log" + ) + ) + ) +) + +requests = audio_to_stereo(drop_video(request.queue(id="request"))) + +mix = blank() +mix = fallback(track_sensitive=false, transitions=[crossfade], [rad_io,mix]) +mix = fallback(track_sensitive=false, transitions=[crossfade], [requests,mix]) +mix = fallback(track_sensitive=false, transitions=[crossfade], [live, mix]) + +# OUTPUTS +output.icecast( + password=getenv("HARBOR_PASSWORD"), + host=getenv("BROADCAST_PORT_5001_TCP_ADDR"), + port=int_of_string(getenv("BROADCAST_PORT_5001_TCP_PORT")), + %wav, + mount="dodsorfas.main", + mix + ) diff --git a/state/liquidsoap/playlists/Daniel/Dan - Edgy Music YT.m3u b/state/liquidsoap/playlists/Daniel/Dan - Edgy Music YT.m3u new file mode 100644 index 0000000..5ed3506 --- /dev/null +++ b/state/liquidsoap/playlists/Daniel/Dan - Edgy Music YT.m3u @@ -0,0 +1,39 @@ +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=Gd9OhYroLN0 +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=YLHpvjrFpe0 +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=YSC0zQnLIWQ +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=SHqo2FDJSU0 +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=r00ikilDxW4 +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=vjVkXlxsO8Q +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=Zcps2fJKuAI +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=aZkd91HXng4 +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=yFFljFuGfmc +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=5qF_qbaWt3Q +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=3YxaaGgTQYM +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=Um8EEzl42PQ +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=ScNNfyq3d_w +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=5hDZbroaQDc +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=y9uSyICrtow +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=R7IJC6nMons +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=0nlJuwO0GDs +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=KOrXKiSy8ZY +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=jDyZj4msaoE + + + + + + + + + + + + + + + + + + + + diff --git a/state/liquidsoap/playlists/Daniel/Dan - Nightcoreoranime.m3u b/state/liquidsoap/playlists/Daniel/Dan - Nightcoreoranime.m3u new file mode 100644 index 0000000..e69de29 diff --git a/state/liquidsoap/playlists/Daniel/Dan - awesome.m3u b/state/liquidsoap/playlists/Daniel/Dan - awesome.m3u new file mode 100644 index 0000000..f46cc2c --- /dev/null +++ b/state/liquidsoap/playlists/Daniel/Dan - awesome.m3u @@ -0,0 +1,58 @@ +#EXTINF:420:Savant feat. Qwentalis - Starscream Forever (Original Mix) +ffmpeg2wav:youtube-dl:BkJtsNBL8Lc +#EXTINF:248:Zelda Medley- Lindsey Stirling +ffmpeg2wav:youtube-dl:b3KUyPKbR7Q +#EXTINF:295:Ed Sheeran - I See Fire (Music Video) +ffmpeg2wav:youtube-dl:2fngvQS_PmQ +#EXTINF:247:Elements - Lindsey Stirling (Dubstep Violin Original Song) +ffmpeg2wav:youtube-dl:sf6LD2B_kDQ +#EXTINF:207:Pokémon Dubstep Remix - Lindsey Stirling & Kurt Hugo Schneider (Cover) +ffmpeg2wav:youtube-dl:99ZYIECx1Vw +#EXTINF:409:Quixote - Approaching Nirvana +ffmpeg2wav:youtube-dl:Uk809yw4cg4 +#EXTINF:234:Owl City - Fireflies +ffmpeg2wav:youtube-dl:psuRGfAaju4 +#EXTINF:267:Illusion feat. Brenton Mattheus - Approaching Nirvana +ffmpeg2wav:youtube-dl:vcl7QtPdg_w +#EXTINF:260:Nicky Romero - Toulouse +ffmpeg2wav:youtube-dl:KrVC5dm5fFc +#EXTINF:214:Cash Cash - I Like It Loud (Official Music Video) +ffmpeg2wav:youtube-dl:Ef2400tsx2I +#EXTINF:300:Crystallize - Lindsey Stirling (Dubstep Violin Original Song) +ffmpeg2wav:youtube-dl:aHjpOzsQ9YI +#EXTINF:236:Delta Heavy - Get By (Official Video) +ffmpeg2wav:youtube-dl:8cOt9UcYGOU +#EXTINF:372:pachelbel's Canon in D--Soothing music(the best version) +ffmpeg2wav:youtube-dl:hOA-2hl1Vbc +#EXTINF:235:Shadows - Lindsey Stirling (Original Song) +ffmpeg2wav:youtube-dl:JGCsyshUU-A +#EXTINF:281:Approaching Nirvana ft Veela - 2nd Flight +ffmpeg2wav:youtube-dl:lPpPvdBccpA +#EXTINF:275:Watching The Clock (feat. Laura Brehm) - Approaching Nirvana +ffmpeg2wav:youtube-dl:Zf42r0xl48k +#EXTINF:326:Here Again (feat. Veela) - Approaching Nirvana +ffmpeg2wav:youtube-dl:FQEiXnQ8AHo +#EXTINF:199:Fade Away - Approaching Nirvana +ffmpeg2wav:youtube-dl:dp6gxLI3POQ +#EXTINF:218:Axel Morris feat. Savant & Celina Svanberg - Licence To Chill +ffmpeg2wav:youtube-dl:nB6IxcYb7DM +#EXTINF:323:Final Flight - Approaching Nirvana +ffmpeg2wav:youtube-dl:AggLC3Pd1QU +#EXTINF:249:Far Too Loud - Firestorm +ffmpeg2wav:youtube-dl:VlnBh0hRpfM +#EXTINF:271:Tristam - Till It's Over +ffmpeg2wav:youtube-dl:uG4DfRnlE4s +#EXTINF:208:[Hardstyle] Blood Pressure - Ephixa +ffmpeg2wav:youtube-dl:KfsABX3S5Ss +#EXTINF:270:[DnB] - Tristam & Braken - Frame of Mind [Monstercat Release] +ffmpeg2wav:youtube-dl:SCD2tB1qILc +#EXTINF:275:Disciple Month - Disciple of the Wind [Fighting of the Spirit, wind-related themes] +ffmpeg2wav:youtube-dl:67-unw6llIE +#EXTINF:234:Dada Life - Rolling Stones T-Shirt (OFFICIAL VIDEO) +ffmpeg2wav:youtube-dl:WyE99hBLnvA +#EXTINF:224:Krewella - Can't Control Myself (Candyland Remix) +ffmpeg2wav:youtube-dl:wXrTbjOZn04 +#EXTINF:297:Alesso vs OneRepublic - If I Lose Myself (Alesso Remix) +ffmpeg2wav:youtube-dl:OOevVQwQ-LM +#EXTINF:275:Let It Go (Disney's "Frozen") Vivaldi's Winter - The Piano Guys +ffmpeg2wav:youtube-dl:6Dakd7EIgBE diff --git a/state/liquidsoap/playlists/Daniel/Dan - dontstarve1.m3u b/state/liquidsoap/playlists/Daniel/Dan - dontstarve1.m3u new file mode 100644 index 0000000..bcec1ec --- /dev/null +++ b/state/liquidsoap/playlists/Daniel/Dan - dontstarve1.m3u @@ -0,0 +1,58 @@ +#EXTINF:297:Alesso vs OneRepublic - If I Lose Myself (Alesso Remix) +ffmpeg2wav:youtube-dl:OOevVQwQ-LM +#EXTINF:323:Final Flight - Approaching Nirvana +ffmpeg2wav:youtube-dl:AggLC3Pd1QU +#EXTINF:417:The Legend of Zelda Remix - Soaring Winds [Dragon Roost Island, Tal Tal Heights +] +ffmpeg2wav:youtube-dl:RcXo4i24tcA +#EXTINF:204:Berserker - Approaching Nirvana +ffmpeg2wav:youtube-dl:_8o3ynz1_kw +#EXTINF:260:Nicky Romero - Toulouse +ffmpeg2wav:youtube-dl:KrVC5dm5fFc +#EXTINF:254:Redux - Approaching Nirvana +ffmpeg2wav:youtube-dl:PngNGDLFlIc +#EXTINF:467:[Progressive House] - TwoThirds - Waking Dreams (feat. Laura Brehm) [Monstercat Release] +ffmpeg2wav:youtube-dl:eNF0VF9oTf8 +#EXTINF:227:Dada Life - Happy Violence +ffmpeg2wav:youtube-dl:e0AD3w67_-o +#EXTINF:224:Krewella - Can't Control Myself (Candyland Remix) +ffmpeg2wav:youtube-dl:wXrTbjOZn04 +#EXTINF:202:[Drumstep] - Braken - To The Stars [Monstercat Release] +ffmpeg2wav:youtube-dl:1dcXmkco5ko +#EXTINF:336:Rerezzed: Legacy - The Glitch Mob / Daft Punk Derezzed Remix Music Video +ffmpeg2wav:youtube-dl:lN_MSyrq6-U +#EXTINF:218:Axel Morris feat. Savant & Celina Svanberg - Licence To Chill +ffmpeg2wav:youtube-dl:nB6IxcYb7DM +#EXTINF:266:Vrazil (Album Version) - Approaching Nirvana +ffmpeg2wav:youtube-dl:Cqe60FwCJSs +#EXTINF:295:Ed Sheeran - I See Fire (Music Video) +ffmpeg2wav:youtube-dl:2fngvQS_PmQ +#EXTINF:267:Illusion feat. Brenton Mattheus - Approaching Nirvana +ffmpeg2wav:youtube-dl:vcl7QtPdg_w +#EXTINF:275:Watching The Clock (feat. Laura Brehm) - Approaching Nirvana +ffmpeg2wav:youtube-dl:Zf42r0xl48k +#EXTINF:214:Cash Cash - I Like It Loud (Official Music Video) +ffmpeg2wav:youtube-dl:Ef2400tsx2I +#EXTINF:275:Disciple Month - Disciple of the Wind [Fighting of the Spirit, wind-related themes] +ffmpeg2wav:youtube-dl:67-unw6llIE +#EXTINF:236:Delta Heavy - Get By (Official Video) +ffmpeg2wav:youtube-dl:8cOt9UcYGOU +#EXTINF:342:[Dubstep] - Rameses B - Transformations (feat. Laura Brehm) [Monstercat Release] +ffmpeg2wav:youtube-dl:Fkwtq2uhbmU +#EXTINF:213:Transjoik "Gievrie" +ffmpeg2wav:youtube-dl:FBSvtnCr8Wc +#EXTINF:372:pachelbel's Canon in D--Soothing music(the best version) +ffmpeg2wav:youtube-dl:hOA-2hl1Vbc +#EXTINF:234:Dada Life - Rolling Stones T-Shirt (OFFICIAL VIDEO) +ffmpeg2wav:youtube-dl:WyE99hBLnvA +#EXTINF:326:Here Again (feat. Veela) - Approaching Nirvana +ffmpeg2wav:youtube-dl:FQEiXnQ8AHo +#EXTINF:420:Savant feat. Qwentalis - Starscream Forever (Original Mix) +ffmpeg2wav:youtube-dl:BkJtsNBL8Lc +#EXTINF:383:Demon Groove - Lenningrad 2034 [Tasty Release] +ffmpeg2wav:youtube-dl:gtwbrIYdQPU +#EXTINF:281:Approaching Nirvana ft Veela - 2nd Flight +ffmpeg2wav:youtube-dl:lPpPvdBccpA +#EXTINF:409:Quixote - Approaching Nirvana +ffmpeg2wav:youtube-dl:Uk809yw4cg4 +#EXTINF:199:Fade Away - Approaching Nirvana +ffmpeg2wav:youtube-dl:dp6gxLI3POQ diff --git a/state/liquidsoap/playlists/Daniel/Dan - dubstepthingies.m3u b/state/liquidsoap/playlists/Daniel/Dan - dubstepthingies.m3u new file mode 100644 index 0000000..2941a1b --- /dev/null +++ b/state/liquidsoap/playlists/Daniel/Dan - dubstepthingies.m3u @@ -0,0 +1,46 @@ +#EXTINF:342:[Trance] - Eminence - Halo [Monstercat Release] +ffmpeg2wav:youtube-dl:ddr3Xam5B-U +#EXTINF:356:[Electro] - PIXL - Buzz Kill [Monstercat FREE Release] +ffmpeg2wav:youtube-dl:gMu9TMwqRKs +#EXTINF:467:[Progressive House] - TwoThirds - Waking Dreams (feat. Laura Brehm) [Monstercat Release] +ffmpeg2wav:youtube-dl:eNF0VF9oTf8 +#EXTINF:248:Zedd - Spectrum (Official Video) ft. Matthew Koma +ffmpeg2wav:youtube-dl:IsuVMdnF8A0 +#EXTINF:297:Alesso vs OneRepublic - If I Lose Myself (Alesso Remix) +ffmpeg2wav:youtube-dl:OOevVQwQ-LM +#EXTINF:420:Savant feat. Qwentalis - Starscream Forever (Original Mix) +ffmpeg2wav:youtube-dl:BkJtsNBL8Lc +#EXTINF:230:Dead C.A.T Bounce ft. Emily Underhill - Closer to Me (Dabin Remix) [Tasty Release] +ffmpeg2wav:youtube-dl:bL_orOhpnwg +#EXTINF:272:Knife Party - 'Bonfire' +ffmpeg2wav:youtube-dl:e-IWRmpefzE +#EXTINF:297:Example - 'Kickstarts' (Bar9 Remix Official Video) +ffmpeg2wav:youtube-dl:ks0P1u6-OUY +#EXTINF:260:Nicky Romero - Toulouse +ffmpeg2wav:youtube-dl:KrVC5dm5fFc +#EXTINF:271:Tristam - Till It's Over +ffmpeg2wav:youtube-dl:uG4DfRnlE4s +#EXTINF:270:[DnB] - Tristam & Braken - Frame of Mind [Monstercat Release] +ffmpeg2wav:youtube-dl:SCD2tB1qILc +#EXTINF:212:[Electro] Nitro Fun - Cheat Codes [Monstercat Release] +ffmpeg2wav:youtube-dl:mdaCDsN1FJ0 +#EXTINF:204:[Electronic] - Tut Tut Child - Power Fracture [Monstercat Release] +ffmpeg2wav:youtube-dl:59Njt3gox-E +#EXTINF:342:[Dubstep] - Rameses B - Transformations (feat. Laura Brehm) [Monstercat Release] +ffmpeg2wav:youtube-dl:Fkwtq2uhbmU +#EXTINF:253:[Dubstep] - Direct & Labisch - Better World [Monstercat Release] +ffmpeg2wav:youtube-dl:WOFg3UVfl8k +#EXTINF:225:Kat Krazy ft. Elkka - Siren +ffmpeg2wav:youtube-dl:DbSFQCXRda4 +#EXTINF:302:Rameses B ft. Holly Drummond - Dreaming +ffmpeg2wav:youtube-dl:ZbQS_QeWHLc +#EXTINF:220:[Drumstep] - Tristam & Braken - Flight [Monstercat Release] +ffmpeg2wav:youtube-dl:OVMuwa-HRCQ +#EXTINF:208:[Drumstep] - Varien - Valkyrie (feat. Laura Brehm) [Monstercat Release] +ffmpeg2wav:youtube-dl:ddFAIkUb7A0 +#EXTINF:214:Cash Cash - I Like It Loud (Official Music Video) +ffmpeg2wav:youtube-dl:Ef2400tsx2I +#EXTINF:346:[Electro] - Case & Point - All On Me (feat. Gamble & Burke) [Monstercat Release] +ffmpeg2wav:youtube-dl:RSQqVDmNaj0 +#EXTINF:202:[Drumstep] - Braken - To The Stars [Monstercat Release] +ffmpeg2wav:youtube-dl:1dcXmkco5ko diff --git a/state/liquidsoap/playlists/Daniel/Dan - electronicrealmusic.m3u b/state/liquidsoap/playlists/Daniel/Dan - electronicrealmusic.m3u new file mode 100644 index 0000000..a6a423e --- /dev/null +++ b/state/liquidsoap/playlists/Daniel/Dan - electronicrealmusic.m3u @@ -0,0 +1,228 @@ +#EXTINF:277:Moderat - The Fool Live (MTR068) +ffmpeg2wav:youtube-dl:SuyMyAkggiI +#EXTINF:309:Bonobo - Prelude + Kiara +ffmpeg2wav:youtube-dl:D9f2KZvf9sk +#EXTINF:578:RÜFÜS - Innerbloom +ffmpeg2wav:youtube-dl:IA1liCmUsAM +#EXTINF:253:Jon Hopkins - Breathe This Air feat. Purity Ring (Official Video) +ffmpeg2wav:youtube-dl:CPmucPjFulI +#EXTINF:271:Bonobo - 1009 +ffmpeg2wav:youtube-dl:TLxViMli1_Y +#EXTINF:326:Bonobo - Eyesdown Feat. Andreya Triana +ffmpeg2wav:youtube-dl:-6bbM5HZz5c +#EXTINF:317:Flyover Country +ffmpeg2wav:youtube-dl:vIgHulCqcu0 +#EXTINF:317:Tycho - A Walk +ffmpeg2wav:youtube-dl:mehLx_Fjv_c +#EXTINF:176:Obligatory Cadence +ffmpeg2wav:youtube-dl:YInfps6UoRI +#EXTINF:281:shlohmo - places +ffmpeg2wav:youtube-dl:tv8Se8xSMiw +#EXTINF:40:Fkn Dead +ffmpeg2wav:youtube-dl:pBzGFuQFruM +#EXTINF:240:Bonobo - Kong +ffmpeg2wav:youtube-dl:lZbgyKJkHxQ +#EXTINF:1 +00 +04:Flying Lotus- Obligatory Cadence (Homework Edit) +ffmpeg2wav:youtube-dl:WRttEMa6H8I +#EXTINF:303:Bonobo - Kiara +ffmpeg2wav:youtube-dl:N7m86aMNjlQ +#EXTINF:169:Stardust +ffmpeg2wav:youtube-dl:MjZ9Z_6ZmPU +#EXTINF:287:Lacrimosa Aphrodite +ffmpeg2wav:youtube-dl:hE0-ALxSCvI +#EXTINF:299:Bonobo - All In Forms +ffmpeg2wav:youtube-dl:9W-epjHQDZs +#EXTINF:93:Who Mourns Eos - Nathaniel Johnstone Band +ffmpeg2wav:youtube-dl:n85GrnNx8Rg +#EXTINF:150:Epitaph +ffmpeg2wav:youtube-dl:azP8E6JuaeQ +#EXTINF:66:The God Must Be Crazy +ffmpeg2wav:youtube-dl:Zz5JcD2-Du0 +#EXTINF:240:Dance With Me +ffmpeg2wav:youtube-dl:BFtu207by74 +#EXTINF:190:Turkey Dog Coma +ffmpeg2wav:youtube-dl:2lG5Toke86Q +#EXTINF:214:Pythia +ffmpeg2wav:youtube-dl:1V_PFUE2DhA +#EXTINF:231:Plaid - Do Matter (Official Video) +ffmpeg2wav:youtube-dl:bfjpo4WbK00 +#EXTINF:87:Descent Into Madness (feat. Thundercat) (Instrumental) +ffmpeg2wav:youtube-dl:ZQUNz12HGZQ +#EXTINF:405:Bonobo - Animals +ffmpeg2wav:youtube-dl:n5UkQ7T4PH0 +#EXTINF:31:Stirring +ffmpeg2wav:youtube-dl:buKobqOkqw0 +#EXTINF:359:Steam (Prometheus) +ffmpeg2wav:youtube-dl:LKvd5ZyKddU +#EXTINF:300:Jamie xx - The Rest Is Noise +ffmpeg2wav:youtube-dl:MCxpwylKFNE +#EXTINF:127:Turtles +ffmpeg2wav:youtube-dl:TEl9UBNqUTM +#EXTINF:286:Flying Lotus - Never Catch Me ft. Kendrick Lamar +ffmpeg2wav:youtube-dl:2lXD0vv-ds8 +#EXTINF:87:Descent Into Madness (feat. Thundercat) +ffmpeg2wav:youtube-dl:SCKNn9qTwMc +#EXTINF:231:Snugglefish +ffmpeg2wav:youtube-dl:XEnZ6WUYJXI +#EXTINF:205:TODD TERJE - Alfonso Muskedunder +ffmpeg2wav:youtube-dl:ozAswe6R0ts +#EXTINF:340:Pretty Lights - Yellow Bird +ffmpeg2wav:youtube-dl:4NZmRvqYBPI +#EXTINF:165:The Protest (Instrumental) +ffmpeg2wav:youtube-dl:QFGs0ulGiTQ +#EXTINF:261:Flight Of The Ikarus +ffmpeg2wav:youtube-dl:jYANZzS4hXM +#EXTINF:232:Pretty Lights - Let's Get Busy +ffmpeg2wav:youtube-dl:MI2kIcMCCvM +#EXTINF:302:Flying Lotus - Coronus, The Terminator +ffmpeg2wav:youtube-dl:Ak4vLEBxIo4 +#EXTINF:350:God Within - Raincry (Spiritual Thirst) +ffmpeg2wav:youtube-dl:Or59GisJ8Dc +#EXTINF:225:Bonobo - El Toro +ffmpeg2wav:youtube-dl:T4xCW28WXBU +#EXTINF:597:Jon Hopkins - Immunity +ffmpeg2wav:youtube-dl:Y8eQR5DMous +#EXTINF:138:Moment of Hesitation +ffmpeg2wav:youtube-dl:tNzZqcmukdk +#EXTINF:80:Flying Lotus: "Tesla" Performed by Debut Chamber Orchestra +ffmpeg2wav:youtube-dl:NGykD7aw044 +#EXTINF:117:The Protest +ffmpeg2wav:youtube-dl:sRr61zlCAgg +#EXTINF:185:Flying Lotus - Tiny Tortures +ffmpeg2wav:youtube-dl:84uRsgFPDmg +#EXTINF:115:Tesla +ffmpeg2wav:youtube-dl:1hrSQEJkWJQ +#EXTINF:158:Siren Song (feat. Angel Deradoorian) +ffmpeg2wav:youtube-dl:3qDNRHcA_qA +#EXTINF:133:Flying Lotus - Eyes Above (feat. Kendrick Lamar) Unreleased Rare Exclusive +ffmpeg2wav:youtube-dl:xsZf7rwOeEo +#EXTINF:431:KOAN Sound & Asa - Sanctuary (Official Video) ft. Alicia Kiah +ffmpeg2wav:youtube-dl:hEb0ZWVknCI +#EXTINF:1 +03 +05:Bonobo♡Black Sands FULL ALBUM +ffmpeg2wav:youtube-dl:05Jv5p9lI9s +#EXTINF:565:Jon Hopkins - Light Through The Veins +ffmpeg2wav:youtube-dl:1H3pA4X-mhA +#EXTINF:351:Amon Tobin - Stoney Street +ffmpeg2wav:youtube-dl:PXvNZ45lEdE +#EXTINF:184:Flying Lotus - Ready Err Not +ffmpeg2wav:youtube-dl:0XDhz5kanYk +#EXTINF:106:Your Potential//The Beyond (feat. Niki Randa) +ffmpeg2wav:youtube-dl:598lJX31EVc +#EXTINF:134:Protector +ffmpeg2wav:youtube-dl:H1NlbxlbP6I +#EXTINF:324:Pretty Lights - Vibe Vendetta +ffmpeg2wav:youtube-dl:YgXpS830ACY +#EXTINF:285:Bonobo - Stay the Same ft Andreya +ffmpeg2wav:youtube-dl:_jfHalX5atA +#EXTINF:297:Venetian Snares - Ion Divvy +ffmpeg2wav:youtube-dl:ABP8wm2wYfM +#EXTINF:357:Pretty Lights - Prophet +ffmpeg2wav:youtube-dl:vT-AZDY0sC8 +#EXTINF:292:Bonobo - The Keeper Featuring Andreya Tria +ffmpeg2wav:youtube-dl:HyqnUtL28Wc +#EXTINF:276:Persephone Rises +ffmpeg2wav:youtube-dl:tYf0ypg1R9g +#EXTINF:344:Pretty Lights - Always All Ways - A Color Map of the Sun +ffmpeg2wav:youtube-dl:-moXLrfm_SQ +#EXTINF:158:Siren Song (feat. Angel Deradoorian) (Instrumental) +ffmpeg2wav:youtube-dl:xWzqmcC67Es +#EXTINF:289:Pretty Lights - Press Pause - A Color Map of the Sun +ffmpeg2wav:youtube-dl:Pc78OFnITKg +#EXTINF:486:Hybrid - Break My Soul - Video +ffmpeg2wav:youtube-dl:xptIEkCHTZ4 +#EXTINF:146:Dead Man's Tetris (feat. Captain Murphy & Snoop Dogg) +ffmpeg2wav:youtube-dl:3L3lGwOyYoo +#EXTINF:336:KOAN Sound - View From Above +ffmpeg2wav:youtube-dl:mAdnOxplkfM +#EXTINF:573:HARDKISS - The Phoenix (River and Rain) God Within +ffmpeg2wav:youtube-dl:3800R88G2bU +#EXTINF:395:Pretty Lights - Done Wrong - A Color Map of the Sun +ffmpeg2wav:youtube-dl:PNxNa_5L2TU +#EXTINF:260:Bonobo - We Could Forever +ffmpeg2wav:youtube-dl:urCLo4vNpzs +#EXTINF:477:Ulrich Schnauss - Monday Paracetamol +ffmpeg2wav:youtube-dl:5ASjhNBL5fU +#EXTINF:355:Pretty Lights - So Bright feat. Eligh - A Color Map of the Sun +ffmpeg2wav:youtube-dl:Gcjw0c4RGL0 +#EXTINF:94:Cold Dead +ffmpeg2wav:youtube-dl:_NJBUviwWA8 +#EXTINF:309:Pretty Lights - Go Down Sunshine - A Color Map of the Sun +ffmpeg2wav:youtube-dl:MEAUhW15pcA +#EXTINF:243:Pretty Lights - Around The Block feat. Talib Kweli (Official Music Video) +ffmpeg2wav:youtube-dl:_RlcrCRSY4Y +#EXTINF:160:Coronus, the Terminator (Instrumental) +ffmpeg2wav:youtube-dl:pOeHKiKlt1U +#EXTINF:111:The Boys Who Died in Their Sleep (feat. Captain Murphy) (Instrumental) +ffmpeg2wav:youtube-dl:a9sSNUiQaYs +#EXTINF:306:Oneohtrix Point Never - Chrome Country +ffmpeg2wav:youtube-dl:FbqBXkmukr4 +#EXTINF:369:Pretty Lights - Color of My Soul +ffmpeg2wav:youtube-dl:RG712JkXP_0 +#EXTINF:111:The Boys Who Died in Their Sleep (feat. Captain Murphy) +ffmpeg2wav:youtube-dl:pmJhmINB758 +#EXTINF:309:Unfinished Sympathy (2012 Mix/Master) +ffmpeg2wav:youtube-dl:VLRa4nvkTy4 +#EXTINF:84:Theme +ffmpeg2wav:youtube-dl:LO5A-o84baU +#EXTINF:296:Pretty Lights - My Only Hope - A Color Map of the Sun +ffmpeg2wav:youtube-dl:iDR6FGmV2Eo +#EXTINF:235:Never Catch Me (feat. Kendrick Lamar) (Instrumental) +ffmpeg2wav:youtube-dl:BmLP2dZdBUg +#EXTINF:354:Chrome Sparks - The Meaning of Love (Music Video) +ffmpeg2wav:youtube-dl:lM2XJFph-eg +#EXTINF:261:Pretty Lights - One Day They'll Know (ODESZA Remix) - A Color Map of the Sun Remixes +ffmpeg2wav:youtube-dl:oAncODpky6E +#EXTINF:491:God Within - Daylight (Dreamerdreamsalone) +ffmpeg2wav:youtube-dl:BEdWBBMCvDM +#EXTINF:424:Hawke - 3 Nudes in a Purple Garden +ffmpeg2wav:youtube-dl:oJexc4-fb8A +#EXTINF:681:God Within - The Phoenix (Throw Your Guns) original white label version +ffmpeg2wav:youtube-dl:6VXmq_BigoA +#EXTINF:470:Autechre - Nil +ffmpeg2wav:youtube-dl:hfTAv8htci8 +#EXTINF:680:Hardkiss - Diazapam Jam (feat. Little Wing) +ffmpeg2wav:youtube-dl:8BmBGm69y0Y +#EXTINF:526:Rabbit In The Moon - Out Of Body Experience - Phase 3 (Burning Spear) +ffmpeg2wav:youtube-dl:r-1K4iY4XIs +#EXTINF:318:Lusine - 'Panoramic' +ffmpeg2wav:youtube-dl:YmLNzYeI7EU +#EXTINF:396:Hardkiss - Pacific Coastal Highway 1 (feat. Hawke) +ffmpeg2wav:youtube-dl:x1YHkOAKhXQ +#EXTINF:485:The Drum Club - Drums are Dangerous (Drugs are Dangerous) +ffmpeg2wav:youtube-dl:ekgprzX7ckw +#EXTINF:484:Hawke - 3 Nudes (Having Sax On Acid) +ffmpeg2wav:youtube-dl:oepDktVS9Zk +#EXTINF:264:Plaid - CLOCK +ffmpeg2wav:youtube-dl:seRyUTdqbRo +#EXTINF:241:Aphex Twin - 4 +ffmpeg2wav:youtube-dl:6iiK4MgIPtI +#EXTINF:637:deadmau5 - Strobe +ffmpeg2wav:youtube-dl:tKi9Z-f6qX4 +#EXTINF:307:Tycho - Coastal Brake (Lusine remix) +ffmpeg2wav:youtube-dl:AvYYmqVrwH4 +#EXTINF:416:Little Wing - Mercy, Mercy +ffmpeg2wav:youtube-dl:GdRYLxZkStA +#EXTINF:472:Grandbrothers - Ezra was Right +ffmpeg2wav:youtube-dl:ip2g8DR-z0M +#EXTINF:238:PETIT BISCUIT - Sunset Lover +ffmpeg2wav:youtube-dl:wuCK-oiE3rM +#EXTINF:544:Eric Prydz - Opus (OUT NOW) +ffmpeg2wav:youtube-dl:iRA82xLsb_w +#EXTINF:534:Shpongle - Invisible Man In A Fluorescent Suit +ffmpeg2wav:youtube-dl:uwR4GFAtJ4k +#EXTINF:513:Blanck Mass - Hive Mind +ffmpeg2wav:youtube-dl:BYhNUzqSt2Y +#EXTINF:409:The Future Sound Of London - Papua New Guinea HD (Offical Video) +ffmpeg2wav:youtube-dl:wfWMv8Y1V5E +#EXTINF:298:Jon Hopkins - Abandon Window - Immunity album version +ffmpeg2wav:youtube-dl:sc1IkYwKCtM +#EXTINF:224:Pink Floyd - On The Run - Remastered +ffmpeg2wav:youtube-dl:Vy4TYbdVJmQ +#EXTINF:350:04 Tomita - Clair De Lune (Suite Bergamasque, No.3) +ffmpeg2wav:youtube-dl:sRRk7JChSts +#EXTINF:284:Hardkiss - Top Secret Song +ffmpeg2wav:youtube-dl:iYNvv36Mqr8 diff --git a/state/liquidsoap/playlists/Daniel/Dan - electronicrealmusic.txt b/state/liquidsoap/playlists/Daniel/Dan - electronicrealmusic.txt new file mode 100644 index 0000000..e69de29 diff --git a/state/liquidsoap/playlists/Daniel/Dan - hackingslashing.txt b/state/liquidsoap/playlists/Daniel/Dan - hackingslashing.txt new file mode 100644 index 0000000..7990abe --- /dev/null +++ b/state/liquidsoap/playlists/Daniel/Dan - hackingslashing.txt @@ -0,0 +1,289 @@ +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=9ascsqirWlo +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=jEgX64n3T7g +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=qtFwNa6YdY4 +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=k-K6wbCfaD0 +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=88naVnS_-_Q +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=9PjXOAM2Y60 +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=Kp5JlkV3Dt4 +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=WFl7KHCtdT0 +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=XugakCZUEzo +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=hNZvVM2i7S4 +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=iOI8kIIB1bY +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=MiuJaFNn8Y0 +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=xpJc28Wwj4s +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=6AXwm6MpxZ4 +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=FM3gwN25oEs +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=DvPOstoXgFI +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=hBS9NjnYApk +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=RPHAjVs-D7c +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=Fh7WpVJX1KE +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=hayXW5R0a3I +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=rl7HAdw_JfQ +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=rVqAdIMQZlk +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=-KRFSUTrIkc +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=xfWbxhPF92M +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=Qvv1C3InlOM +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=DJmmcF4PD60 +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=vKYCAduItKs +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=aC23iTyr4V4 +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=mNBME0Hm28g +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=Vvbl2IgukV0 +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=H9i09M6OCZE +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=LMiu4Hvdd0o +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=UhDztJ9UY-c +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=LYphoZvTb4E +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=6Gdty1b3gPA +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=jWAWEz82ZUk +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=LMMLCwO8fWg +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=9zFm4vtel30 +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=VY8VMZPuD7I +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=17PM-UMVud8 +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=IddDWBpkzYg +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=T1iDhnUDN-s +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=oOT2-OTebx0 +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=fy45K5wFnZ0 +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=Ru5oKeediTE +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=iioE03anaP8 +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=wOBJscCoQCI +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=RU3V0AiunoM +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=raN3w6fvSLM +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=V_LuQvTiVfg +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=vyjNCFje8bc +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=o-K_xgxrL4s +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=t64m5Lm7CrA +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=LP6X0jTl78k +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=unydrcqqSFA +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=ZdUINbi4wSY +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=HnhuZ_p-dbQ +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=Jozz7RmLpq0 +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=iV98MpubQIM +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=YNETOMfLtc0 +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=8scHKFwr0og +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=rkY96VwNRiA +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=4bq0AeL0kt4 +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=j_0PzMxIPXI +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=B5UCmF-sKuo +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=e7VzteyuZkM +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=Cn1I6hBTWcY +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=f09iWSmR8kc +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=_K6Vm2XW0nA +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=UtPTvyjtx3g +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=PElhV8z7I60 +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=lh4brL7PC2E +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=tGKaPCewPiY +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=PmRraoL9v7k +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=04bg9IC9N6w +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=5XYsjVLbvOk +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=t989-ukRYTY +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=Ba-c6LIuluY +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=sYnrtGCgsM8 +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=77VqzpvE1zg +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=FVjldL32jPQ +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=SfdPkM_VDVQ +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=5YfKn62wwMM +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=WacIBze4YTU +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=2iSzdN9dyMM +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=qfU2zmLATOY +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=DoxUiqUpkw4 +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=Sk9XYQMRiLY +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=Zm-AtGLyMTg +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=LGtLJDP1BIk +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=28tZ-S1LFok +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=0HBLyp2uxcc +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=pdmk3748tLo +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=z3MH4l1-t_8 +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=hsJ-wV4-13U +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=gssbsabKq9E +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=DfM46XR8wGQ +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=UkKcEia0-N8 +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=eY-eyZuW_Uk +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=SDQ2LIBNBkI +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=cb61AVsxD34 +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=yIJSTAOSOXw +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=H-b9hgd-3Tc +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=7ZWQRaY0Tns +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=PUMkxH03V5c +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=1hrgT_ZDUvs +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=k1uUIJPD0Nk +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=qkP6Tf79UrM +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=-DkslcOhytU +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=sI6hApZPv7A +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=joI6Dg1uNBY +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=U0CLws5Y-8E +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=owgH8sPae7g +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=3YHBFmMMECg +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=y-7ZhO0qZ9g +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=05Jv5p9lI9s +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=egsICf0cz1s +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=mCtvJu3sN3g +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=66VnOdk6oto +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=_mN7R0oHEXc +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=oLoHayXLKCQ +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=P_MZOfbl428 +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=twZODj0yERs +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=feqkXcNy-XY +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=ZJSQxbedplM +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=-6bbM5HZz5c +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=AjI2J2SQ528 +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=Zy7V5DXUhCM +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=einRIcF-z3U +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=oJ9E0mC9Cwk +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=7oQDBxhtFHw +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=Pib8eYDSFEI +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=7QZ-hbL6m60 +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=Ur17pfjIRVo +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=sxvtHCNU1DA +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=rVeMiVU77wo +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=UGXX7Yus_oE +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=6ihFnQc8neM +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=5yYS6D-C3ew +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=Ek0SgwWmF9w +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=bcsjz0HXGYk +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=xRxlJc09hv0 +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=YcRWolbLl9Q +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=3-s8hmcglRQ +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=_UBOzklsrAg +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=_uz5niB5nJo +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=eQK7KSTQfaw +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=i-8lgj0gf6o +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=EBe2EdTMumU +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=qKzH6pRfzoU +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=mehLx_Fjv_c +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=Eck9slViEoU +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=andd1eYucx0 +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=AXT4dxCrmEI +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=MpY38Fzfqkg +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=TP4DIQ-weio +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=uNa1AZpmndA +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=fhzkeFiXfPI +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=ZvSgLHWR16o +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=ICcaUXZcdgI +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=5ASjhNBL5fU +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=Am1iELQl31k +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=_ILsdcs__ME +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=5mQVljB7JGw +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=0xwuNRX5aoo +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=lQvqqBsjy6o +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=1FH-q0I1fJY +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=YURQicLo7Ik +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=5kPWEkXuk-s +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=l02eAi76668 +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=rMKlE6A99Ug +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=anlpzG-ZyUo +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=fWf7xtRurZ8 +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=2smjJZ0uQRs +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=yxWBd840E9g +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=IvYB4rC9NnE +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=d5vGjCoQM1s +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=V1HM7t1z9D8 +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=Y5CMwOQvcpM +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=fW7_UkLyUBA +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=HXZqRK-PcqE +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=gI2eO_mNM88 +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=YUGvgFwZOeU +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=-9pgIVcB3rk +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=4ofEEywrKBk +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=NPpRJoYISSQ +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=-ZQPepIp1Sc +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=Yq_tDOFU5tY +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=7ldYxgJQG_E +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=M8ybWaIvmaM +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=ldH_PiySMrQ +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=em0MknB6wFo +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=NVKc855rg8w +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=Zyz0j_h4RXE +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=3GUGK-cKs7A +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=qLrnkK2YEcE +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=RxabLA7UQ9k +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=rvZNRrwkA2c +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=tfrWuiQ4QNc +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=rBOWeP70VHA +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=Kwjn8YaaB1Q +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=xUIBnmdJJ50 +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=iFwOmxP56-g +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=nl3g26MOfrg +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=ix26SdBmoGw +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=1eIYIqcqtqw +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=7nktU07uLGQ +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=MAxJZTTk0_w +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=nDkkK-KHjks +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=SWU51KfLevo +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=UA3W7q4uDhI +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=SZ26_buhHfI +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=jKWVNlZL32k +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=4Lv9Cz08lNo +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=KjC87QMc1C8 +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=olYxU2c46As +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=BcoPKWzLjrE +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=BEbTHir5itc +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=yT0gRc2c2wQ +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=vWD7k6TrJ-g +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=dYQryFBQA4Q +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=yyptwfWhlAg +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=S3zL3YLhKl4 +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=A-ZjhEJ6okI +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=BEvpWkbmFFI +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=p48uWkI-NrI +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=eHFx11tUO1M +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=WmuU7XV45Qk +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=_R7nTD6YBZs +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=KhrteSZXFzM +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=htTxkyjTBmc +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=uCKeVj0JDjU +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=Rh3hSYgZyJE +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=lG5aSZBAuPs +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=_2093VBJyWs +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=ts922ocXdkk +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=nM_txL43iFM +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=ap65bQZZfDc +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=-woDJsRnpDI +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=ktvTqknDobU +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=hxApQOthgtY +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=O7kCIX2KiS4 +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=JaM6z2QkLc8 +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=vZTDrcuoLk0 +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=qr7IPnV0Qzc +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=V7zUd9jFlJo +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=Xh7pR3qe2Zk +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=Xqw4wo8vdY8 +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=NkZNK5D09U8 +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=wnGdllCU7EY +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=I8eKe9l31wc +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=xnSew-tCuPo +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=mjOJW1CG_UQ +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=z6RylZqjwmk +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=epCPoQchswE +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=ETbGpGJNVLM +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=3oLxt586JvU +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=YeaGUfZM5hs +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=nvUeo5sagkA +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=l6eSksEp27U +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=YHVw3LQEFl0 +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=H9IKD9ayQeg +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=_xlXdMKD3dY +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=h9jH55qYrYM +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=dsAFJIGvbU8 +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=dcxsheROd3E +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=Wpoz8Y4fcAE +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=lJ71NUL9Cp4 +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=KXn70dIVZKI +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=iOaqV0MmToA +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=-OGDiOnll80 +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=qvkyXiOeq9o +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=z_DEC9bo8RU +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=02qa_WHfEjI +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=IEOFPvlNEFM +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=0x6PhH6v0Ls +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=0i_al-Jw6Aw +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=gyN_jD58qCI +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=cfOa1a8hYP8 +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=tgIqecROs5M +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=pzXUfg04gdw +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=tdU46cSqslI +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=3SLZ2qFtVl8 +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=VnmLUSdooKk +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=VxI7x5G4nJk +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=6zv3HmPxSZk +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=KzimgV0ShE4 +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=vhDnWLfm07o +ffmpeg2wav:youtube-dl:https$(colon)//www.youtube.com/watch?v=x5GuBa4Bbnw diff --git a/web/Dockerfile b/web/Dockerfile new file mode 100644 index 0000000..0a7f157 --- /dev/null +++ b/web/Dockerfile @@ -0,0 +1,3 @@ +FROM php:apache + +COPY . /var/www/html diff --git a/web/admin.php b/web/admin.php new file mode 100644 index 0000000..5bd8da4 --- /dev/null +++ b/web/admin.php @@ -0,0 +1,52 @@ + + + + + +
+ + + + +
+ '; + switch ($_REQUEST['action']) { + case 'NEXT': + echo telnet_send("dodsorfas(dot)main.skip"); + break; + case 'INFO': + cool_print(get_infos(), 'debug'); + break; + case 'DIRE': + echo "TODO"; + break; + case 'REQUEST': + echo "TODO"; + break; + case 'REFRESH': + break; + default: + print_r($_REQUEST); + print_r($_ENV); + break; + } + echo ''; + } + ?> + + + + + + + + + +
Title
 
+ + diff --git a/web/functions.php b/web/functions.php new file mode 100644 index 0000000..21ec393 --- /dev/null +++ b/web/functions.php @@ -0,0 +1,124 @@ +TELNET FAILURE: $errstr ($errno)
"); + } + fwrite($fp, "$command\nquit\n"); + $eat = ''; + while (!feof($fp)) { + $eat .= fgets($fp, 1024); + } + fclose($fp); + return $eat; +} + +function cache_get($name) { + $cache_file = "$name.cache"; + if (file_exists($cache_file) && (filemtime($cache_file) > (time() - 5 ))) { + return json_decode(file_get_contents($cache_file)); + } + return false; +} +function cache_set($name, $value) { + $cache_file = "$name.cache"; + file_put_contents($cache_file, json_encode($value), LOCK_EX); +} +function get_infos() { + $infos = array(); + $metadata = get_metadata(); + $infos['current'] = array_shift($metadata); + //include_once('getid3/getid3/getid3.php'); + //$getID3 = new getID3; + $infos['history'] = $metadata; + return $infos; +} +function get_metadata() { + $entries = cache_get('metadata'); + if ($entries) { + foreach ($entries as $key => $value) { + $entries[$key] = (array)$value; + } + } else { + $lines = explode("\n", trim(telnet_send("dodsorfas(dot)main.metadata"))); + $entries_assoc = []; + $entry_number = 0; + foreach ($lines as $line) { + if (in_array(trim($line), array('END', 'Bye!'))) { + continue; + } + $match = preg_match('/^---\ ([0-9]*)\ ---/', $line, $search); + if ($match) { + if ($entry_number) { + $entries_assoc[$entry_number] = $entry; + } + $entry_number = intval($search[1]); + $entry = array(); + } else { + $value = explode('=', $line, 2); + $entry[$value[0]] = trim(trim($value[1]), '"'); + } + } + $entries_assoc[$entry_number] = $entry; + $entries = array(); + for ($i = 1; $i < sizeof($entries_assoc); $i++) { + $entry = $entries_assoc[$i]; + $pos = strrpos($entry['title'], '('); + $entry['left_title'] = trim(substr($entry['title'], 0, $pos)); + $entry['right_title'] = substr(trim(substr($entry['title'], $pos)), 1, -1); + if (preg_match('/(LIVE de copains- radio Salut c\'est cool)/', $entry['title'])) { + $entry['live'] = 1; + $entry['mode'] = 'live'; + $entry['artist'] = 'Copains de salut c\'est cool'; + } else if (preg_match('/(LIVE de SCC - radio Salut c\'est cool)/', $entry['title'])) { + $entry['live'] = 1; + $entry['mode'] = 'live'; + $entry['live_artist'] = 'scc'; + //$entry['artist'] = 'salut c\'est cool'; + } else { + $mode = explode(' - ', $entry['right_title']); + $entry['live'] = 0; + if ($mode[0]) { + $entry['mode'] = $mode[0]; + } + } + if (empty($entry['full_title'])) { + if ($entry['artist'] && $entry['left_title']) { + $entry['full_title'] = sprintf('%s - %s', $entry['artist'], $entry['left_title']); + } else { + $entry['full_title'] = $entry['left_title']; + } + } + if (empty($entry['full_title'])) { + //$entry['full_title'] = 'Morceau sans nom'; + $entry['full_title'] = basename($entry['filename']); + } + /*if ($entry['live_artist'] == 'scc') { + if (empty($entry['full_title'])) { + $entry['full_title'] = 'salut c\'est cool en live'; + } else { + $entry['full_title'] = sprintf('salut c\'est cool en live (%s)', $entry['full_title']); + } + }*/ + $entries[] = $entry; + } + cache_set('metadata', $entries); + } + return $entries; +} +function cool_print($data, $format) { + switch ($format) { + case 'json': + echo(json_encode($data)); + break; + case 'jsonp': + printf("%s(%s);", $_GET['callback'], json_encode($data)); + break; + case 'debug': + echo '
';
+    print_r($data);
+    echo '
'; + break; + } +} +?> diff --git a/web/index.php b/web/index.php new file mode 100644 index 0000000..e10404a --- /dev/null +++ b/web/index.php @@ -0,0 +1,24 @@ + + + + + Radio Dodsorfas + + + +
+ Song:
+ +
+ + diff --git a/yt-m3u b/yt-m3u new file mode 100755 index 0000000..d6ce532 --- /dev/null +++ b/yt-m3u @@ -0,0 +1,29 @@ +#!/bin/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