On Wed, 17 Jul 2024 14:31:04 +0200, Sergei Steshenko wrote: > > For that matter, which ALSA source files do the parsing ? From my > old/distant memories, ALSA is silent about mistakes made by user when > the user provides various configuration files. So, there must be a way > to resolve the issue of silent ignoring of user mistakes. The parsing of a config is performed at each PCM plugin code. In particular case for chmap, pcm_hw.c, pcm_null.c and pcm_route.c call _snd_pcm_parse_config_chmaps() helper and deal with the parsed data. And, in most cases, alsa-lib rather complains (even verbosely) if something goes wrong in the config file. But the interpretation of each config leaf is done in each PCM plugin code, and some might just ignore the errors. But that's not a general case. > A possible temporary solution would be to "trace" (e.g. by inserting > diagnostic print statements) parsing of provided by user configuration > files, and to implement this one has to know where to insert the > diagnostic print statements, and that's why I'm asking the question. I understand that debugging the config stuff is sometimes messy, yeah. Some more verbose debug output would be helpful, indeed. Takashi > > --Sergei. > > On 7/16/24 18:57, Takashi Iwai wrote: > > On Tue, 16 Jul 2024 08:09:21 +0200, > > Xinhui Zhou wrote: > >> Dear all, > >> > >> I am having a question regarding how to specify 'champ' for a > >> plugin. I do not see any examples of this. I tried many ways to > >> specify but failed. > >> > >> As indicated by the link below, I can specify the MAP as a string > >> array. Can someone provide one example on how exactly this [chmap > >> MAP] can be specified? > >> > >> " > >> pcm.name { > >> type cras > >> [chmap MAP] # Provide channel maps; MAP is a string array > >> } > >> " > >> https://www.alsa-project.org/alsa-doc/alsa-lib/pcm_plugins.html > >> > >> > >> I can something like these, but none of these work for me. > >> > >> chmap LFE > >> chmap "LFE" > >> chmap FR,FL,LFE > >> champ "FR,FL,LFE" > > You need to define a composite array, e.g. pass like > > chmap [ "FL,FR" ] > > instead. > > > > For multiple configurations, you can put more items such as > > chmap [ "FC" "FL,FR" "FL,FR,FC,LFE" ] > > > > > > HTH, > > > > Takashi > > > > > > _______________________________________________ > > Alsa-user mailing list > > Alsa-user@xxxxxxxxxxxxxxxxxxxxx > > https://lists.sourceforge.net/lists/listinfo/alsa-user