Started to create pypo install script (install/pypo-install.py).
Cleaned up liquidsoap scripts a bit. Renamed nondbinstall.php to propel-install.php Removed unused files.
This commit is contained in:
parent
51a1fde9ee
commit
3c12256cb8
14 changed files with 120 additions and 470 deletions
|
@ -2,36 +2,10 @@
|
|||
# Dynamic variables
|
||||
#######################################################################
|
||||
|
||||
playlist_id = ref '0'
|
||||
user_id = ref '0'
|
||||
transmission_id = ref '0'
|
||||
playlist_type = ref '0'
|
||||
pypo_data = ref '0'
|
||||
|
||||
def set_pypo_data(s)
|
||||
pypo_data := s
|
||||
end
|
||||
|
||||
def set_user_id(s)
|
||||
user_id := s
|
||||
end
|
||||
|
||||
|
||||
def set_playlist_id(s)
|
||||
playlist_id := s
|
||||
end
|
||||
|
||||
|
||||
def set_transmission_id(s)
|
||||
transmission_id := s
|
||||
end
|
||||
|
||||
def set_playlist_type(s)
|
||||
playlist_type := s
|
||||
end
|
||||
|
||||
server.register(namespace="vars", "user_id", fun (s) -> begin set_user_id(s) "Done!" end)
|
||||
server.register(namespace="vars", "playlist_id", fun (s) -> begin set_playlist_id(s) "Done!" end)
|
||||
server.register(namespace="vars", "transmission_id", fun (s) -> begin set_transmission_id(s) "Done!" end)
|
||||
server.register(namespace="vars", "playlist_type", fun (s) -> begin set_playlist_type(s) "Done!" end)
|
||||
server.register(namespace="vars", "pypo_data", fun (s) -> begin set_pypo_data(s) "Done!" end)
|
|
@ -1,14 +1,10 @@
|
|||
#######################################################################
|
||||
# Live input - From external icecast server
|
||||
#######################################################################
|
||||
|
||||
|
||||
live_in = input.http(id="live_in",autostart=false,buffer=.1, max=12.,couchcaster_list)
|
||||
live_in = buffer(id="buffer_live_in",buffer=.1,fallible=true,live_in)
|
||||
live_in = mksafe(live_in)
|
||||
|
||||
|
||||
|
||||
live_active = ref false
|
||||
def live_switch(i)
|
||||
print(i)
|
||||
|
|
|
@ -4,25 +4,19 @@
|
|||
|
||||
def notify(m)
|
||||
|
||||
# print('user_id: #{!user_id}')
|
||||
# print('playlist_id: #{!playlist_id}')
|
||||
# print('transmission_id: #{!transmission_id}')
|
||||
# print('playlist_type: #{!playlist_type}')
|
||||
|
||||
if !playlist_type=='5' then
|
||||
print('livesession')
|
||||
system("./notify.sh --playing --playlist-type=#{!playlist_type} --transmission-id=#{!transmission_id} --export-source=scheduler")
|
||||
#print('livesession')
|
||||
system("./notify.sh --data='#{!pypo_data}' --media-id=#{m['media_id']} --export-source=scheduler")
|
||||
end
|
||||
|
||||
if !playlist_type=='6' then
|
||||
print('couchcaster')
|
||||
system("./notify.sh --playing --playlist-type=#{!playlist_type} --transmission-id=#{!transmission_id} --export-source=scheduler")
|
||||
#print('couchcaster')
|
||||
system("./notify.sh --data='#{!pypo_data}' --media-id=#{m['media_id']} --export-source=scheduler")
|
||||
end
|
||||
|
||||
if !playlist_type=='0' or !playlist_type=='1' or !playlist_type=='2' or !playlist_type=='3' or !playlist_type=='4' then
|
||||
print('include_notify.liq: notify on playlist')
|
||||
#system("./notify.sh --playing --playlist-type=#{!playlist_type} --media-id=#{m['media_id']} --export-source=#{m['export_source']}")
|
||||
system("./notify.sh --data='#{!pypo_data}' --media-id=#{m['media_id']}")
|
||||
#print('include_notify.liq: notify on playlist')
|
||||
system("./notify.sh --data='#{!pypo_data}' --media-id=#{m['media_id']}")
|
||||
end
|
||||
|
||||
end
|
|
@ -51,11 +51,12 @@ end
|
|||
def scheduler_status()
|
||||
print('scheduler_active: #{!scheduler_active}')
|
||||
print('scheduler_queue : #{!scheduler_queue}')
|
||||
|
||||
print('user_id: #{!user_id}')
|
||||
print('playlist_id: #{!playlist_id}')
|
||||
print('transmission_id: #{!transmission_id}')
|
||||
print('playlist_type: #{!playlist_type}')
|
||||
print('pypo_data: #{!pypo_data}')
|
||||
|
||||
#print('user_id: #{!user_id}')
|
||||
#print('playlist_id: #{!playlist_id}')
|
||||
#print('transmission_id: #{!transmission_id}')
|
||||
#print('playlist_type: #{!playlist_type}')
|
||||
|
||||
"Done"
|
||||
end
|
||||
|
|
|
@ -1,12 +1,7 @@
|
|||
###########################################
|
||||
# liquidsoap config file #
|
||||
###########################################
|
||||
|
||||
# author Jonas Ohrstrom <jonas@digris.ch>
|
||||
|
||||
|
||||
# this file is specific to the obp
|
||||
# installation. eg it assumes that there are
|
||||
# This config assumes that there are
|
||||
# two instances of LS running
|
||||
# the "scheduler" & the "fallback" instance
|
||||
|
||||
|
@ -15,22 +10,20 @@
|
|||
# general settings #
|
||||
###########################################
|
||||
|
||||
log_file = "/var/log/obp/ls/<script>.log"
|
||||
log_file = "/var/log/pypo/<script>.log"
|
||||
log_level = 3
|
||||
|
||||
# archive directory
|
||||
archive_dir = "/storage/pypo/archive/"
|
||||
|
||||
archive_dir = "/opt/pypo/archive/"
|
||||
|
||||
# list pointing to the current couchcaster mountpoint
|
||||
couchcaster_list = "http://vdeb.openbroadcast.ch/mod/ml/api/pypo/current_couchcaster"
|
||||
|
||||
|
||||
|
||||
###########################################
|
||||
# stream settings #
|
||||
###########################################
|
||||
icecast_host = "172.16.16.128"
|
||||
icecast_host = "127.0.0.1"
|
||||
icecast_port = 8000
|
||||
icecast_pass = "hackme"
|
||||
|
||||
|
@ -43,7 +36,7 @@ mount_final = "pypo_final.mp3"
|
|||
mount_intra = "pypo_intra"
|
||||
|
||||
# intra-LS streaming (no icecast here)
|
||||
intra_host = "172.16.16.128"
|
||||
intra_host = "127.0.0.1"
|
||||
intra_port = 9000
|
||||
intra_pass = "hackme"
|
||||
|
||||
|
|
|
@ -1,7 +1,6 @@
|
|||
######################################
|
||||
# main liquidsoap development script #
|
||||
######################################
|
||||
|
||||
# author Jonas Ohrstrom <jonas@digris.ch>
|
||||
|
||||
########################################
|
||||
|
@ -10,15 +9,12 @@
|
|||
|
||||
%include "ls_config.liq"
|
||||
%include "library.liq"
|
||||
|
||||
%include "include_dynamic_vars.liq"
|
||||
%include "include_notify.liq"
|
||||
|
||||
|
||||
silence_threshold = -50.
|
||||
silence_time = 3.
|
||||
|
||||
|
||||
# log
|
||||
set("log.file.path",log_file)
|
||||
set("log.stdout", true)
|
||||
|
@ -27,17 +23,13 @@ set("log.level",log_level)
|
|||
# telnet server
|
||||
set("server.telnet", true)
|
||||
|
||||
|
||||
|
||||
######################################
|
||||
# some functions needed #
|
||||
######################################
|
||||
|
||||
def fcross(a,b) =
|
||||
add(normalize=false,[b,a])
|
||||
end
|
||||
|
||||
|
||||
######################################
|
||||
# live recording functions
|
||||
######################################
|
||||
|
@ -52,16 +44,12 @@ def live_stop() =
|
|||
end
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
#######################################################################
|
||||
# File locations / sources
|
||||
#######################################################################
|
||||
|
||||
silence = single("/storage/pypo/files/basic/silence.mp3")
|
||||
jingles_cc = playlist("/storage/pypo/files/jingles/jcc")
|
||||
fallback_couchcaster = playlist("/storage/pypo/files/fallback_couchcaster")
|
||||
silence = single("/opt/pypo/files/basic/silence.mp3")
|
||||
jingles_cc = playlist("/opt/pypo/files/jingles/jcc")
|
||||
fallback_couchcaster = playlist("/opt/pypo/files/fallback_couchcaster")
|
||||
fallback_couchcaster = audio_to_stereo(fallback_couchcaster)
|
||||
|
||||
# default
|
||||
|
@ -70,70 +58,36 @@ default = silence
|
|||
special = request.queue(id="special")
|
||||
|
||||
|
||||
|
||||
#######################################################################
|
||||
# Includeing two A/B Queues, daypart & scheduler
|
||||
# this will give us the sources 'daypart' & 'scheduler'
|
||||
#######################################################################
|
||||
|
||||
%include "include_daypart.liq"
|
||||
|
||||
%include "include_scheduler.liq"
|
||||
|
||||
|
||||
source = fallback(track_sensitive=false,transitions=[dp_to_scheduler],[strip_blank(threshold=silence_threshold,length=silence_time,scheduler),daypart])
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
%include "include_live_in.liq"
|
||||
|
||||
|
||||
|
||||
live = fallback(track_sensitive=false,[strip_blank(threshold=silence_threshold,length=silence_time,live),fallback_couchcaster])
|
||||
live = switch(track_sensitive=false, [({!live_active},live)])
|
||||
|
||||
source = fallback(track_sensitive=false,transitions=[to_live_s, to_scheduler_s],[live, source])
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
# handle the annotate fades
|
||||
faded = fade.in(type="log", fade.out(type="log", source))
|
||||
|
||||
# add up with a crossfade function (defined above)
|
||||
source = cross(fcross,faded)
|
||||
|
||||
|
||||
# track start detection (for notifications)
|
||||
source = on_metadata(notify, source)
|
||||
#source = on_track(notify, source)
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
# special to mix with final source
|
||||
source = smooth_add(normal=source,special=special)
|
||||
|
||||
|
||||
|
||||
|
||||
#####################################
|
||||
# Stream Output
|
||||
#####################################
|
||||
|
@ -147,8 +101,4 @@ clock(id="clock_icecast",
|
|||
restart_delay = 5,
|
||||
buffer(source)))
|
||||
|
||||
|
||||
|
||||
#output.dummy(live_in)
|
||||
|
||||
|
||||
|
|
|
@ -9,7 +9,7 @@ sleep 1
|
|||
clear
|
||||
|
||||
# split
|
||||
multitail -s 2 /var/log/obp/pypo/debug.log \
|
||||
multitail -s 2 /var/log/pypo/debug.log \
|
||||
/var/svc.d/pypo_push/log/main/current \
|
||||
/var/svc.d/pypo_fetch/log/main/current \
|
||||
/var/svc.d/pypo_ls/log/main/current
|
||||
|
|
48
pypo/scripts/silence-playlist.lsp
Normal file
48
pypo/scripts/silence-playlist.lsp
Normal 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
|
Loading…
Add table
Add a link
Reference in a new issue