Hi Rob,

Your issue should be fixed now. It'd be nice if you could test and
confirm us that this is the case :-)

Romain

2013/2/17 Samuel Mimram <smim...@gmail.com>:
> Hi,
>
> Clearly some details need to be polished here. However, the following
> script works:
>
> gst = input.gstreamer.audio(pipeline="uridecodebin
> uri=mms://live1.rte.ie/wmtencoder/lyric.wma")
> gst = buffer(mksafe(gst))
> gst = mksafe(gst)
>
> output.pulseaudio(gst)
>
> ++
>
> Sam.
>
> On Tue, Feb 12, 2013 at 10:31 PM, Rob Canning <r...@spc.org> wrote:
>> 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)
>>
>> 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...
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>>
>>> Cheers,
>>>
>>> Samuel.
>>>
>>> On Sun, Feb 10, 2013 at 11:13 PM, Rob Canning <r...@spc.org> wrote:
>>>> hi,
>>>>
>>>> playing with input.gstreamer to try and get access to dirty streams
>>>> (.wma, .ra etc) instead of input.external / input mplayer as i was
>>>> having problems with that. not sure what sort of sink i should have ...
>>>> any pointers welcome!
>>>> thanks
>>>> rob
>>>>
>>>> #!/usr/local/bin/liquidsoap
>>>> set("log.file.path","gst.log")
>>>> set("log.stdout",true)
>>>>
>>>> gst = input.gstreamer.audio(pipeline="playbin
>>>> uri=mms://live1.rte.ie/wmtencoder/lyric.wma")
>>>>
>>>> output.icecast(%opus(),
>>>>     host = "localhost",port = 8800,password = "xxxxx", mount = "gst.ogg",
>>>> fallible=true,
>>>>     gst)
>>>>
>>>> 2013/02/11 01:59:12 [threads:3] Created thread "wallclock_gstreamer" (1
>>>> total).
>>>> 2013/02/11 01:59:12 [clock.wallclock_gstreamer:3] Streaming loop starts,
>>>> synchronized by active sources.
>>>> 2013/02/11 01:59:12 [clock.wallclock_gstreamer:2] Source
>>>> input.gstreamer.audio_video_6033 failed while streaming:
>>>> Gstreamer.Failure_msg("could not link playbin0 to decodebin0")!
>>>> 2013/02/11 01:59:12 [clock.wallclock_gstreamer:3] Raised by primitive
>>>> operation at file "", line 0, characters 0-0
>>>> 2013/02/11 01:59:12 [clock.wallclock_gstreamer:2] Source gst(dot)ogg
>>>> failed while streaming: Gstreamer.Failure_msg("could not link playbin1
>>>> to decodebin1")!
>>>> 2013/02/11 01:59:12 [clock.wallclock_gstreamer:3] Raised by primitive
>>>> operation at file "", line 0, characters 0-0
>>>> 2013/02/11 01:59:12 [gst(dot)ogg:3] Closing connection...
>>>>
>>>>
>>>> ------------------------------------------------------------------------------
>>>> 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
>>>> Savonet-users@lists.sourceforge.net
>>>> https://lists.sourceforge.net/lists/listinfo/savonet-users
>>> ------------------------------------------------------------------------------
>>> 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
>>> Savonet-users@lists.sourceforge.net
>>> https://lists.sourceforge.net/lists/listinfo/savonet-users
>>
>>
>> ------------------------------------------------------------------------------
>> 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
>> Savonet-users@lists.sourceforge.net
>> https://lists.sourceforge.net/lists/listinfo/savonet-users
>
> ------------------------------------------------------------------------------
> The Go Parallel Website, sponsored by Intel - in partnership with Geeknet,
> is your hub for all things parallel software development, from weekly thought
> leadership blogs to news, videos, case studies, tutorials, tech docs,
> whitepapers, evaluation guides, and opinion stories. Check out the most
> recent posts - join the conversation now. http://goparallel.sourceforge.net/
> _______________________________________________
> Savonet-users mailing list
> Savonet-users@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/savonet-users

------------------------------------------------------------------------------
The Go Parallel Website, sponsored by Intel - in partnership with Geeknet, 
is your hub for all things parallel software development, from weekly thought 
leadership blogs to news, videos, case studies, tutorials, tech docs, 
whitepapers, evaluation guides, and opinion stories. Check out the most 
recent posts - join the conversation now. http://goparallel.sourceforge.net/
_______________________________________________
Savonet-users mailing list
Savonet-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/savonet-users

Reply via email to