Hallo,
Tim Blechmann hat gesagt: // Tim Blechmann wrote:
i'm trying to set up my pd 0.37 for my maudio quattro. i used to define a quattro device with 4 channels in an .asoundrc file, but pd doesn't want to start with the -alsadev flag.
in the audio settings dialog, i can select the USB Audio Quattro, but both hardware and plugin mode only use 2 channels (even if i set 4 channels). any ideas?
using the oss layer, i can use either the first or the second 2 channels, but when using multiple devices, it won't work, too...
any clues?
On my laptop I had the same problem but with Pd 0.36. I'm now using the Jack interface there.
The old -alsadev flag is obsolete now, -audiodev should replace it, but it only accepts device numbers, which assumes that devices can be numbered. With ALSA, this is not the case: the user can define any name for any kind of audio-pcm. No one can guess what's in a user's asoundrc.
The only real solution to this would be to enable the (ALSA-)user to
select devices by a device string. Then this string should be used in
snd_pcm_open. Pd doesn't do this currently. It assumes:
/* device names are hw:0, plughw:0, hw:1, and so on. */
[from: s_alsa_audio.c]
For example: In the s_audio_alsa.c code, there is a function "alsa_getdevs" which looks for ALSA devices "by card":
/* For each hardware card found, we list two devices, the "hard" and
"plug" one. The card scan is derived from portaudio code. */
[from: s_alsa_audio.c]
The problem is, that the Quatto asoundrc definitions on alsa-project.org, that most people use, don't correspond to this schema: they are arbitrary names.
I don't know, how Portaudio copes with this. The comment above doesn't look good. ;) As Pd did the switch to Portaudio, which is a good thing, IMO, this area might be worth investigating.
Frank Barknecht _ ______footils.org__