The Odroid XU4 with a new OS (3)

(Continued from page 2 …)

I made mention of ogg123. It’s a command line utility to play ogg (vorbis) music files. I like it cuz – with it – I don’t neccessarily need a GUI to play music. For instance, I may play music from one of my headless servers or access points, and those (for the most part) have no GUI.

The rough dependency chain for ogg123 is:

Figure 3: Rough dependency chain for ogg123 utility.

Another benefit to using ogg123 (which by the way, is part of vorbis-tools) is that I don’t need pulseaudio, or other higher level / heavier sound abstractions.  There was a small wrinkle getting ogg123 to work on the XU4 with Gentoo.  This may be because I don’t understand portage that well, but anyway …

Libao was configured to use pulseaudio IIRC.  Anyway, I don’t think it was compiled to work against (and only with) ALSA.   I monkeyed with the build specs, and USE flags, but didn’t get it built to use (only) ALSA through the portage system.  So, I downloaded the source tarball and built it independently out-of-portage-tree, thusly:

  • tar -xvf libao…..
  • cd libao
  • ./configure –enable-alsa –prefix=/usr –disable-pulse
  • make
  • make install

This gave me a pulse independent, easy-to-use music player for headless servers and my access points.  I suppose there’s admonition coming from somewhere not to do what I’ve done – at least not  on servers and access points. Oh well.  Don’t do as I do, and be safe.

Pulseaudio is a blend of itself and ALSA, but has a dependency on ALSA as well.  It replaces the client “user” portion of ALSA with itself.

So, it’s a longer chain of abstractions, like:

      Application -> Pulseaudio -> ALSA -> Sound adapter

But, I’m no expert about either ALSA or pulseaudio.  I do know that they tend to be headaches for people doing their own distros, versus using a pre-baked one, but I think I’m managing the scenario well enough for my own purposes.  I just want the Blues and my weather faxes, the rest is optional.

I prefer the simple approach always, as it’s easer to fix it. So, I’ve been playing with sndio (from the OpenBSD project) – thinking I may get some of my pulse dependent apps to work with it instead. sndio compiles easily on the XU4 with Gentoo, out-of-portage-tree, as there is no portage package ATM.

Read More …

Note: Gentoo is a product of the Gentoo people at, and this author and site has no affiliation with them. Odroid is a project of hardkernel at, and this author and site has no affiliation with them.