I'm working with a customer that has discovered a possible problem with OSS
emulation on ALSA.  Unfortunately, I don't have a lot of experience with OSS, so
I need help understanding whether the customer's observations point to a real
problem or not.

The customer is using an old application called "bplay" to test OSS audio
support on our hardware.  The application works fine on x86, but fails on our
PowerPC board.  It could be an endian issue, but I doubt it.

Here is the forwarded email (slightly edited).  Can someone familiar with the
OSS "sync" functionality comment?  What exactly does SNDCTL_DSP_SYNC do, and why
would an application call it?

---------------

They reported that it seemed some ioctl commands in the OSS emulation did not
work correctly.

The tested procedure of the ioctl commands are as following,

#1) Stopped audio stream output after doing followings:
1. Opening /dev/mixer
2. Getting a channel value (0x00000001) that is used for "ioctl(fd,
SOUND_MIXER_READ_DEVMASK, &Sndsts);".
3. Write audio volume information by "ioctl(fd,
SOUND_MIXER_WRITE_VOLUME, &Value);",

#2) Stopped audio stream output after doing following:
1. Opening /dev/dsp
2. Executing command "ioctl(fd, SNDCTL_DSP_SYNC, NULL);",

XXXX found that by commenting out the "sync_audio" function on the source
code of "bplay" made "bplay" work. So XXXX suspects the implementation of the
ioctl on the OSS emulation may have a problem.

-- 
Timur Tabi
Linux kernel developer at Freescale
_______________________________________________
oss-devel mailing list
oss-devel@mailman.opensound.com
http://mailman.opensound.com/mailman/listinfo/oss-devel

Reply via email to