Hi Tony
As far as i understand this, you're reloading the playlist every 600
secs. ("reload=600"). This *may" be the error.
if you try:
playlist(reload=1,
reload_mode="rounds","/var/www/datafruits-transmitter/shared/datafruits_playlist.m3u",conservative=true,mode="normal")
Your playlist gets reloaded if is exhausted of tracks.
The doc says:|
- reload| (|int| – defaults to |0|): Amount of time (in seconds or
rounds), when applicable, before which the playlist is reloaded; 0 means
never.|
- reload_mode| (|string| – defaults to |"seconds"|): Unit of the reload
parameter, either 'rounds', 'seconds' or 'watch' (reload the file
whenever it is changed).
This works for me.
--Tom
Am 14.05.2013 16:29, schrieb Tony Miller:
> I can't figure out why my playlist is only playing the first three
> songs. I have tried switching the order of the songs around to see if
> there was a problem with certain tracks, but I think all the files are
> fine. Started liquidsoap in verbose mode (-v) didn't see anything
> helpful.
>
> Here is my basic playlist setup:
>
> # The file source
> backup_playlist =
> playlist(reload=600,"/var/www/datafruits-transmitter/shared/datafruits_playlist.m3u",conservative=true,mode="normal")
> output.dummy(fallible=true,backup_playlist)
>
>
> then later on I have a fallback:
> source = fallback(track_sensitive=false,
> [live_dj,backup_playlist,on_fail])
>
>
> Of course my entire script is much longer, I'll paste the entire thing here.
>
>
> #!/usr/local/bin/liquidsoap
>
> set("log.file",true)
> set("log.file.path","/usr/local/var/log/liquidsoap/liquidsoap.log")
> set("log.stdout",false)
> set("log.level",3)
>
> set("server.telnet",true)
> set("server.socket",true)
> set("server.socket.path","/tmp/liquidsoap.sock")
>
> set("harbor.bind_addr","0.0.0.0")
>
> # refs
> title_prefix = ref ""
>
> #functions
>
> #auth function
> def dj_auth(user,password) =
> #get the output of the php script
> ret = get_process_lines("bundle exec
> /var/www/datafruits-transmitter/current/dj_auth.rb #{user}
> #{password}")
> #ret has now the value of the live client (dj1,dj2, or djx), or
> "ERROR"/"unknown"
> ret = list.hd(ret)
> #return true to let the client transmit data, or false to tell
> harbor to decline
> if ret == "true" then
> title_prefix := "LIVE NOW ♫✩ -- #{user} ✩♪"
> true
> else
> false
> end
> end
>
> def on_disconnect() =
> title_prefix := ""
> end
>
> def pub_metadata(m) =
> log("metadata changed: #{m}")
> title = m["title"]
> log("title: #{title}")
> result = get_process_lines("bundle exec
> /var/www/datafruits-transmitter/current/pub_metadata.rb
> \"#{quote(title)}\"")
> log("pub_metadata: #{result}")
> end
>
> # The file source
> backup_playlist =
> playlist(reload=600,"/var/www/datafruits-transmitter/shared/datafruits_playlist.m3u",conservative=true,mode="normal")
> output.dummy(fallible=true,backup_playlist)
> live_dj =
> input.harbor("datafruits",port=9000,auth=dj_auth,on_disconnect=on_disconnect)
>
> def new_meta(m) =
> title = m["title"]
> [("title","#{!title_prefix} -- #{title}")]
> end
> live_dj = map_metadata(new_meta, live_dj)
> on_fail = single("/home/freedrull/datafruitsdotfm_processed.wav")
>
> source = fallback(track_sensitive=false,
> [live_dj,backup_playlist,_fail])
> source = on_metadata(pub_metadata, source)
>
> # flows
> source = register_flow(
> radio="datafruits.fm",
> website="http://radio.datafruits.fm/",
> description="forward-thinking electronic sounds",
> genre="electronic",
> user="foo",
> password="bar",
> streams=[("mp3/128k","http://radio.datafruits.fm:8000/datafruits.mp3"),
> ("ogg", "http://radio.datafruits.fm:8000/datafruits.ogg")],
> source)
>
> output.file(%mp3, "/mnt/wat/dump-datafruits-%d-%m-%Y-%H:%M:%S.mp3",
> live_dj,fallible=true)
> # We output the stream to an icecast
> # server, in ogg/vorbis format.
> output.icecast(%vorbis,id="icecast",
> mount="datafruits.ogg",
> host="localhost", password="2datafr00ts",
> icy_metadata="true",description="datafruits.fm",
> url="http://datafruits.fm",
> source)
> output.icecast(%mp3,id="icecast",
> mount="datafruits.mp3",
> host="localhost", password="2datafr00ts",
> icy_metadata="true",description="datafruits.fm",
> url="http://datafruits.fm",
> source)
>
>
------------------------------------------------------------------------------
AlienVault Unified Security Management (USM) platform delivers complete
security visibility with the essential security capabilities. Easily and
efficiently configure, manage, and operate all of your security controls
from a single console and one unified framework. Download a free trial.
http://p.sf.net/sfu/alienvault_d2d
_______________________________________________
Savonet-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/savonet-users