[pulseaudio-discuss] PA and OS X

Daniel Mack daniel at caiaq.de
Fri Jul 17 03:12:53 PDT 2009


On Fri, Jul 17, 2009 at 08:23:55AM +0100, Colin Guthrie wrote:
> 'Twas brillig, and Daniel Mack at 17/07/09 07:46 did gyre and gimble:
>> And I could probably help here, too - I've been hacking Mac OS X audio
>> drivers (kexts) in the past and know about some nasty pitfalls.
>
> Awesome! This is exactly the kind of experience we need.

What I could start with is a little kernel extension that registers a
CoreAudio IOAudioEngine (the representation of a sound card in Mac OS X)
and loops the audio material back to a user space layer. Audio would be
transported using shared memory, and other information like sample rate
change notifications would be done with something similar to ioctl()s.

That userspace layer would then be put into a PA audio plugin which is
then able to record and playback audio and interact with every possible
CoreAudio client application. Does that sound feasible? What would be a
good name for it (something to distinguish between this one and the one
using the CoreAudio userspace API)?

At a later point, I could make the number of audio channels for that
audio driver configurable, but I think stereo is a good first start.

Is there any standard internal audio sample format? CoreAudio works with
floats all the way, so it would be perfect if there were no further
sample conversions included (which is tricky as floats in kernel space
are considered evil in Mac OS X, similar to Linux).

Daniel




More information about the pulseaudio-discuss mailing list