How to fix the bug causing incorrect song lengths in Airtime running on Ubuntu 14.04

Guide to fixing the buggy ‘silan’ version packaged with Ubuntu 14.04 which causes Airtime to use incorrect song/track lengths.

There’s a problem with the version of “silan” (Soundfile Silence Analyzer) that’s packaged with Ubuntu 14.04 which causes many (or most) files to appear half as long in Airtime as they should, resulting in songs ending when they’re only halfway done playing. This guide explains how to replace the faulty copy of silan with a fixed/working version.

1. Check which version of silan you’re running

If you’re experiencing the problem mentioned above, you’re probably running Version 0.3.2-1build1 but type the following command to make sure:

2. Add the sourcefabric.org repository to your APT (Advanced Packaging Tool) source list.

Edit the sources.list file using a text editor (nano, vi, etc.):

At the bottom of the file, add the following line (if it’s already there, you can skip this step):

Save and exit (if you’re using nano, press Ctrl-O and hit Enter to save, then press Ctrl-X to exit.)

3. Run the apt-get update command

Type the following to update your repository package lists:

4. Install the sourcefabric.org keyring (used to authenticate packages for security purposes)

Type the following:

Press Y at the prompts.

5. Replace the faulty version of silan

Here’s where we replace the bad version of silan with the the updated/working version. Type the following:

Hit Y at the prompts.
Ignore the warning: dpkg: warning: downgrading silan from 0.3.2-1build1 to 0.3.2~trusty~sfo-1

6. Confirm that you’re now running the proper version

As in step 1, type the following to check with version of Silan you now have installed:

This should now be Version 0.3.2~trusty~sfo-1

7. Prevent Silan from automatically “upgrading” back to the fucked up version

This step is important. Even though Silan should now be working fine, the system will revert back to the original broken version the next time you update unless you type the following:

You should see the message silan set on hold. This prevents the package from being automatically installed, upgraded or removed (see apt-mark manual for more info.)

That should solve the problem!

For additional information on this problem:

Reload config file for Icecast radio streaming server without dropping listeners

How to reload the /etc/icecast2/icecast.xml configuration file for Icecast radio streaming server without dropping your listeners, DJs, or affecting your stream.

Type:

or, find the PID for your Icecast processĀ using “ps aux” (example: 1234) and type:

 

While kill and killall do normally terminate tasks, in this instance they’re being used to send a “hangup signal” (-HUP) which forces Icecast to refesh the configuration file (usually /etc/icecast2/icecast.xml) without dropping any of the client connections. Pretty hard to understate the usefulness of this, especially on a production server.

How to display ‘Now Playing’ ticker from an Icecast server on website

Step by step guides for displaying a “Now Playing” / “Currently Playing” ticker on your website (WordPress or otherwise) from an Icecast streaming server using PHP, JavaScript & HTML/CSS

Continue reading “How to display ‘Now Playing’ ticker from an Icecast server on website”

Batch re-encode MP3s and fix ID3 tags using ‘lame’ and ‘id3cp’ in Ubuntu 12 script.

How to process a folder of mp3s, re-encode mp3s files to bitrates/specifications, copy id3v1/id3v2 tags, etc. using ‘lame’ and ‘id3cp’ in a script on Ubuntu 12.04.

Coming soon.