Hi all,

I am relaying a remote ogg stream with icecast, feeding it to
liquidsoap for transcoding to mp3, and then sending it out using
icecast again. I built liquidsoap (mercurial) from source few days
ago. The problem i am facing is that if there is some disruption in
the remote stream, liquidsoap starts relaying silence as expected,
however it doesnt go back to playing the remote stream once it is has
come back.

My stream is like this:

>cat stream.liq
set("log.file.path","/var/log/liquidsoap/radiomirchi.log")
set("log.file.append",false)
set("log.level",4)
set("log.stdout",false)

# Input the stream,
url = "http://user:[email protected]:8000/high.ogg";
input = mksafe(input.http(url))

output.icecast(%mp3(stereo=true, samplerate=44100, bitrate=128),
mount="/live.mp3",
  host="localhost", port=8000, password="pass",
  input)


A sample log when the stream failed is:
2011/08/20 08:49:50 >>> LOG START
2011/08/20 08:49:50 [protocols.external:3] Didn't find "ufetch".
2011/08/20 08:49:50 [protocols.external:3] Found "/usr/bin/wget".
2011/08/20 08:49:50 [main:3] Liquidsoap 1.0.0-beta3+svn
(default@a8953c44c82c:20110814:192053)
2011/08/20 08:49:50 [main:3] Using: graphics=[distributed with Ocaml]
pcre=6.2.0 dtools=0.2.2 duppy=0.4.1 duppy.syntax=0.4.1 cry=0.2.1
mm=0.1.0 ogg=0.4.2 vorbis=0.6.0 mad=0.4.2 dynlink=[distributed with
Ocaml] lame=0.3.0 alsa=0.2.1 samplerate=0.1.1 taglib=0.1.4
2011/08/20 08:49:50 [main:2]
2011/08/20 08:49:50 [main:2] DISCLAIMER: This version of Liquidsoap has been
2011/08/20 08:49:50 [main:2] compiled from a snapshot of the development code.
2011/08/20 08:49:50 [main:2] As such, it should not be used in production
2011/08/20 08:49:50 [main:2] unless you know what you are doing!
2011/08/20 08:49:50 [main:2]
2011/08/20 08:49:50 [main:2] We are, however, very interested in any feedback
2011/08/20 08:49:50 [main:2] about our development code and committed to fix
2011/08/20 08:49:50 [main:2] issues as soon as possible.
2011/08/20 08:49:50 [main:2]
2011/08/20 08:49:50 [main:2] If you are interested in collaborating to
2011/08/20 08:49:50 [main:2] the development of Liquidsoap, feel free to
2011/08/20 08:49:50 [main:2] drop us a mail at <[email protected]>
2011/08/20 08:49:50 [main:2] or to join the #savonet IRC channel on Freenode.
2011/08/20 08:49:50 [main:2]
2011/08/20 08:49:50 [main:2] Please send any bug report or feature request
2011/08/20 08:49:50 [main:2] at <http://dev.sourcefabric.org/browse/LS>.
2011/08/20 08:49:50 [main:2]
2011/08/20 08:49:50 [main:2] We hope you enjoy this snapshot build of
Liquidsoap!
2011/08/20 08:49:50 [main:2]
2011/08/20 08:49:50 [lang:3] Lastfm/audioscrobbler support was not compiled.
2011/08/20 08:49:50 [frame:3] Using 44100Hz audio, 25Hz video, 44100Hz master.
2011/08/20 08:49:50 [frame:3] Frame size must be a multiple of 1764
ticks = 1764 audio samples = 1 video samples.
2011/08/20 08:49:50 [frame:3] Targetting 'frame.duration': 0.04s =
1764 audio samples = 1764 ticks.
2011/08/20 08:49:50 [frame:3] Frames last 0.04s = 1764 audio samples =
1 video samples = 1764 ticks.
2011/08/20 08:49:50 [video.converter:4] Couldn't find preferred video
converter: gavl.
2011/08/20 08:49:50 [audio.converter:4] Using preferred samplerate
converter: libsamplerate.
2011/08/20 08:49:50 [threads:3] Created thread "generic queue #1".
2011/08/20 08:49:50 [clock:4] Currently 1 clocks allocated.
2011/08/20 08:49:50 [clock.wallclock_main:4] Starting 1 sources...
2011/08/20 08:49:50 [source:4] Source output.icecast_4584 gets up.
2011/08/20 08:49:50 [source:4] Source mksafe gets up.
2011/08/20 08:49:50 [source:4] Source src_4580 gets up.
2011/08/20 08:49:50 [threads:3] Created thread "http polling" (1 total).
2011/08/20 08:49:50 [src_4580:4] Connecting to
<http://172.16.1.132:8000/high.ogg>...
2011/08/20 08:49:50 [src_4580:4] Activations changed: static=[],
dynamic=[mksafe:/live(dot)mp3:/live(dot)mp3].
2011/08/20 08:49:50 [source:4] Source safe_blank gets up.
2011/08/20 08:49:50 [safe_blank:4] Content kind is {audio=2;video=0;midi=0}.
2011/08/20 08:49:50 [safe_blank:4] Activations changed: static=[],
dynamic=[mksafe:/live(dot)mp3:/live(dot)mp3].
2011/08/20 08:49:50 [mksafe:4] Activations changed:
static=[/live(dot)mp3:/live(dot)mp3], dynamic=[].
2011/08/20 08:49:50 [/live(dot)mp3:4] Activations changed:
static=[/live(dot)mp3], dynamic=[].
2011/08/20 08:49:50 [/live(dot)mp3:4] Enabling caching mode: active source.
2011/08/20 08:49:50 [/live(dot)mp3:3] Connecting mount /live.mp3 for
source@localhost...
2011/08/20 08:49:50 [/live(dot)mp3:3] Connection setup was successful.
2011/08/20 08:49:50 [threads:3] Created thread "wallclock_main" (2 total).
2011/08/20 08:49:50 [clock.wallclock_main:3] Streaming loop starts,
synchronized with wallclock.
2011/08/20 08:49:50 [clock:4] Main phase starts.
2011/08/20 08:49:50 [mksafe:3] Switch to safe_blank.
2011/08/20 08:49:50 [safe_blank:4] Activations changed:
static=[mksafe:/live(dot)mp3:/live(dot)mp3],
dynamic=[mksafe:/live(dot)mp3:/live(dot)mp3].
2011/08/20 08:49:50 [src_4580:4] Trying playlist parser for mime application/ogg
2011/08/20 08:49:50 [src_4580:4] Content-type "application/ogg".
2011/08/20 08:49:50 [decoder:4] Trying method "WAV" for "application/ogg"...
2011/08/20 08:49:50 [decoder:4] Trying method "PCM/BASIC" for
"application/ogg"...
2011/08/20 08:49:50 [decoder:4] Trying method "OGG" for "application/ogg"...
2011/08/20 08:49:50 [decoder:3] Method "OGG" accepted "application/ogg".
2011/08/20 08:49:50 [src_4580:3] Decoding...
2011/08/20 08:49:51 [mksafe:3] Switch to src_4580 with transition.
2011/08/20 08:49:51 [safe_blank:4] Activations changed: static=[],
dynamic=[mksafe:/live(dot)mp3:/live(dot)mp3].
2011/08/20 08:49:51 [src_4580:4] Activations changed:
static=[mksafe:/live(dot)mp3:/live(dot)mp3],
dynamic=[mksafe:/live(dot)mp3:/live(dot)mp3].
2011/08/20 08:51:28 [src_4580:4] No network activity for 1.00 second(s).
2011/08/20 08:51:28 [src_4580:4] No network activity for 1.00 second(s).
2011/08/20 08:53:43 [src_4580:4] No network activity for 1.00 second(s).
2011/08/20 08:54:47 [src_4580:4] No network activity for 1.00 second(s).
2011/08/20 08:59:48 [src_4580:4] No network activity for 1.00 second(s).
2011/08/20 09:00:05 [src_4580:4] No network activity for 1.00 second(s).
2011/08/20 09:10:58 [src_4580:4] No network activity for 1.00 second(s).
-------------------snip-------------------------
011/08/20 16:51:09 [src_4580:4] No network activity for 1.00 second(s).
2011/08/20 16:51:17 [src_4580:4] No network activity for 1.00 second(s).
2011/08/20 16:52:03 [src_4580:4] No network activity for 1.00 second(s).
2011/08/20 16:53:41 [src_4580:4] No network activity for 1.00 second(s).
2011/08/20 16:54:51 [src_4580:4] No network activity for 1.00 second(s).
2011/08/20 16:55:32 [src_4580:4] End of track.
2011/08/20 16:55:32 [src_4580:4] Buffer emptied, buffering needed.
2011/08/20 16:55:32 [mksafe:3] Switch to safe_blank with forgetful transition.
2011/08/20 16:55:32 [src_4580:4] Activations changed: static=[],
dynamic=[mksafe:/live(dot)mp3:/live(dot)mp3].
2011/08/20 16:55:32 [safe_blank:4] Activations changed:
static=[mksafe:/live(dot)mp3:/live(dot)mp3],
dynamic=[mksafe:/live(dot)mp3:/live(dot)mp3].

Cheers
Rajil

------------------------------------------------------------------------------
Get a FREE DOWNLOAD! and learn more about uberSVN rich system, 
user administration capabilities and model configuration. Take 
the hassle out of deploying and managing Subversion and the 
tools developers use with it. http://p.sf.net/sfu/wandisco-d2d-2
_______________________________________________
Savonet-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/savonet-users

Reply via email to