Remove ID3 Tags from Flac Files

Problem: Some flac players refuse to play some flac files, and even tools like an old ffmpeg can’t handle some flac files

Solution: These flac files might have id3v2 tags which they realy should not, because flac uses vorbis style tags and not id3. Remove those id3v2 tags with this command:

> id3v2 --delete-all song.flac

This removes the id3v2 tags from the flac file in place

Discussion: Those flac files were made with EAC. In the encoder settings “Add ID3 Tags” was checked, and EAC added ID3 tags even though flac files don’t need and must not have ID3 tags. If you like to know, whether your flac files have these false ID3 tags your can run “id3v2 -l song.flac” or look into the files with hexdump.

hexdump -C song-with-id3.flac | head
00000000  49 44 33 03 00 00 00 06  44 0b 54 49 54 32 00 00  |ID3.....D.TIT2..|
00000010  00 27 00 00 01 ff fe 54  00 68 00 65 00 20 00 46  |.'.....T.h.e. .F|
00000020  00 69 00 72 00 65 00 20  00 54 00 68 00 69 00 73  |.i.r.e. .T.h.i.s|
00000030  00 20 00 54 00 69 00 6d  00 65 00 54 50 45 31 00  |. .T.i.m.e.TPE1.|

hexdump -C song-without-id3.flac | head
00000000  66 4c 61 43 00 00 00 22  10 00 10 00 00 00 10 00  |fLaC..."........|
00000010  2b 54 0a c4 42 f0 00 bf  39 4c 3d e0 59 d1 58 72  |+T..B...9L=.Y.Xr|
00000020  49 b7 d4 56 99 08 c4 ae  45 b5 03 00 02 0a 00 00  |I..V....E.......|
00000030  00 00 00 00 00 00 00 00  00 00 00 00 00 00 10 00  |................|

Correct flac files start with “fLaC” and not “ID3”

Version: EAC “Exact Audio Copy” Sept. 2019

Firefox Audio is Broken due to PulseAudio Dependency

Problem: Firefox 52 audio does not work without pulseaudio.

Discussion: pulseaudio is a bloated audio daemon that often fails. In the last years, when ever audio failed on linux, the quickest solution was to uninstall pulseaudio. But the Firefox developers made the mistake to remove support for the underlying audio driver alsa, and insist on the middle layer pulseaudio.
The second problem with distribution packages of pulseaudio is that it depends on lots of things itself like dbus, systemd, consolekit,…
Which leads to the problem: you can’t use firefox on most linux distributions when you prefer a better startup system than systemd.

Solution1: Don’t use Firefox until they fix this.

Solution2: You can compile pulseaudio without dependencies and use it in pure user context:

Download pulseaudio packages, configure it with:

./configure –prefix=/your/homedir/pulseaudio –disable-systemd-daemon –disable-systemd-login –disable-systemd-journal –without-caps –disable-dbus

You might need to install some -dev packages for this configure to work: libsndfile-dev, libspeex-dev, libspeexdsp-dev, ..

make install

And add this to your ~/.bashrc (or similar startup script):

export LD_LIBRARY_PATH=/your/homedir/pulseaudio/lib/
/your/homedir/pulseaudio/bin/pulseaudio -D

Then you can start firefox with a local, limited and secured pulseaudio server.

With standard settings pulseaudio grabs the soundcard completely and blocks audio for other alsa software. This egoism is typical for a Lenn* Poett* tool. But it can be changed. Change the following lines in /your/homedir/pulseaudio/etc/pulse/

#load-module module-alsa-sink
load-module module-alsa-sink device=dmix

#load-module module-detect

With these settings pulseaudio uses the normal asla mixing features, and allows other software to use audio.

The pulseaudio developer think it’s a good idea to terminate the pulseaudio server after the last client quits, at let the next client “magically” restart the daemon. (I repeat: “let a client application start a daemon”). This remembers me of the days when we all thought inetd was a good idea. Now we no better. There is an option that prevents the pulseaudio service from  dying.

Change this line in ~/pulseaudio/etc/pulse/daemon.conf:

exit-idle-time = -1

This keeps the daemon running.

Squeezebox Remote Streaming

I use Logitech Squeezeboxes at home for my music library, Internet radio, and podcasts. The server is running on my Linux server, and the clients are Squeezebox Boom and Squeezebox Duet.

If you like to stream to your desktop PC, you can use several software squeezebox clients, but there is also a simple way to stream to your PC.

Start a mp3 streaming client (eg mplayer) with this URL:
http://squeezeboxserver:9000/stream .mp3

and use the squeezebox webinterface to control this client. That’s it. No additional software needed.

One drawback with this solution is, that controlling this client is delayed.

Read on: