El 19/09/15 a les 01:06, Olaf Buddenhagen ha escrit:
This could work -- but I'm not sure it would be very useful? Is there any actual logic that could be split out into the audio and mixer translators? My suspicion is that they would rather just be straightforward wrappers -- in which case it seems an unnecessary complication...
That depends on the sound API you want to provide to applications. Rump doesn't implement OSS, but rather "Sun audio", which seems to be an ancestor of OSS, with very similar design. So if you wanted Sun audio, then yes it's a 1:1 wrapper. Otherwise you have to convert. I find OSS more useful than Sun audio myself, so I hacked a modified version of libossaudio (a conversion library included with NetBSD). This required a few changes to: - Make libossaudio use Rump as backend, rather than /dev/audio from the host - Make it build with non-NetBSD version of <sys/soundcard.h>. My changes were for the Linux version but when I checked on GNU/Hurd it just needed minor adjustments. - Use modified versions of <sys/audioio.h> to define Rump _IOC* macros without namespace collision with system-wide ioctls. See: https://github.com/robertmillan/rumposs -- Robert Millan