Initial commit
This commit is contained in:
6
state/liquidsoap/config/.directory
Normal file
6
state/liquidsoap/config/.directory
Normal file
@@ -0,0 +1,6 @@
|
||||
[Dolphin]
|
||||
Timestamp=2018,9,5,23,22,33
|
||||
Version=4
|
||||
|
||||
[Settings]
|
||||
HiddenFilesShown=true
|
||||
32
state/liquidsoap/config/broadcast.liq
Normal file
32
state/liquidsoap/config/broadcast.liq
Normal file
@@ -0,0 +1,32 @@
|
||||
# CONFIGS
|
||||
set("log.file", true)
|
||||
set("log.stdout", true)
|
||||
set("log.level", 4)
|
||||
set("server.telnet", true)
|
||||
set("server.telnet.port", 5000)
|
||||
set("log.file.path", "/tmp/broadcast.log")
|
||||
set("audio.converter.samplerate.libsamplerate.quality","best")
|
||||
set("buffering.path","/tmp")
|
||||
set("decoding.buffer_length",10.)
|
||||
|
||||
|
||||
# FUNCTIONS
|
||||
dodsorfas_out = output.icecast(description="Dodsorfas Radio", genre="Misc", url="https://radio.dodsorf.as/")
|
||||
output_docker_env.icecast = dodsorfas_out(
|
||||
host=getenv("ICECAST_PORT_8000_TCP_ADDR"),
|
||||
port=int_of_string(getenv("ICECAST_PORT_8000_TCP_PORT")),
|
||||
password=getenv("ICECAST_SOURCE_PASSWORD")
|
||||
)
|
||||
def outputs(encoder, ~mount, input)
|
||||
output_docker_env.icecast(encoder, mount=mount, input)
|
||||
end
|
||||
|
||||
input = mksafe(input.harbor("dodsorfas.main", port=5001, password=getenv("HARBOR_PASSWORD")))
|
||||
|
||||
# OUTPUTS
|
||||
outputs(%mp3(bitrate=64), mount="/dodsorfas-radio-64.mp3", input)
|
||||
outputs(%mp3(bitrate=128), mount="/dodsorfas-radio-128.mp3", input)
|
||||
outputs(%mp3(bitrate=160), mount="/dodsorfas-radio-160.mp3", input)
|
||||
outputs(%mp3(bitrate=192), mount="/dodsorfas-radio-192.mp3", input)
|
||||
outputs(%vorbis, mount="/dodsorfas-radio.vorbis.ogg", input)
|
||||
outputs(%opus, mount="/dodsorfas-radio.opus.ogg", input)
|
||||
57
state/liquidsoap/config/main.liq
Normal file
57
state/liquidsoap/config/main.liq
Normal file
@@ -0,0 +1,57 @@
|
||||
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
|
||||
|
||||
rad_io = input.http("http://relay0.r-a-d.io:80/main.mp3")
|
||||
output.dummy(fallible=true, rad_io)
|
||||
|
||||
|
||||
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"
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
|
||||
requests = audio_to_stereo(drop_video(request.queue(id="request")))
|
||||
|
||||
mix = blank()
|
||||
mix = fallback(track_sensitive=false, transitions=[crossfade], [rad_io,mix])
|
||||
mix = fallback(track_sensitive=false, transitions=[crossfade], [requests,mix])
|
||||
mix = fallback(track_sensitive=false, transitions=[crossfade], [live, 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
|
||||
)
|
||||
Reference in New Issue
Block a user