Re: [xwax-devel] xwax with MAYA44 USB (= 4-channel pcm)
Brought to you by:
hills
From: Mark H. <ma...@po...> - 2007-09-15 10:17:12
|
Hi Dan, On Fri, 14 Sep 2007, Daniel Kennedy wrote: > Unfortunately, the card works as a 4-channel pcm device, rather than two > 2-channel devices (or sub-devices)... so it's not possible to use xwax with > two turntables (OSS version) although one turntable works fine. i.e. there > is just dsp0, not dsp0 and dsp1. > > I switched to the ALSA branch and made an asound.conf (or asoundrc). As far > as I could understand, it's only possible to split the 4-channel PCM into > stereo pairs with dsnoop and dshare plugins, and stitch them back together > with asym plugin for a pair of duplex PCMs, so I did that. > > Finally, it worked - but the performance (latency or something else) was > very poor. The capture seems to be jerky/stuttering and the playback is the > same (although it's difficult to be sure that this is not just because of > the jerky capture). > > So, here are my questions (the first two are more ALSA related - but I > thought that I better ask here first before braving the ALSA list): > > 1) Is there a better way to split the four channels into two pairs? Have you tried referencing sub-devices of the interface? eg. -d hw:1,1 > 2) If not, does anyone know how to fine tune the asoundrc/asound.conf so > that the performance is better (buffer_size, period_size, etc? Is there > a good guide to understanding this somewhere)* ALSA device names and asoundrc seems to be a bit of a black art. The best reference I could find is http://www.alsa-project.org/main/index.php/Asoundrc It's also possible that the buffer time in xwax is too small, and audio is being dropped. In the development code the buffer settings aren't yet exposed on the command line, but can be changed in device.c. > 3) Could xwax use the 4-channel pcm device directly? Whilst xwax could certainly be developed to do this, I don't think this is a good design. Better to leave it as the responsibility of the audio subsystem (in this case ALSA), and put any development into ensuring that works fully. Mark |