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