[pulseaudio-discuss] Supporting hardware resampling

pl bossart bossart.nospam at gmail.com
Mon Nov 29 18:11:33 PST 2010

> Specifically, there is a dedicated DSP on board that can resample,
> multiplex and output audio.  The ALSA driver actually uses this DSP,
> but Pulse Audio is stuck resampling and muxing in user land before
> passing data to the ALSA driver.  I've been browsing around source and
> documentation, and while it seems straightforward enough to create a
> sink module that will dump PCM samples to the DSP, it does not seem
> that this would be sufficient as incoming samples to that sink would
> be resampled to match its parameters.
> Is there some way to make a more generic sink that can take multiple
> sample rates and pass data through?  Is this something that may
> require a card and sink combination instead of just a sink?  Or maybe
> I should just ask is this possible without major changes in Pulse
> Audio's architecture?

Default PulseAudio behavior is to mix in software. If you wanted to
mix in hardware, you could highjack the passthrough work I've been
doing for AC3. Essentially one device for sw mix, and a number of hw
devices with no processing in PulseAudio. Still fairly hairy stuff at
this point since you need to tag each stream as passthrough or not,
and route explicitely to a specific device for hw or sw mixing. You
would also need to load these devices by hand in the default.pa
configuration or use a specific profile for your hardware.

More information about the pulseaudio-discuss mailing list