-pypo now working

This commit is contained in:
martin 2011-01-17 13:14:59 -05:00
parent 70f7cb6edc
commit 3d4d3afc5d
5 changed files with 70 additions and 14 deletions

View File

@ -75,6 +75,7 @@ try:
print "Copying pypo files"
shutil.copy("../scripts/silence.mp3", BASE_PATH+"files/basic")
shutil.copy("../scripts/silence-playlist.lsp", BASE_PATH+"files/basic")
if platform.architecture()[0] == '64bit':
print "Installing 64-bit liquidsoap binary"
@ -91,7 +92,7 @@ try:
print "Setting permissions"
os.system("chmod -R 755 "+BASE_PATH)
os.system("chown -R pypo:pypo "+BASE_PATH)
print "Installing daemontool script pypo-fetch"
create_path("/etc/service/pypo-fetch")
create_path("/etc/service/pypo-fetch/log")

View File

@ -10,7 +10,7 @@
# general settings #
###########################################
log_file = "/home/martin/workspace/pypo/<script>.log"
log_file = "/var/log/pypo/<script>.log"
log_level = 3
# archive directory
@ -28,9 +28,7 @@ icecast_port = 8000
icecast_pass = "hackme"
# mountpoints
mount_scheduler = "pypo_scheduler.mp3"
mount_fallback = "pypo_fallback.mp3"
mount_final = "pypo_final.mp3"
mount_scheduler = "airtime.mp3"
# mount intra is used for scheduler >>> fallback stream
mount_intra = "pypo_intra"

View File

@ -1,7 +1,8 @@
%include "library/pervasives.liq"
%include "ls_config.liq"
set("log.file.path",log_file)
set("log.file.path", log_file)
set("log.stdout", true)
set("server.telnet", true)
active_queue = ref 0
@ -16,8 +17,7 @@ pypo_data = ref '0'
# push function, enqueues file in inactive queue (does not start automatically)
def scheduler_push(s)
print('s: #{s}')
server.execute("scheduler_q#{!active_queue}.push #{s}")
ignore(server.execute("scheduler_q#{!active_queue}.push #{s}"))
print('push to #{!active_queue} - #{s}')
"Done"
end
@ -34,22 +34,29 @@ def scheduler_flip()
# flip variables
active_queue := 1-!active_queue
print('switch to active queue: #{!active_queue}')
"Done"
end
def notify(m)
system("./notify.sh --data='#{!pypo_data}' --media-id=#{m['media_id']}")
#print("./notify.sh --data='#{!pypo_data}' --media-id=#{m['media_id']}")
print("./notify.sh --data='#{!pypo_data}' --media-id=#{m['media_id']}")
end
# register for telnet access
server.register(namespace="scheduler","push", scheduler_push)
server.register(namespace="scheduler","flip", fun (s) -> begin scheduler_flip() end)
server.register(namespace="vars", "pypo_data", fun (s) -> begin pypo_data := s "Done" end)
default = single("/opt/pypo/files/basic/silence.mp3")
radio = fallback([ switch(track_sensitive=false, [(fun () -> !active_queue==1, scheduler_q0), (fun () -> !active_queue==0, scheduler_q1)]), default])
radio = fallback(track_sensitive=false, [switch(track_sensitive=false, [(fun () -> !active_queue==1, scheduler_q0), (fun () -> !active_queue==0, scheduler_q1)]), default])
radio = on_metadata(notify, radio)
#radio = on_metadata(notify, radio)
out(radio)
#out(radio)
clock(id="clock_icecast",
output.icecast(%mp3,
host = icecast_host, port = icecast_port,
password = icecast_pass, mount = mount_scheduler,
fallible = true,
restart = true,
restart_delay = 5,
buffer(radio)))

View File

@ -0,0 +1,48 @@
/opt/pypo/files/basic/silence.mp3
/opt/pypo/files/basic/silence.mp3
/opt/pypo/files/basic/silence.mp3
/opt/pypo/files/basic/silence.mp3
/opt/pypo/files/basic/silence.mp3
/opt/pypo/files/basic/silence.mp3
/opt/pypo/files/basic/silence.mp3
/opt/pypo/files/basic/silence.mp3
/opt/pypo/files/basic/silence.mp3
/opt/pypo/files/basic/silence.mp3
/opt/pypo/files/basic/silence.mp3
/opt/pypo/files/basic/silence.mp3
/opt/pypo/files/basic/silence.mp3
/opt/pypo/files/basic/silence.mp3
/opt/pypo/files/basic/silence.mp3
/opt/pypo/files/basic/silence.mp3
/opt/pypo/files/basic/silence.mp3
/opt/pypo/files/basic/silence.mp3
/opt/pypo/files/basic/silence.mp3
/opt/pypo/files/basic/silence.mp3
/opt/pypo/files/basic/silence.mp3
/opt/pypo/files/basic/silence.mp3
/opt/pypo/files/basic/silence.mp3
/opt/pypo/files/basic/silence.mp3
/opt/pypo/files/basic/silence.mp3
/opt/pypo/files/basic/silence.mp3
/opt/pypo/files/basic/silence.mp3
/opt/pypo/files/basic/silence.mp3
/opt/pypo/files/basic/silence.mp3
/opt/pypo/files/basic/silence.mp3
/opt/pypo/files/basic/silence.mp3
/opt/pypo/files/basic/silence.mp3
/opt/pypo/files/basic/silence.mp3
/opt/pypo/files/basic/silence.mp3
/opt/pypo/files/basic/silence.mp3
/opt/pypo/files/basic/silence.mp3
/opt/pypo/files/basic/silence.mp3
/opt/pypo/files/basic/silence.mp3
/opt/pypo/files/basic/silence.mp3
/opt/pypo/files/basic/silence.mp3
/opt/pypo/files/basic/silence.mp3
/opt/pypo/files/basic/silence.mp3
/opt/pypo/files/basic/silence.mp3
/opt/pypo/files/basic/silence.mp3
/opt/pypo/files/basic/silence.mp3
/opt/pypo/files/basic/silence.mp3
/opt/pypo/files/basic/silence.mp3
/opt/pypo/files/basic/silence.mp3

View File

@ -41,6 +41,7 @@ echo "Creating new playlist '$playlistName'...";
$pl = new Playlist();
$pl->create($playlistName);
/*
// Add a media clip
$mediaFile = StoredFile::findByOriginalName("ACDC_-_Back_In_Black-sample.ogg");
if (is_null($mediaFile)) {
@ -53,6 +54,7 @@ if (is_null($mediaFile)) {
}
}
$pl->addAudioClip($mediaFile->getId());
*/
$mediaFile = StoredFile::findByOriginalName("Peter_Rudenko_-_Opening.mp3");
if (is_null($mediaFile)) {