Merge branch 'develop' into 'master'

Develop

See merge request Dandellion/Radio-dodsorfas!6
This commit is contained in:
Daniel Løvbrøtte Olsen 2018-10-21 12:20:45 +00:00
commit 232688c108
27 changed files with 231 additions and 373 deletions

View File

@ -8,7 +8,7 @@ services:
- ./state/liquidsoap/playlists:/playlists - ./state/liquidsoap/playlists:/playlists
- ./state/liquidsoap/data:/data - ./state/liquidsoap/data:/data
- /etc/localtime:/etc/localtime:ro - /etc/localtime:/etc/localtime:ro
command: /bin/bash -xc 'env; liquidsoap -v --debug /config/main.liq' command: /bin/bash -xc 'env; liquidsoap -v --debug /config/debug.liq'
environment: environment:
- HARBOR_PASSWORD=MGT7aEqP - HARBOR_PASSWORD=MGT7aEqP
- LIVE_PASSWORD=fuckyoujoa - LIVE_PASSWORD=fuckyoujoa
@ -63,6 +63,8 @@ services:
- MAIN_PORT_5000_TCP=tcp://main:5000 - MAIN_PORT_5000_TCP=tcp://main:5000
links: links:
- main - main
volumes:
- ./state/liquidsoap/playlists:/playlists
labels: labels:
- traefik.enable=true - traefik.enable=true
- traefik.frontend.rule=Host:radio.dodsorf.as - traefik.frontend.rule=Host:radio.dodsorf.as

View File

@ -5,7 +5,7 @@ MAINTAINER Daniel
USER root USER root
RUN apt-get -q update && \ RUN apt-get -q update && \
apt-get install -qq -yy python festival sox && \ apt-get install -qq -yy python festival sox ffmpeg && \
apt-get clean apt-get clean
RUN curl -L https://yt-dl.org/downloads/latest/youtube-dl -o /usr/local/bin/youtube-dl && \ RUN curl -L https://yt-dl.org/downloads/latest/youtube-dl -o /usr/local/bin/youtube-dl && \

View File

@ -0,0 +1,62 @@
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
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"
)
)
)
)
normal_songs = playlist(reload=600, mime_type="application/x-mpegURL", "http://web/playlist.php")
halloween = playlist("/playlists/events/Halloween.m3u")
requests = audio_to_stereo(drop_video(request.queue(id="request")))
default = switch([
({true}, normal_songs)
])
mix = blank()
mix = fallback(track_sensitive=false, [default, mix])
mix = fallback(track_sensitive=true, [requests,mix])
mix = fallback(track_sensitive=false, transitions=[crossfade], [live, mix])
mix = normalize(mix)
mix = audio_to_stereo(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
)

View File

@ -113,62 +113,62 @@ Halloween = "/playlists/events/Halloween.m3u"
## END PLAYLISTS ## END PLAYLISTS
randomsong = playlist(conservative=true, JoakimDiverse) randomsong = random(playlist(conservative=true, JoakimDiverse))
count = list.length(playlist.parse(JoakimDiverse)) count = list.length(playlist.parse(JoakimDiverse))
randomsong = random(weights=[list.length(playlist.parse(AlternativeJoa)), count], [playlist(conservative=true, AlternativeJoa), randomsong]) randomsong = random(weights=[list.length(playlist.parse(AlternativeJoa)), count], [playlist(AlternativeJoa), randomsong])
count = count + list.length(playlist.parse(AlternativeJoa)) count = count + list.length(playlist.parse(AlternativeJoa))
randomsong = random(weights=[list.length(playlist.parse(DanAwesome)), count], [playlist(conservative=true, DanAwesome), randomsong]) randomsong = random(weights=[list.length(playlist.parse(DanAwesome)), count], [playlist(DanAwesome), randomsong])
count = count + list.length(playlist.parse(DanAwesome)) count = count + list.length(playlist.parse(DanAwesome))
randomsong = random(weights=[list.length(playlist.parse(DanDontStarve1)), count], [playlist(conservative=true, DanDontStarve1), randomsong]) randomsong = random(weights=[list.length(playlist.parse(DanDontStarve1)), count], [playlist(DanDontStarve1), randomsong])
count = count + list.length(playlist.parse(DanDontStarve1)) count = count + list.length(playlist.parse(DanDontStarve1))
randomsong = random(weights=[list.length(playlist.parse(DanDubstepThingies)), count], [playlist(conservative=true, DanDubstepThingies), randomsong]) randomsong = random(weights=[list.length(playlist.parse(DanDubstepThingies)), count], [playlist(DanDubstepThingies), randomsong])
count = count + list.length(playlist.parse(DanDubstepThingies)) count = count + list.length(playlist.parse(DanDubstepThingies))
randomsong = random(weights=[list.length(playlist.parse(DanEdgyMusicYT)), count], [playlist(conservative=true, DanEdgyMusicYT), randomsong]) randomsong = random(weights=[list.length(playlist.parse(DanEdgyMusicYT)), count], [playlist(DanEdgyMusicYT), randomsong])
count = count + list.length(playlist.parse(DanEdgyMusicYT)) count = count + list.length(playlist.parse(DanEdgyMusicYT))
randomsong = random(weights=[list.length(playlist.parse(DanElectronicRealMusic)), count], [playlist(conservative=true,DanElectronicRealMusic), randomsong]) randomsong = random(weights=[list.length(playlist.parse(DanElectronicRealMusic)), count], [playlist(DanElectronicRealMusic), randomsong])
count = count + list.length(playlist.parse(DanElectronicRealMusic)) count = count + list.length(playlist.parse(DanElectronicRealMusic))
randomsong = random(weights=[list.length(playlist.parse(TaylorSwift)), count], [playlist(conservative=true, TaylorSwift), randomsong]) randomsong = random(weights=[list.length(playlist.parse(TaylorSwift)), count], [playlist(TaylorSwift), randomsong])
count = count + list.length(playlist.parse(TaylorSwift)) count = count + list.length(playlist.parse(TaylorSwift))
randomsong = random(weights=[list.length(playlist.parse(AstridS)), count], [playlist(conservative=true, AstridS), randomsong]) randomsong = random(weights=[list.length(playlist.parse(AstridS)), count], [playlist(AstridS), randomsong])
count = count + list.length(playlist.parse(AstridS)) count = count + list.length(playlist.parse(AstridS))
randomsong = random(weights=[list.length(playlist.parse(Coldplay)), count], [playlist(conservative=true, Coldplay), randomsong]) randomsong = random(weights=[list.length(playlist.parse(Coldplay)), count], [playlist(Coldplay), randomsong])
count = count + list.length(playlist.parse(Coldplay)) count = count + list.length(playlist.parse(Coldplay))
randomsong = random(weights=[list.length(playlist.parse(DemiLovato)), count], [playlist(conservative=true, DemiLovato), randomsong]) randomsong = random(weights=[list.length(playlist.parse(DemiLovato)), count], [playlist(DemiLovato), randomsong])
count = count + list.length(playlist.parse(DemiLovato)) count = count + list.length(playlist.parse(DemiLovato))
randomsong = random(weights=[list.length(playlist.parse(KatyPerry)), count], [playlist(conservative=true, KatyPerry), randomsong]) randomsong = random(weights=[list.length(playlist.parse(KatyPerry)), count], [playlist(KatyPerry), randomsong])
count = count + list.length(playlist.parse(KatyPerry)) count = count + list.length(playlist.parse(KatyPerry))
randomsong = random(weights=[list.length(playlist.parse(SelenaGomez)), count], [playlist(conservative=true, SelenaGomez), randomsong]) randomsong = random(weights=[list.length(playlist.parse(SelenaGomez)), count], [playlist(SelenaGomez), randomsong])
count = count + list.length(playlist.parse(SelenaGomez)) count = count + list.length(playlist.parse(SelenaGomez))
randomsong = random(weights=[list.length(playlist.parse(ShawnMendes)), count], [playlist(conservative=true, ShawnMendes), randomsong]) randomsong = random(weights=[list.length(playlist.parse(ShawnMendes)), count], [playlist(ShawnMendes), randomsong])
count = count + list.length(playlist.parse(ShawnMendes)) count = count + list.length(playlist.parse(ShawnMendes))
randomsong = random(weights=[list.length(playlist.parse(ZaraLarsson)), count], [playlist(conservative=true, ZaraLarsson), randomsong]) randomsong = random(weights=[list.length(playlist.parse(ZaraLarsson)), count], [playlist(ZaraLarsson), randomsong])
count = count + list.length(playlist.parse(ZaraLarsson)) count = count + list.length(playlist.parse(ZaraLarsson))
randomsong = random(weights=[list.length(playlist.parse(Musicals)), count], [playlist(conservative=true, Musicals), randomsong]) randomsong = random(weights=[list.length(playlist.parse(Musicals)), count], [playlist(Musicals), randomsong])
count = count + list.length(playlist.parse(Musicals)) count = count + list.length(playlist.parse(Musicals))
randomsong = random(weights=[list.length(playlist.parse(Soundtracks)), count], [playlist(conservative=true, Soundtracks), randomsong]) randomsong = random(weights=[list.length(playlist.parse(Soundtracks)), count], [playlist(Soundtracks), randomsong])
count = count + list.length(playlist.parse(Soundtracks)) count = count + list.length(playlist.parse(Soundtracks))
randomsong = random(weights=[list.length(playlist.parse(JoakimRemixes)), count], [playlist(conservative=true, JoakimRemixes), randomsong]) randomsong = random(weights=[list.length(playlist.parse(JoakimRemixes)), count], [playlist(JoakimRemixes), randomsong])
count = count + list.length(playlist.parse(JoakimRemixes)) count = count + list.length(playlist.parse(JoakimRemixes))
#randomsong = random(weights=[list.length(playlist.parse(Halloween)), count], [playlist(conservative=true, Halloween), randomsong]) randomsong = random(weights=[list.length(playlist.parse(Halloween)), count], [playlist(Halloween), randomsong])
#count = count + list.length(playlist.parse(Halloween)) count = count + list.length(playlist.parse(Halloween))
randomsong = audio_to_stereo(randomsong) randomsong = audio_to_stereo(randomsong)

View File

@ -1,38 +0,0 @@
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=Gd9OhYroLN0
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=YLHpvjrFpe0
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=YSC0zQnLIWQ
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=SHqo2FDJSU0
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=r00ikilDxW4
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=vjVkXlxsO8Q
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=aZkd91HXng4
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=yFFljFuGfmc
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=5qF_qbaWt3Q
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=3YxaaGgTQYM
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=Um8EEzl42PQ
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=ScNNfyq3d_w
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=5hDZbroaQDc
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=y9uSyICrtow
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=R7IJC6nMons
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=0nlJuwO0GDs
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=KOrXKiSy8ZY
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=jDyZj4msaoE

View File

@ -1,289 +0,0 @@
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=9ascsqirWlo
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=jEgX64n3T7g
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=qtFwNa6YdY4
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=k-K6wbCfaD0
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=88naVnS_-_Q
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=9PjXOAM2Y60
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=Kp5JlkV3Dt4
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=WFl7KHCtdT0
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=XugakCZUEzo
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=hNZvVM2i7S4
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=iOI8kIIB1bY
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=MiuJaFNn8Y0
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=xpJc28Wwj4s
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=6AXwm6MpxZ4
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=FM3gwN25oEs
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=DvPOstoXgFI
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=hBS9NjnYApk
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=RPHAjVs-D7c
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=Fh7WpVJX1KE
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=hayXW5R0a3I
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=rl7HAdw_JfQ
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=rVqAdIMQZlk
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=-KRFSUTrIkc
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=xfWbxhPF92M
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=Qvv1C3InlOM
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=DJmmcF4PD60
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=vKYCAduItKs
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=aC23iTyr4V4
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=mNBME0Hm28g
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=Vvbl2IgukV0
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=H9i09M6OCZE
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=LMiu4Hvdd0o
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=UhDztJ9UY-c
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=LYphoZvTb4E
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=6Gdty1b3gPA
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=jWAWEz82ZUk
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=LMMLCwO8fWg
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=9zFm4vtel30
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=VY8VMZPuD7I
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=17PM-UMVud8
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=IddDWBpkzYg
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=T1iDhnUDN-s
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=oOT2-OTebx0
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=fy45K5wFnZ0
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=Ru5oKeediTE
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=iioE03anaP8
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=wOBJscCoQCI
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=RU3V0AiunoM
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=raN3w6fvSLM
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=V_LuQvTiVfg
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=vyjNCFje8bc
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=o-K_xgxrL4s
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=t64m5Lm7CrA
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=LP6X0jTl78k
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=unydrcqqSFA
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=ZdUINbi4wSY
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=HnhuZ_p-dbQ
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=Jozz7RmLpq0
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=iV98MpubQIM
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=YNETOMfLtc0
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=8scHKFwr0og
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=rkY96VwNRiA
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=4bq0AeL0kt4
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=j_0PzMxIPXI
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=B5UCmF-sKuo
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=e7VzteyuZkM
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=Cn1I6hBTWcY
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=f09iWSmR8kc
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=_K6Vm2XW0nA
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=UtPTvyjtx3g
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=PElhV8z7I60
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=lh4brL7PC2E
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=tGKaPCewPiY
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=PmRraoL9v7k
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=04bg9IC9N6w
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=5XYsjVLbvOk
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=t989-ukRYTY
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=Ba-c6LIuluY
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=sYnrtGCgsM8
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=77VqzpvE1zg
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=FVjldL32jPQ
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=SfdPkM_VDVQ
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=5YfKn62wwMM
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=WacIBze4YTU
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=2iSzdN9dyMM
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=qfU2zmLATOY
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=DoxUiqUpkw4
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=Sk9XYQMRiLY
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=Zm-AtGLyMTg
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=LGtLJDP1BIk
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=28tZ-S1LFok
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=0HBLyp2uxcc
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=pdmk3748tLo
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=z3MH4l1-t_8
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=hsJ-wV4-13U
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=gssbsabKq9E
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=DfM46XR8wGQ
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=UkKcEia0-N8
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=eY-eyZuW_Uk
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=SDQ2LIBNBkI
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=cb61AVsxD34
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=yIJSTAOSOXw
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=H-b9hgd-3Tc
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=7ZWQRaY0Tns
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=PUMkxH03V5c
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=1hrgT_ZDUvs
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=k1uUIJPD0Nk
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=qkP6Tf79UrM
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=-DkslcOhytU
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=sI6hApZPv7A
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=joI6Dg1uNBY
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=U0CLws5Y-8E
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=owgH8sPae7g
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=3YHBFmMMECg
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=y-7ZhO0qZ9g
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=05Jv5p9lI9s
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=egsICf0cz1s
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=mCtvJu3sN3g
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=66VnOdk6oto
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=_mN7R0oHEXc
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=oLoHayXLKCQ
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=P_MZOfbl428
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=twZODj0yERs
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=feqkXcNy-XY
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=ZJSQxbedplM
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=-6bbM5HZz5c
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=AjI2J2SQ528
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=Zy7V5DXUhCM
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=einRIcF-z3U
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=oJ9E0mC9Cwk
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=7oQDBxhtFHw
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=Pib8eYDSFEI
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=7QZ-hbL6m60
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=Ur17pfjIRVo
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=sxvtHCNU1DA
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=rVeMiVU77wo
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=UGXX7Yus_oE
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=6ihFnQc8neM
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=5yYS6D-C3ew
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=Ek0SgwWmF9w
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=bcsjz0HXGYk
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=xRxlJc09hv0
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=YcRWolbLl9Q
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=3-s8hmcglRQ
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=_UBOzklsrAg
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=_uz5niB5nJo
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=eQK7KSTQfaw
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=i-8lgj0gf6o
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=EBe2EdTMumU
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=qKzH6pRfzoU
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=mehLx_Fjv_c
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=Eck9slViEoU
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=andd1eYucx0
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=AXT4dxCrmEI
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=MpY38Fzfqkg
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=TP4DIQ-weio
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=uNa1AZpmndA
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=fhzkeFiXfPI
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=ZvSgLHWR16o
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=ICcaUXZcdgI
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=5ASjhNBL5fU
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=Am1iELQl31k
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=_ILsdcs__ME
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=5mQVljB7JGw
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=0xwuNRX5aoo
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=lQvqqBsjy6o
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=1FH-q0I1fJY
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=YURQicLo7Ik
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=5kPWEkXuk-s
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=l02eAi76668
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=rMKlE6A99Ug
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=anlpzG-ZyUo
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=fWf7xtRurZ8
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=2smjJZ0uQRs
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=yxWBd840E9g
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=IvYB4rC9NnE
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=d5vGjCoQM1s
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=V1HM7t1z9D8
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=Y5CMwOQvcpM
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=fW7_UkLyUBA
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=HXZqRK-PcqE
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=gI2eO_mNM88
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=YUGvgFwZOeU
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=-9pgIVcB3rk
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=4ofEEywrKBk
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=NPpRJoYISSQ
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=-ZQPepIp1Sc
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=Yq_tDOFU5tY
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=7ldYxgJQG_E
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=M8ybWaIvmaM
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=ldH_PiySMrQ
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=em0MknB6wFo
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=NVKc855rg8w
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=Zyz0j_h4RXE
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=3GUGK-cKs7A
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=qLrnkK2YEcE
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=RxabLA7UQ9k
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=rvZNRrwkA2c
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=tfrWuiQ4QNc
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=rBOWeP70VHA
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=Kwjn8YaaB1Q
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=xUIBnmdJJ50
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=iFwOmxP56-g
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=nl3g26MOfrg
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=ix26SdBmoGw
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=1eIYIqcqtqw
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=7nktU07uLGQ
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=MAxJZTTk0_w
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=nDkkK-KHjks
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=SWU51KfLevo
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=UA3W7q4uDhI
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=SZ26_buhHfI
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=jKWVNlZL32k
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=4Lv9Cz08lNo
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=KjC87QMc1C8
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=olYxU2c46As
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=BcoPKWzLjrE
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=BEbTHir5itc
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=yT0gRc2c2wQ
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=vWD7k6TrJ-g
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=dYQryFBQA4Q
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=yyptwfWhlAg
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=S3zL3YLhKl4
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=A-ZjhEJ6okI
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=BEvpWkbmFFI
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=p48uWkI-NrI
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=eHFx11tUO1M
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=WmuU7XV45Qk
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=_R7nTD6YBZs
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=KhrteSZXFzM
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=htTxkyjTBmc
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=uCKeVj0JDjU
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=Rh3hSYgZyJE
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=lG5aSZBAuPs
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=_2093VBJyWs
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=ts922ocXdkk
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=nM_txL43iFM
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=ap65bQZZfDc
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=-woDJsRnpDI
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=ktvTqknDobU
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=hxApQOthgtY
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=O7kCIX2KiS4
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=JaM6z2QkLc8
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=vZTDrcuoLk0
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=qr7IPnV0Qzc
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=V7zUd9jFlJo
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=Xh7pR3qe2Zk
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=Xqw4wo8vdY8
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=NkZNK5D09U8
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=wnGdllCU7EY
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=I8eKe9l31wc
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=xnSew-tCuPo
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=mjOJW1CG_UQ
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=z6RylZqjwmk
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=epCPoQchswE
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=ETbGpGJNVLM
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=3oLxt586JvU
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=YeaGUfZM5hs
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=nvUeo5sagkA
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=l6eSksEp27U
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=YHVw3LQEFl0
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=H9IKD9ayQeg
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=_xlXdMKD3dY
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=h9jH55qYrYM
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=dsAFJIGvbU8
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=dcxsheROd3E
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=Wpoz8Y4fcAE
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=lJ71NUL9Cp4
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=KXn70dIVZKI
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=iOaqV0MmToA
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=-OGDiOnll80
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=qvkyXiOeq9o
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=z_DEC9bo8RU
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=02qa_WHfEjI
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=IEOFPvlNEFM
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=0x6PhH6v0Ls
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=0i_al-Jw6Aw
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=gyN_jD58qCI
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=cfOa1a8hYP8
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=tgIqecROs5M
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=pzXUfg04gdw
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=tdU46cSqslI
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=3SLZ2qFtVl8
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=VnmLUSdooKk
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=VxI7x5G4nJk
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=6zv3HmPxSZk
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=KzimgV0ShE4
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=vhDnWLfm07o
ffmpeg2wav:youtube-dl-x:https$(colon)//www.youtube.com/watch?v=x5GuBa4Bbnw

View File

@ -1,3 +1,4 @@
#EXTM3U
#EXTINF:72,I Put A Spell On You - Hocus Pocus (No Dialouge) #EXTINF:72,I Put A Spell On You - Hocus Pocus (No Dialouge)
ffmpeg2wav:youtube-dl:VLY0gZSZXB4 ffmpeg2wav:youtube-dl:VLY0gZSZXB4
#EXTINF:131,Hocus Pocus Intrada Soundtrack - 21 Sarah's Theme - Sarah Jessica Parker #EXTINF:131,Hocus Pocus Intrada Soundtrack - 21 Sarah's Theme - Sarah Jessica Parker

View File

@ -1,3 +1,4 @@
#EXTM3U
#EXTINF:420,Savant feat. Qwentalis - Starscream Forever (Original Mix) #EXTINF:420,Savant feat. Qwentalis - Starscream Forever (Original Mix)
ffmpeg2wav:youtube-dl-x:BkJtsNBL8Lc ffmpeg2wav:youtube-dl-x:BkJtsNBL8Lc
#EXTINF:248,Zelda Medley- Lindsey Stirling #EXTINF:248,Zelda Medley- Lindsey Stirling

View File

@ -1,3 +1,4 @@
#EXTM3U
#EXTINF:297,Alesso vs OneRepublic - If I Lose Myself (Alesso Remix) #EXTINF:297,Alesso vs OneRepublic - If I Lose Myself (Alesso Remix)
ffmpeg2wav:youtube-dl-x:OOevVQwQ-LM ffmpeg2wav:youtube-dl-x:OOevVQwQ-LM
#EXTINF:323,Final Flight - Approaching Nirvana #EXTINF:323,Final Flight - Approaching Nirvana

View File

@ -1,46 +1,47 @@
#EXTM3U
#EXTINF:342,[Trance] - Eminence - Halo [Monstercat Release] #EXTINF:342,[Trance] - Eminence - Halo [Monstercat Release]
ffmpeg2wav:youtube-dl-x:ddr3Xam5B-U ffmpeg2wav:youtube-dl:ddr3Xam5B-U
#EXTINF:356,[Electro] - PIXL - Buzz Kill [Monstercat FREE Release] #EXTINF:356,[Electro] - PIXL - Buzz Kill [Monstercat FREE Release]
ffmpeg2wav:youtube-dl-x:gMu9TMwqRKs ffmpeg2wav:youtube-dl:gMu9TMwqRKs
#EXTINF:467,[Progressive House] - TwoThirds - Waking Dreams (feat. Laura Brehm) [Monstercat Release] #EXTINF:467,[Progressive House] - TwoThirds - Waking Dreams (feat. Laura Brehm) [Monstercat Release]
ffmpeg2wav:youtube-dl-x:eNF0VF9oTf8 ffmpeg2wav:youtube-dl:eNF0VF9oTf8
#EXTINF:248,Zedd - Spectrum (Official Video) ft. Matthew Koma #EXTINF:248,Zedd - Spectrum (Official Video) ft. Matthew Koma
ffmpeg2wav:youtube-dl-x:IsuVMdnF8A0 ffmpeg2wav:youtube-dl:IsuVMdnF8A0
#EXTINF:297,Alesso vs OneRepublic - If I Lose Myself (Alesso Remix) #EXTINF:297,Alesso vs OneRepublic - If I Lose Myself (Alesso Remix)
ffmpeg2wav:youtube-dl-x:OOevVQwQ-LM ffmpeg2wav:youtube-dl:OOevVQwQ-LM
#EXTINF:420,Savant feat. Qwentalis - Starscream Forever (Original Mix) #EXTINF:420,Savant feat. Qwentalis - Starscream Forever (Original Mix)
ffmpeg2wav:youtube-dl-x:BkJtsNBL8Lc ffmpeg2wav:youtube-dl:BkJtsNBL8Lc
#EXTINF:230,Dead C.A.T Bounce ft. Emily Underhill - Closer to Me (Dabin Remix) [Tasty Release] #EXTINF:230,Dead C.A.T Bounce ft. Emily Underhill - Closer to Me (Dabin Remix) [Tasty Release]
ffmpeg2wav:youtube-dl-x:bL_orOhpnwg ffmpeg2wav:youtube-dl:bL_orOhpnwg
#EXTINF:272,Knife Party - 'Bonfire' #EXTINF:272,Knife Party - 'Bonfire'
ffmpeg2wav:youtube-dl-x:e-IWRmpefzE ffmpeg2wav:youtube-dl:e-IWRmpefzE
#EXTINF:297,Example - 'Kickstarts' (Bar9 Remix Official Video) #EXTINF:297,Example - 'Kickstarts' (Bar9 Remix Official Video)
ffmpeg2wav:youtube-dl-x:ks0P1u6-OUY ffmpeg2wav:youtube-dl:ks0P1u6-OUY
#EXTINF:260,Nicky Romero - Toulouse #EXTINF:260,Nicky Romero - Toulouse
ffmpeg2wav:youtube-dl-x:KrVC5dm5fFc ffmpeg2wav:youtube-dl:KrVC5dm5fFc
#EXTINF:271,Tristam - Till It's Over #EXTINF:271,Tristam - Till It's Over
ffmpeg2wav:youtube-dl-x:uG4DfRnlE4s ffmpeg2wav:youtube-dl:uG4DfRnlE4s
#EXTINF:270,[DnB] - Tristam & Braken - Frame of Mind [Monstercat Release] #EXTINF:270,[DnB] - Tristam & Braken - Frame of Mind [Monstercat Release]
ffmpeg2wav:youtube-dl-x:SCD2tB1qILc ffmpeg2wav:youtube-dl:SCD2tB1qILc
#EXTINF:212,[Electro] Nitro Fun - Cheat Codes [Monstercat Release] #EXTINF:212,[Electro] Nitro Fun - Cheat Codes [Monstercat Release]
ffmpeg2wav:youtube-dl-x:mdaCDsN1FJ0 ffmpeg2wav:youtube-dl:mdaCDsN1FJ0
#EXTINF:204,[Electronic] - Tut Tut Child - Power Fracture [Monstercat Release] #EXTINF:204,[Electronic] - Tut Tut Child - Power Fracture [Monstercat Release]
ffmpeg2wav:youtube-dl-x:59Njt3gox-E ffmpeg2wav:youtube-dl:59Njt3gox-E
#EXTINF:342,[Dubstep] - Rameses B - Transformations (feat. Laura Brehm) [Monstercat Release] #EXTINF:342,[Dubstep] - Rameses B - Transformations (feat. Laura Brehm) [Monstercat Release]
ffmpeg2wav:youtube-dl-x:Fkwtq2uhbmU ffmpeg2wav:youtube-dl:Fkwtq2uhbmU
#EXTINF:253,[Dubstep] - Direct & Labisch - Better World [Monstercat Release] #EXTINF:253,[Dubstep] - Direct & Labisch - Better World [Monstercat Release]
ffmpeg2wav:youtube-dl-x:WOFg3UVfl8k ffmpeg2wav:youtube-dl:WOFg3UVfl8k
#EXTINF:225,Kat Krazy ft. Elkka - Siren #EXTINF:225,Kat Krazy ft. Elkka - Siren
ffmpeg2wav:youtube-dl-x:DbSFQCXRda4 ffmpeg2wav:youtube-dl:DbSFQCXRda4
#EXTINF:302,Rameses B ft. Holly Drummond - Dreaming #EXTINF:302,Rameses B ft. Holly Drummond - Dreaming
ffmpeg2wav:youtube-dl-x:ZbQS_QeWHLc ffmpeg2wav:youtube-dl:ZbQS_QeWHLc
#EXTINF:220,[Drumstep] - Tristam & Braken - Flight [Monstercat Release] #EXTINF:220,[Drumstep] - Tristam & Braken - Flight [Monstercat Release]
ffmpeg2wav:youtube-dl-x:OVMuwa-HRCQ ffmpeg2wav:youtube-dl:OVMuwa-HRCQ
#EXTINF:208,[Drumstep] - Varien - Valkyrie (feat. Laura Brehm) [Monstercat Release] #EXTINF:208,[Drumstep] - Varien - Valkyrie (feat. Laura Brehm) [Monstercat Release]
ffmpeg2wav:youtube-dl-x:ddFAIkUb7A0 ffmpeg2wav:youtube-dl:ddFAIkUb7A0
#EXTINF:214,Cash Cash - I Like It Loud (Official Music Video) #EXTINF:214,Cash Cash - I Like It Loud (Official Music Video)
ffmpeg2wav:youtube-dl-x:Ef2400tsx2I ffmpeg2wav:youtube-dl:Ef2400tsx2I
#EXTINF:346,[Electro] - Case & Point - All On Me (feat. Gamble & Burke) [Monstercat Release] #EXTINF:346,[Electro] - Case & Point - All On Me (feat. Gamble & Burke) [Monstercat Release]
ffmpeg2wav:youtube-dl-x:RSQqVDmNaj0 ffmpeg2wav:youtube-dl:RSQqVDmNaj0
#EXTINF:202,[Drumstep] - Braken - To The Stars [Monstercat Release] #EXTINF:202,[Drumstep] - Braken - To The Stars [Monstercat Release]
ffmpeg2wav:youtube-dl-x:1dcXmkco5ko ffmpeg2wav:youtube-dl:1dcXmkco5ko

View File

@ -1,3 +1,4 @@
#EXTM3U
#EXTINF:277,Moderat - The Fool #EXTINF:277,Moderat - The Fool
ffmpeg2wav:youtube-dl-x:SqQ9tgTOvEU ffmpeg2wav:youtube-dl-x:SqQ9tgTOvEU
#EXTINF:309,Bonobo - Prelude + Kiara #EXTINF:309,Bonobo - Prelude + Kiara
@ -217,4 +218,4 @@ ffmpeg2wav:youtube-dl-x:Vy4TYbdVJmQ
#EXTINF:350,04 Tomita - Clair De Lune (Suite Bergamasque, No.3) #EXTINF:350,04 Tomita - Clair De Lune (Suite Bergamasque, No.3)
ffmpeg2wav:youtube-dl-x:sRRk7JChSts ffmpeg2wav:youtube-dl-x:sRRk7JChSts
#EXTINF:284,Hardkiss - Top Secret Song #EXTINF:284,Hardkiss - Top Secret Song
ffmpeg2wav:youtube-dl-x:iYNvv36Mqr8 ffmpeg2wav:youtube-dl-x:iYNvv36Mqr8

View File

@ -1,3 +1,4 @@
#EXTM3U
#EXTINF:274,Alone #EXTINF:274,Alone
ffmpeg2wav:youtube-dl:OBs1Fb8adGQ ffmpeg2wav:youtube-dl:OBs1Fb8adGQ
#EXTINF:234,Summer #EXTINF:234,Summer

View File

@ -1,3 +1,4 @@
#EXTM3U
#EXTINF:230,Fake It #EXTINF:230,Fake It
ffmpeg2wav:youtube-dl:Uj5yJPXf19U ffmpeg2wav:youtube-dl:Uj5yJPXf19U
#EXTINF:144,Immortalized #EXTINF:144,Immortalized

View File

@ -1,3 +1,4 @@
#EXTM3U
#EXTINF:233,nanobii - Go The Distance (feat. Lindsey Marie) #EXTINF:233,nanobii - Go The Distance (feat. Lindsey Marie)
ffmpeg2wav:youtube-dl:7-vBjfM6KAA ffmpeg2wav:youtube-dl:7-vBjfM6KAA
#EXTINF:136,**POOR UNFORTUNATE SOULS REMIX DJ SLYNX** (Promo Sample not full song) #EXTINF:136,**POOR UNFORTUNATE SOULS REMIX DJ SLYNX** (Promo Sample not full song)

View File

@ -1,3 +1,4 @@
#EXTM3U
#EXTINF:173,Candy Store - Heathers: The Musical +LYRICS #EXTINF:173,Candy Store - Heathers: The Musical +LYRICS
ffmpeg2wav:youtube-dl:BQOoTX1Nxx8 ffmpeg2wav:youtube-dl:BQOoTX1Nxx8
#EXTINF:171,Freeze Your Brain - Heathers: The Musical +LYRICS #EXTINF:171,Freeze Your Brain - Heathers: The Musical +LYRICS

View File

@ -1,2 +1,3 @@
#EXTM3U
#EXTINF:175,Concerning Hobbits #EXTINF:175,Concerning Hobbits
ffmpeg2wav:youtube-dl:CL_3mlOPnGI ffmpeg2wav:youtube-dl:CL_3mlOPnGI

View File

@ -1,3 +1,4 @@
#EXTM3U
#EXTINF:206,no tears left to cry #EXTINF:206,no tears left to cry
ffmpeg2wav:youtube-dl:vZi3AHnb8b4 ffmpeg2wav:youtube-dl:vZi3AHnb8b4
#EXTINF:215,Break Free #EXTINF:215,Break Free

View File

@ -1,3 +1,4 @@
#EXTM3U
#EXTINF:208,Paper Thin #EXTINF:208,Paper Thin
ffmpeg2wav:youtube-dl:gSo7GV1pDWg ffmpeg2wav:youtube-dl:gSo7GV1pDWg
#EXTINF:185,Think Before I Talk #EXTINF:185,Think Before I Talk

View File

@ -1,3 +1,4 @@
#EXTM3U
#EXTINF:279,Paradise #EXTINF:279,Paradise
ffmpeg2wav:youtube-dl:Q0TEUMPIhk8 ffmpeg2wav:youtube-dl:Q0TEUMPIhk8
#EXTINF:264,Adventure Of A Lifetime #EXTINF:264,Adventure Of A Lifetime

View File

@ -1,3 +1,4 @@
#EXTM3U
#EXTINF:223,Solo (feat. Demi Lovato) #EXTINF:223,Solo (feat. Demi Lovato)
ffmpeg2wav:youtube-dl:GvdKeZO8IzM ffmpeg2wav:youtube-dl:GvdKeZO8IzM
#EXTINF:226,Let It Go #EXTINF:226,Let It Go

View File

@ -1,3 +1,4 @@
#EXTM3U
#EXTINF:242,Katy Perry - Last Friday Night - Audio #EXTINF:242,Katy Perry - Last Friday Night - Audio
ffmpeg2wav:youtube-dl:od6c8G3-r8Y ffmpeg2wav:youtube-dl:od6c8G3-r8Y
#EXTINF:227,Katy Perry - Wide Awake (Lyric Video) #EXTINF:227,Katy Perry - Wide Awake (Lyric Video)

View File

@ -1,3 +1,4 @@
#EXTM3U
#EXTINF:210,Back To You #EXTINF:210,Back To You
ffmpeg2wav:youtube-dl:miUhh2fKVYE ffmpeg2wav:youtube-dl:miUhh2fKVYE
#EXTINF:229,Same Old Love #EXTINF:229,Same Old Love

View File

@ -1,3 +1,4 @@
#EXTM3U
#EXTINF:207,Stitches #EXTINF:207,Stitches
ffmpeg2wav:youtube-dl:GntxbUgCgdk ffmpeg2wav:youtube-dl:GntxbUgCgdk
#EXTINF:199,There's Nothing Holdin' Me Back #EXTINF:199,There's Nothing Holdin' Me Back

View File

@ -1,3 +1,4 @@
#EXTM3U
#EXTINF:232,Blank Space #EXTINF:232,Blank Space
ffmpeg2wav:youtube-dl:UkpFHwqaJYE ffmpeg2wav:youtube-dl:UkpFHwqaJYE
#EXTINF:212,Bad Blood #EXTINF:212,Bad Blood

View File

@ -1,3 +1,4 @@
#EXTM3U
#EXTINF:213,Never Forget You #EXTINF:213,Never Forget You
ffmpeg2wav:youtube-dl:ogKU5EQ0Wn0 ffmpeg2wav:youtube-dl:ogKU5EQ0Wn0
#EXTINF:212,Symphony (feat. Zara Larsson) #EXTINF:212,Symphony (feat. Zara Larsson)

75
web/common.php Normal file
View File

@ -0,0 +1,75 @@
<?php
class scanDir {
static private $directories, $files, $ext_filter, $recursive;
// ----------------------------------------------------------------------------------------------
// scan(dirpath::string|array, extensions::string|array, recursive::true|false)
static public function scan(){
// Initialize defaults
self::$recursive = false;
self::$directories = array();
self::$files = array();
self::$ext_filter = false;
// Check we have minimum parameters
if(!$args = func_get_args()){
die("Must provide a path string or array of path strings");
}
if(gettype($args[0]) != "string" && gettype($args[0]) != "array"){
die("Must provide a path string or array of path strings");
}
// Check if recursive scan | default action: no sub-directories
if(isset($args[2]) && $args[2] == true){self::$recursive = true;}
// Was a filter on file extensions included? | default action: return all file types
if(isset($args[1])){
if(gettype($args[1]) == "array"){self::$ext_filter = array_map('strtolower', $args[1]);}
else
if(gettype($args[1]) == "string"){self::$ext_filter[] = strtolower($args[1]);}
}
// Grab path(s)
self::verifyPaths($args[0]);
return self::$files;
}
static private function verifyPaths($paths){
$path_errors = array();
if(gettype($paths) == "string"){$paths = array($paths);}
foreach($paths as $path){
if(is_dir($path)){
self::$directories[] = $path;
$dirContents = self::find_contents($path);
} else {
$path_errors[] = $path;
}
}
if($path_errors){echo "The following directories do not exists<br />";die(var_dump($path_errors));}
}
// This is how we scan directories
static private function find_contents($dir){
$result = array();
$root = scandir($dir);
foreach($root as $value){
if($value === '.' || $value === '..') {continue;}
if(is_file($dir.DIRECTORY_SEPARATOR.$value)){
if(!self::$ext_filter || in_array(strtolower(pathinfo($dir.DIRECTORY_SEPARATOR.$value, PATHINFO_EXTENSION)), self::$ext_filter)){
self::$files[] = $result[] = $dir.DIRECTORY_SEPARATOR.$value;
}
continue;
}
if(self::$recursive){
foreach(self::find_contents($dir.DIRECTORY_SEPARATOR.$value) as $value) {
self::$files[] = $result[] = $value;
}
}
}
// Return required for recursive search
return $result;
}
}
?>

27
web/playlist.php Normal file
View File

@ -0,0 +1,27 @@
<?
include 'common.php';
header('Content-type: audio/x-mpegurl');
$files = scanDir::scan('/playlists/normal', "m3u", false);
$files = array_merge($files, scanDir::scan('/playlists/normal/Daniel', "m3u", false));
$files = array_merge($files, scanDir::scan('/playlists/normal/Joakim', "m3u", false));
$files = array_merge($files, scanDir::scan('/playlists/normal/artists', "m3u", false));
echo "#EXTM3U\n";
foreach($files as $file) {
$filename = $file;
$file = file($file);
$file = array_slice($file, 1);
echo "\n#$filename\n";
foreach($file as $line) {
echo "$line";
if (substr($line, -1) !== "\n")
echo "\n";
}
}
?>