[alsa-devel] question on hardware

Harsha, Priya priya.harsha at intel.com
Thu Apr 9 09:56:50 CEST 2009

The issue that I am facing with creating a snd_kcontrol is that I am not able to bind that value to a stream. Say I start the application and set the type of that control to voice and open another instance of that application and set the type to audio. There might be a clash and I might get the wrong stream type to the driver. Also, the stream ids passed cannot also be guaranteed to reach the right stream.

>-----Original Message-----
>From: alsa-devel-bounces at alsa-project.org [mailto:alsa-devel-bounces at alsa-project.org] On Behalf Of Harsha,
>Sent: Thursday, April 09, 2009 1:07 PM
>To: alsa-devel at alsa-project.org
>Cc: Takashi Iwai; David Dillow; Lee Revell; Clemens Ladisch
>Subject: Re: [alsa-devel] question on hardware
>Hi ,
>I need more help here. I tried looking at the .conf file but I have another requirement here.
>Let me put my requirements here. Please suggest me ways to get this done
>1. When I get a .prepare call in my driver, I need to know the stream type
>2. When I return from that call, I need to send to the user the locally allocated stream id
>This is specific to the sound card/ DSP I am developing the driver for. The application is also proprietary.  Is this
>possible at all? Please suggest me ways to do the same.
>>-----Original Message-----
>>From: David Dillow [mailto:dave at thedillows.org]
>>Sent: Tuesday, December 09, 2008 6:14 PM
>>To: Harsha, Priya
>>Cc: Clemens Ladisch; alsa-devel at alsa-project.org; Lee Revell
>>Subject: Re: [alsa-devel] question on hardware mixing
>>On Tue, 2008-12-09 at 14:25 +0530, Harsha, Priya wrote:
>>> If I define mixer controls to switch between each substream, I would
>>> not be able to handle multiple streams at time....
>>Check into the ALSA configuration file syntax -- there are number of
>>things you can do there, like define a 'voice' device that uses hooks to
>>set a control setting (snd_kcontrol) when you open a PCM. You can use
>>that control setting to let your driver know if the PCM channel is being
>>used for voice or audio traffic.
>>Look at how the EMU10K1 handles surround sound audio
>>in /etc/alsa/cards/EMU10K1.conf
>>I started to do some similar things for sis7019 surround sound, but
>>they've never made it out of my office due to lack of time/testing HW.
>>> I had asked this in my earlier follow up email as well - can I use
>>> snd_pcm_t->private_data to communicate if it's a voice or audio
>>> I understand this private_data gets copied to substream->private data
>>> which will reach the driver...
>>> Am I right here?
>>I can't answer this specifically, but I believe the answer is in the
>>name -- 'private'. This is for the ALSA system to use, you can hang your
>>own data off a substream using snd_pcm_substream_chip(). Besides, how do
>>you plan on setting it in the snd_pcm_t type?
>>I think that if you set up some controls, use the config file language,
>>and have your audio apps open a 'voice' device, you can get where you
>Alsa-devel mailing list
>Alsa-devel at alsa-project.org

More information about the Alsa-devel mailing list