On Wed, Apr 13, 2016 at 02:46:39AM +0530, Li, Steve wrote: > Hi, > > I am trying to playback a multi-channel PCM stream, e.g. 5.1. Is there an API for configuring the channel positions? > > I found this API: > int snd_pcm_set_chmap(snd_pcm_t *pcm, const snd_pcm_chmap_t *map); > > typedef struct snd_pcm_chmap { > unsigned int channels; > unsigned int pos[0]; > } snd_pcm_chmap_t; > > But when I call it, it returns -6. Also, calling snd_pcm_get_chmap() return NULL. > > Your help is appreciated. Hi Steve, You can use the chmap controls, only if the sound device has registerd controls for chmap. So you have to check whether the chmap controls are supported by the PCM device. I guess query_chmap can be used for this. Also you can refer test/chmap.c in alsa-lib on how to use those APIs. Using a debug version of alsa library will help you as well to narrow down what is missing. Regards, Subhransu > > Thanks > Steve > > ______________________________________________________________________ > This email has been scanned by the Symantec Email Security.cloud service. > For more information please visit http://www.symanteccloud.com > ______________________________________________________________________ > _______________________________________________ > Alsa-devel mailing list > Alsa-devel@xxxxxxxxxxxxxxxx > http://mailman.alsa-project.org/mailman/listinfo/alsa-devel -- _______________________________________________ Alsa-devel mailing list Alsa-devel@xxxxxxxxxxxxxxxx http://mailman.alsa-project.org/mailman/listinfo/alsa-devel