PLaying WAV files on embedded system


We have a QNX 6.1 (not Photon) embedded system (on a DiskOnChip) and we want to play some short WAV files at certain points, e.g. key clicks when keys pressed.

We are using the playsound_noph library and inducing sound commands through that but there is a (relatively) long lag between starting it and the sound playing.

Calling ‘playsound_noph -v’ in a shell by hand you can see the slow progress as it reports its states (MV_OPENING… MV_STOPPED… MV_PLAYING).

Can this be quickened???

playsound_noph doesn’t seem to support all possible formats as Windows Media Player can (i.e. it can play them but QNX says invalid format).

Options on the ANX player seem scant to support.

We haven’t tried the MPEG player, but I assume that would include decompression, etc, and so it would be even slower.


Actually, using something that could play mp3’s wouldn’t be slower. The reason why playsound_noph is so slow is due to how it interacts with the system, starting additional programs to actually play, etc. It is quite messy (and why it is has been deprecated since 6.2.1). Does 6.1 have the /usr/bin/wave program? If so, that would work much better for your needs.

No we haven’t got /usr/bin/wave.

However, I have found an example wave.c which looks a bit more low-level driving the PCM stuff. The example is a lot quicker executing. We are now trying to integrate that sort of solution into our App.