
I am working on some code which captures from one PCM device and plays to another, based off of the latency.c found in alsa-lib. I noticed something strange:
The code works if I set the capture device to hw:1,0 and playback device to hw:0,0. However, if I change the playback device to "default:0", the snd_pcm_link() call fails with -ENOSYS (error 38).
If I dump out the properties, I can see that the the default device *is* mapped to device 0,0, so it's not clear why the behaviour would differ.
My goal was just to playback to whatever the default device is, and I was under the impression that default:0 should be equivalent to "hw:0,0". Can anyone offer any brief explanation as to why the snd_pcm_link() call would fail?
Thanks in advance,
Devin