2013/2/13 Rob Canning <[email protected]>: > On 02/13/2013 05:24 PM, Romain Beauxis wrote: >> Hi Rob, >> >> 2013/2/12 Rob Canning <[email protected]>: >>> On 02/11/2013 08:44 AM, Samuel Mimram wrote: >>>> Hi, >>>> >>>> If you set("log.level", 5) you will see more debug messages, amongst >>>> whose the precise pipeline used by Liquidsoap. In particular, you can >>>> see that it takes of adding the sink by itself, so nothing to do here: >>>> >>>> 2013/02/11 08:41:10 [io.gstreamer:5] GStreamer pipeline: playbin >>>> uri=mms://live1.rte.ie/wmtencoder/lyric.wma ! decodebin ! audioconvert >>>> ! audioresample ! appsink max-buffers=10 drop=false sync=false >>>> name="audio_sink" >>>> caps="audio/x-raw,format=S16LE,layout=interleaved,channels=2,rate=44100" >>>> >>>> However, your problem comes from the fact that you are using the wrong >>>> operator de decode audio: playbin will construct a whole pipeline to >>>> play the file, including a sink to the audio card (so it does not make >>>> sense to connect it to something else, thus the error you see). What >>>> you want is more uridecodebin which constructs only the decoding part >>>> of the pipeline. And actually the following should work: >>>> >>>> gst = input.gstreamer.audio(pipeline="uridecodebin >>>> uri=mms://live1.rte.ie/wmtencoder/lyric.wma") >>> yes thats it thank you samuel! >>> >>> the problem i am having now is if any of the sources are unavailable >>> then i would expect the gstreamer to fail and the fallback to kick in. >>> this doesnt happen though the whole .liq just hangs and the process >>> needs kill -9 PID >>> >>> gst = input.gstreamer.audio(pipeline="uridecodebin >>> uri=mms://live1.rte.ie/wmtencoder/lyBREAKMEric.wma") >>> >>> if i do a gst = fallback([gst,single("some.wav")]) >>> >>> then it fails because the gst isn’t an active source >>> >>> how do i make input.gstreamer.audio an active source? >>> >>> so at least the code will run and fail and fallback to the some.wav? >>> >>> now i always get something like: >>> this value has type >>> source(_) >>> but it should be a subtype of (the type of the value at line 7, char 18) >>> active_source(_) (infered at line 6, char 27-95) >> This is actually a bug and I though we got rid of it.. David should be >> able to tell you more and how to work around it.. > > great thanks! - thought i was going mad :) > >> >>> thanks >>> rob >>> >>> >>> #!/usr/local/bin/liquidsoap >>> set("log.file.path","test.log") >>> set("log.stdout",true) >>> set("log.level", 5) >>> ie = mksafe(input.gstreamer.audio(pipeline="uridecodebin >>> uri=mms://live1.rte.ie/wmtencoder/lyricBREAKME.wma")) >>> output.icecast(%vorbis(), host = "localhost",port = 8800, password = >>> "xxx",mount = "test.ogg", fallible=true, ie) >>> >>> 2013/02/13 00:12:42 [test(dot)ogg:3] Connection setup was successful. >>> 2013/02/13 00:12:42 [threads:3] Created thread "wallclock_gstreamer" (1 >>> total). >>> 2013/02/13 00:12:42 [clock:4] Main phase starts. >>> 2013/02/13 00:12:42 [clock.wallclock_gstreamer:3] Streaming loop starts, >>> synchronized by active sources. >>> 2013/02/13 00:12:42 [io.gstreamer:5] GStreamer pipeline: uridecodebin >>> uri=mms://live1.rte.ie/wmtencoder/lyricBREAKME.wma ! decodebin ! >>> audioconvert ! audioresample ! appsink max-buffers=10 drop=false >>> sync=false name="audio_sink" >>> caps="audio/x-raw,format=S16LE,layout=interleaved,channels=2,rate=44100" >>> 2013/02/13 00:12:43 [clock.wallclock_gstreamer:2] Source >>> input.gstreamer.audio_video_6033 failed while streaming: Gstreamer.Failure! >>> 2013/02/13 00:12:43 [clock.wallclock_gstreamer:3] Raised by primitive >>> operation at file "", line 0, characters 0-0 >>> 2013/02/13 00:12:43 [input.gstreamer.audio_video_6033:4] Activations >>> changed: static=[], dynamic=[mksafe:test(dot)ogg:test(dot)ogg]. >>> 2013/02/13 00:12:43 [mksafe:3] Switch to input.gstreamer.audio_video_6033. >>> 2013/02/13 00:12:43 [input.gstreamer.audio_video_6033:4] Activations >>> changed: static=[mksafe:test(dot)ogg:test(dot)ogg], >>> dynamic=[mksafe:test(dot)ogg:test(dot)ogg]. >>> >>> Ctrl-C hit here; >>> >>> ^C2013/02/13 00:13:09 [main:3] Shutdown started! >>> 2013/02/13 00:13:09 [main:3] Waiting for threads to terminate... >> Does it get stuck here? > > yup this is where i need to run kill -9 PID to get rid of it
Well, this is a bug then. I've put your script on my TODO as well and will review as soon as possible.. Thanks, Romain ------------------------------------------------------------------------------ Free Next-Gen Firewall Hardware Offer Buy your Sophos next-gen firewall before the end March 2013 and get the hardware for free! Learn more. http://p.sf.net/sfu/sophos-d2d-feb _______________________________________________ Savonet-users mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/savonet-users
