#1003553 libshout3: Fails with gst-launch1.0

Package:
libshout3
Source:
libshout
Description:
MP3/Ogg Vorbis broadcast streaming library
Submitter:
Roland Mas
Date:
2022-01-11 19:51:04 UTC
Severity:
normal
#1003553#5
Date:
2022-01-11 19:49:49 UTC
From:
To:
Dear Maintainer,

I'm trying to stream sound to an Icecast server, from a gstreamer
pipeline that monitors a dedicate pulseaudio sink.  However, this
fails with any version of libshout3 above 2.4.1-2 (I tested all
versions from 2.4.1-1 onwards, with snapshot.debian.org).  Version
2.4.1-2 gives the following:

$ LANG=C gst-launch-1.0 -e pulsesrc device=icecast.monitor ! audioconvert ! flacenc ! oggmux ! shout2send ip=$ip port=8000 password=hackme mount=stream.ogg
Setting pipeline to PAUSED ...
Pipeline is live and does not need PREROLL ...
Pipeline is PREROLLED ...
Setting pipeline to PLAYING ...
New clock: GstPulseSrcClock
Redistribute latency...
Redistribute latency...
notification: Speex header too small
0:00:17.6 / 99:99:99.
[Then I interrupt with ^C, but it does work]

Upgrading libshout3 (and only libshout3) gives the following:
$ LANG=C gst-launch-1.0 -e pulsesrc device=icecast.monitor ! audioconvert ! flacenc ! oggmux ! shout2send ip=$ip port=8000 password=hackme mount=stream.ogg
Setting pipeline to PAUSED ...
Pipeline is live and does not need PREROLL ...
Pipeline is PREROLLED ...
Setting pipeline to PLAYING ...
New clock: GstPulseSrcClock
Redistribute latency...
Redistribute latency...
ERROR: from element /GstPipeline:pipeline0/GstShout2send:shout2send0: Could not connect to server
Additional debug info:
../ext/shout2/gstshout2.c(635): gst_shout2send_connect (): /GstPipeline:pipeline0/GstShout2send:shout2send0:
shout_open() failed: err=Please retry current operation.
ERROR: from element /GstPipeline:pipeline0/GstPulseSrc:pulsesrc0: Internal data stream error.
Additional debug info:
../libs/gst/base/gstbasesrc.c(3127): gst_base_src_loop (): /GstPipeline:pipeline0/GstPulseSrc:pulsesrc0:
streaming stopped, reason error (-5)
Execution ended after 0:00:02.431111916
Setting pipeline to NULL ...
ERROR: from element /GstPipeline:pipeline0/GstShout2send:shout2send0: Could not configure supporting library.
Additional debug info:
../ext/shout2/gstshout2.c(620): gst_shout2send_connect (): /GstPipeline:pipeline0/GstShout2send:shout2send0:
Error configuring libshout to use non-blocking i/o: Cannot set parameter while connected
Freeing pipeline ...
$

This seems consistent with a similar report on Arch Linux, see
https://archlinuxarm.org/forum/viewtopic.php?f=15&t=13677

Roland.