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

Reply via email to