How to create several dsp units? Help needed.

Alexander Motin mav at
Thu Aug 7 07:07:07 UTC 2008


I am working on patch extending snd_hda functionality, making it less 
quirky and more conforming with UAA specification. I expect to implement 
there support for several independent audio devices within the same 
hardware codec (not equal mixed together channels like vchans, but 
independent inputs and outputs working on different connectors). Looks 
like I have managed good with codec part but now I need to announce this 
functionality to sound subsystem in which I am not very good yet. Could 
somebody give me a hint in this area or point to some documents?

As I understand I need somehow to create several /dev/dspX and possibly 
several /dev/mixerX devices to let applications operate them 
independently. Is it possible to do within the same pcm0 hardware device?

Second pcm_addchan() call creates only pcm0:play:dsp0.p1, but I need 
something like pcm0:play:dsp1.p0. Is in possible or dsp0 is hard bound 
to the pcm0?

If dsp0 hard bound to pcm0 then is it possible to create pcm1 
dynamically within same hardware?

Thanks for any support.

Alexander Motin

More information about the freebsd-multimedia mailing list