Mopidy fails to connect to Icecast server

This issue affects both Ubuntu and Debian.
For example Mopidy 3.0.2 on Ubuntu 20.04 (Focal Fossa) using the apt.mopidy.com method.
Also mopidy 3.3  on Debian 11 (bullseye).

All attempts to connect to a known working Icecast2 server would not work and the Icecast server would not log any errors. However the Mopidy log would record the following error:
[MainThread] mopidy.audio.gst GStreamer error: Could not connect to server
The root cause is a bug in the version of the libshout3 library that is included in the repository has a bug.

For example on Ubuntu 20.04 (source: https://bugs.launchpad.net/mixxx/+bug/1833225).

A workaround is to downgrade libshout3 library to a working version. In this example we will use the library in Ubuntu 19.10 (Eoan): 2.4.3 (2.4.3-1) –> 2.4.1 (2.4.1-2build1)
https://packages.ubuntu.com/eoan/libshout3

Steps for Ubuntu (see Notes for Debian)

  1. cd /tmp
  2. wget http://mirrors.kernel.org/ubuntu/pool/main/libs/libshout/libshout3_2.4.1-2build1_amd64.deb
  3. sudo dpkg -i libshout3_2.4.1-2build1_amd64.deb
  4. Restart Mopidy

To prevent the library from being replaced with every apt-get upgrade  you can hold it:

sudo apt-mark hold libshout3

Once the libshout3 package is fixed in 20.04 we will be able to undo it:

sudo apt-mark unhold libshout3

Then upgrade libshout3 using apt-get.

Notes:
Modify steps 2 and 3 for Debian to use the version in the buster repository. This will downgrade libshout3 from version 2.4.5
https://packages.debian.org/buster/amd64/libshout3/download
http://ftp.us.debian.org/debian/pool/main/libs/libshout/libshout3_2.4.1-2_amd64.deb

This entry was posted in Uncategorized. Bookmark the permalink.