Thanks, David. :-)
I tried simply replacing mksafe with fallback, but I got a "this source
is fallible" error. So I did this:
#!/usr/local/bin/liquidsoap
set("log.file.path","/home/audiodef/liquidradio.log")
set("log.level",4)
output.icecast.vorbis(host = "localhost", port = 8000,
password = "lazysusan", mount = "ambient.ogg",
mksafe(fallback([playlist(timeout=600.,
"http://audiodef/playlists/ambient.m3u"),
single("http://audiodef/audio/dc3.ogg")])))
What this does is after 600 seconds of silence, the stream plays the
fallback file and then plays silence ad infinitum. With this, my
previous recipe:
#!/usr/local/bin/liquidsoap
set("log.file.path","/home/audiodef/liquidradio.log")
set("log.level",4)
output.icecast.vorbis(host = "localhost", port = 8000,
password = "lazysusan", mount = "ambient.ogg",
mksafe(playlist(timeout=600.,
"http://audiodef/playlists/ambient.m3u")))
the stream played the files in the playlist but ended up playing silence
ad infinitum after the first track.
What could be causing my stream to end with endless silence?
Here's the playlist, in case it matters:
http://stillstream.com/assets/2011-06-12-Har_Live_On_Nightscaping.mp3
http://stillstream.com/assets/2011-04-01-ShaneMorris_Live_In_Concert_on_Sadayatana.mp3
http://stillstream.com/assets/2011-08-05-Tange_-_Live_Ambient_Skiddle_on_Mysterious_Semblance.mp3
http://stillstream.com/assets/2011-01-16-Har_Live_On_Nightscaping.mp3
http://stillstream.com/assets/2010-08-04-AzAxeman_Live_On_Ambitar_Radio.mp3
http://stillstream.com/assets/2010-01-01-Mystahr_Glinsteryear_Stillstream_raid.mp3
http://stillstream.com/assets/2009-08-28-Epic_5_Person_Ninjam_Live_On_Ambitar_Radio.mp3
http://stillstream.com/assets/2009-05-22-Allen_Goodman_and_Har_Live_on_Ambitar.mp3
http://stillstream.com/assets/2009-04-03-Mark_Mahoney_Live_In_Concert_on_Ambitar.mp3
http://stillstream.com/assets/2008-12-19-Axion%20Theory%20Live%20on%20Ambitar.mp3
http://stillstream.com/assets/2008-11-07-Allen_Goodman_Live_Ambient_Kerchunkage.mp3
Here's the log from this attempt, set to level 4. I did read it
carefully, and don't see anything show-stopping. There's one failed
file, but liquidsoap should simply move on to the next one, right?
That's what it seems to do, in writing, but in practice, I'm getting
silence after the first track:
2011/09/21 14:47:36 >>> LOG START
2011/09/21 14:47:36 [protocols.external:3] Didn't find "ufetch"
2011/09/21 14:47:36 [protocols.external:3] Found "/usr/bin/wget"
2011/09/21 14:47:36 [main:3] Liquidsoap 0.9.3
2011/09/21 14:47:36 [single:3] "http://audiodef/audio/dc3.ogg" will be
queued.
2011/09/21 14:47:36 [video.converter:4] Couldn't find prefered video
converter: gavl
2011/09/21 14:47:36 [audio.converter:4] Using prefered samplerate
converter: libsamplerate
2011/09/21 14:47:36 [threads:3] Created thread "generic queue #1".
2011/09/21 14:47:36 [threads:3] Created thread "root" (1 total).
2011/09/21 14:47:36 [root:3] Waking up active nodes...
2011/09/21 14:47:36 [source:4] src_4902 gets up
2011/09/21 14:47:36 [source:4] mksafe gets up
2011/09/21 14:47:36 [source:4] src_4899 gets up
2011/09/21 14:47:36 [source:4] src_4897 gets up
2011/09/21 14:47:36 [ambient(dot)m3u:3] Loading playlist...
2011/09/21 14:47:36 [protocols.external:4] Executing /usr/bin/wget
"http://audiodef/playlists/ambient.m3u" "/tmp/liq89bdf0.osb"
2011/09/21 14:47:36 [protocols.external:4] Download process finished (ok)
2011/09/21 14:47:36 [ambient(dot)m3u:3] No mime type specified, trying
autodetection.
2011/09/21 14:47:36 [playlist parser:4] Trying audio/x-scpls parser
2011/09/21 14:47:36 [playlist parser:4] Trying audio/mpegurl parser
2011/09/21 14:47:36 [ambient(dot)m3u:3] Playlist treated as format
audio/mpegurl
2011/09/21 14:47:36 [ambient(dot)m3u:3] Successfully loaded a playlist
of 11 tracks.
2011/09/21 14:47:36 [ambient(dot)m3u:4] Activations changed: static=[],
dynamic=[src_4899:mksafe:ambient(dot)ogg:ambient(dot)ogg].
2011/09/21 14:47:36 [source:4] src_4898 gets up
2011/09/21 14:47:36 [src_4898:4] Activations changed: static=[],
dynamic=[src_4899:mksafe:ambient(dot)ogg:ambient(dot)ogg].
2011/09/21 14:47:36 [src_4899:4] Activations changed: static=[],
dynamic=[mksafe:ambient(dot)ogg:ambient(dot)ogg].
2011/09/21 14:47:36 [source:4] safe_blank gets up
2011/09/21 14:47:36 [safe_blank:4] Activations changed: static=[],
dynamic=[mksafe:ambient(dot)ogg:ambient(dot)ogg].
2011/09/21 14:47:36 [mksafe:4] Activations changed:
static=[ambient(dot)ogg:ambient(dot)ogg], dynamic=[].
2011/09/21 14:47:36 [ambient(dot)ogg:4] Activations changed:
static=[ambient(dot)ogg], dynamic=[].
2011/09/21 14:47:36 [ambient(dot)ogg:4] Enabling caching mode (active
source)
2011/09/21 14:47:36 [protocols.external:4] Executing /usr/bin/wget
"http://stillstream.com/assets/2009-05-22-Allen_Goodman_and_Har_Live_on_Ambitar.mp3"
"/tmp/liq9b1bf8.osb"
2011/09/21 14:47:36 [ambient(dot)ogg:3] Connecting mount ambient.ogg for
source@localhost...
2011/09/21 14:47:36 [ambient(dot)ogg:3] Connection setup was successful.
2011/09/21 14:47:36 [root:3] Broadcast starts up!
2011/09/21 14:47:36 [mksafe:3] Switch to safe_blank.
2011/09/21 14:47:36 [safe_blank:4] Activations changed:
static=[mksafe:ambient(dot)ogg:ambient(dot)ogg],
dynamic=[mksafe:ambient(dot)ogg:ambient(dot)ogg].
2011/09/21 14:47:37 [ogg.encoder:4] ambient(dot)ogg: Starting all streams
2011/09/21 14:57:36 [protocols.external:4] Download process finished
(killed)
2011/09/21 14:57:36 [request:4] Failed to resolve
"http://stillstream.com/assets/2009-05-22-Allen_Goodman_and_Har_Live_on_Ambitar.mp3"!
For more info, see server command 'trace 1'.
2011/09/21 14:57:36 [protocols.external:4] Executing /usr/bin/wget
"http://audiodef/audio/dc3.ogg" "/tmp/liq0c3681.osb"
2011/09/21 14:57:36 [protocols.external:4] Download process finished (ok)
2011/09/21 14:57:36 [decoder:4] Trying OGG decoder for
"/tmp/liq0c3681.osb"...
2011/09/21 14:57:36 [ogg.demuxer:4] Found a ogg logical stream, serial:
1ad53e84
2011/09/21 14:57:36 [ogg.demuxer:4] Trying ogg/vorbis format
2011/09/21 14:57:36 [decoder:3] Decoder OGG chosen for "/tmp/liq0c3681.osb".
2011/09/21 14:57:36 [ogg.demuxer:4] Found a ogg logical stream, serial:
1ad53e84
2011/09/21 14:57:36 [ogg.demuxer:4] Trying ogg/vorbis format
2011/09/21 14:57:36 [src_4898:4] Remaining: 0, queued: 0, adding:
1323000 (RID 2)
2011/09/21 14:57:36 [protocols.external:4] Executing /usr/bin/wget
"http://stillstream.com/assets/2008-11-07-Allen_Goodman_Live_Ambient_Kerchunkage.mp3"
"/tmp/liq2c8925.osb"
2011/09/21 14:57:36 [src_4898:4] Remaining: 0, queued: 1323000, taking:
1323000
2011/09/21 14:57:36 [ogg.demuxer:4] Found a ogg logical stream, serial:
1ad53e84
2011/09/21 14:57:36 [ogg.demuxer:4] Trying ogg/vorbis format
2011/09/21 14:57:36 [src_4898:3] Prepared "/tmp/liq0c3681.osb" (RID 2).
2011/09/21 14:57:36 [mksafe:3] Switch to src_4899 with transition.
2011/09/21 14:57:36 [safe_blank:4] Activations changed: static=[],
dynamic=[mksafe:ambient(dot)ogg:ambient(dot)ogg].
2011/09/21 14:57:36 [src_4899:4] Activations changed:
static=[mksafe:ambient(dot)ogg:ambient(dot)ogg],
dynamic=[mksafe:ambient(dot)ogg:ambient(dot)ogg].
2011/09/21 14:57:36 [src_4899:3] Switch to src_4898.
2011/09/21 14:57:36 [src_4898:4] Activations changed:
static=[src_4899:mksafe:ambient(dot)ogg:ambient(dot)ogg],
dynamic=[src_4899:mksafe:ambient(dot)ogg:ambient(dot)ogg].
2011/09/21 14:57:36 [ogg.encoder:4] ambient(dot)ogg: Setting end of
track 1aaa2946.
2011/09/21 14:57:36 [ogg.encoder:4] ambient(dot)ogg: Every ogg logical
tracks have ended: setting end of stream.
2011/09/21 14:57:36 [ogg.encoder:4] ambient(dot)ogg: Starting new
sequentialized ogg stream.
2011/09/21 14:57:36 [ogg.encoder:4] ambient(dot)ogg: Starting all streams
2011/09/21 15:01:50 [ogg.demuxer:4] Reached last page of logical stream
1ad53e84
2011/09/21 15:02:00 [src_4898:3] Finished with "/tmp/liq0c3681.osb".
2011/09/21 15:02:00 [src_4898:4] Activations changed: static=[],
dynamic=[src_4899:mksafe:ambient(dot)ogg:ambient(dot)ogg].
2011/09/21 15:02:00 [mksafe:3] Switch to safe_blank with forgetful
transition.
2011/09/21 15:02:00 [src_4899:4] Activations changed: static=[],
dynamic=[mksafe:ambient(dot)ogg:ambient(dot)ogg].
2011/09/21 15:02:00 [safe_blank:4] Activations changed:
static=[mksafe:ambient(dot)ogg:ambient(dot)ogg],
dynamic=[mksafe:ambient(dot)ogg:ambient(dot)ogg].
On 09/21/11 12:55, [email protected] wrote:
> I'd remove mksafe, replace it with a fallback with a sine or some
> default file that you can easily identify. Then you'll be able to tell
> where if the source (and which source) failed, or if something
> inserted silence.
>
> As usual, start with a simple script, don't hesitate to comment out
> some parts, modify parts to see what happens in various places. A
> vumeter is also an option.
>
> Cheers,
> -- David
------------------------------------------------------------------------------
All the data continuously generated in your IT infrastructure contains a
definitive record of customers, application performance, security
threats, fraudulent activity and more. Splunk takes this data and makes
sense of it. Business sense. IT sense. Common sense.
http://p.sf.net/sfu/splunk-d2dcopy1
_______________________________________________
Savonet-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/savonet-users