Trying to get mpg321 to work with libao

Using applications, configuring, problems
Post Reply
Message
Author
Jeff

Trying to get mpg321 to work with libao

#1 Post by Jeff »

Hi,

I've been battling (and losing) in getting mpg321 to play mp3 from rvxt. Typing mpg321 ivy.mp3 yields "no default libao driver available"

Typing mpg321 -o oss ivy.mp3 yields "can't find suitable libao driver (is device in use?).

Searching the web I found that

Can't find a suitable libao driver. (Is device in use?)
> >
> > or
> >
> > Error: Cannot open device oss.
> >
> > depending on if i try to play mp3s or oggs.
>
> Check permissions on /dev/dsp, if you haven't already, perhaps?

but, fritz, you rock!! that reminded me to try talking to the
different devices (martin, your advice to "read manpages" did not help
-- what manpages??), so i ln -s'd /dev/dsp to /dev/dsp1 instead of 0,
and it works!! (i mean, so far as i can tell ... i'm not in my room,
so i can't hear the sound coming out of the speakers or not, but i'm
sure my neighbors can. heh.)

thanks, all!!

It's now beyond me, can anyone shed any light ?

Many Thanks,
Jeff.

tempestuous
Posts: 5464
Joined: Fri 10 Jun 2005, 05:12
Location: Australia

#2 Post by tempestuous »

Some versions of mpg321 seem to have the libao library compiled within their binary, but some don't. So I think you need the libao library from www.xiph.org/ao/

You will probably also need the libmad library from www.underbit.com/products/mad/

And a tip - you can use xhippo (from the pupget packages) as a frontend for mpg321.

Guest

#3 Post by Guest »

Thanks for the reply, sorry I neglected to say that Puppy 1.04 already had libao. I've installed libmad but it still leaves me with the same problem.

Searching further it seems /dev/dsp is the problem, can it be shared, read/write?



Quote:-

The author of this post is not likely to still be waiting for a reply, but just in case somebody else has the same problem...

The problem here is that mpg321 (or whatever your player is) doesn't have write permissions for the sound device (usually /dev/dsp).

You have two choices:

a) Find out which group owns /dev/dsp (for me, it's audio) and add the apache user to that group (could be apache, www, etc.)
b) Make /dev/dsp writable by everybody


On some systems, /dev/dsp is a link to /dev/dsp0 (or something else). In such cases, the above applies to the target of /dev/dsp.



Regards Jeff.

Post Reply