[alsa-devel] Different codecs for playback and capture?

Ricard Wanderlof ricard.wanderlof at axis.com
Wed Jun 3 13:06:36 CEST 2015


Hi,

I'm developing a machine driver for a system where we have two different 
codecs for input and output, connected to the same I2S interface. Normally 
a machine driver specifies which codec the I2S interface is connected to, 
but in this case there should really be two different ones, one for record 
and one for playback. I'm working on how to put this together, and just 
thought I'd try and get some input before going too far down the wrong 
track. The options I see are:

1. Specify two different codecs in the machine driver. Since one can 
specify several dai_links this would seem to be doable, however, I'm not 
sure ALSA can handle two codecs sharing a single CPU DAI in this way?

2. Use two separate machine drivers, one for each codec? Again, sharing a 
single CPU DAI would seem to be an issue here?

3. Write a special codec driver that is a merge between the two codecs, 
one for input and one for output. Seems like a bit of a hack, but should 
be possible.

Any spontaneous thoughts?

/Ricard
-- 
Ricard Wolf Wanderlöf                           ricardw(at)axis.com
Axis Communications AB, Lund, Sweden            www.axis.com
Phone +46 46 272 2016                           Fax +46 46 13 61 30


More information about the Alsa-devel mailing list