In my embedded system I have this configuration file in /etc/asound.conf:

pcm_slave.sl2 {
        pcm "hw:0,0"
        rate 48000
        channels 2
        format S16_LE

pcm.rate_convert {
        type plug
        slave sl2

pcm.!default rate_convert

I noticed that since this file was placed in the system, aplay -L and arecord -L cannot list the PCM devices anymore. aplay -l and arecord -l are instead working as expected.

If this file is not placed in there, the list is correctly returned. What is this doing exactly? Why is this preventing aplay and arecord from listing PCM devices?


Make sure the defaults.namehint.showall and defaults.namehint.extended are set to on in the /usr/share/alsa/alsa.conf file.


Expanding on Vladimir's answer, I set this specifically in my /etc/asound.conf file:

defaults.namehint.showall on
defaults.namehint.extended on

Alternatively, add a hint to your custom pcm control device:

pcm.rate_convert {
        # snip
        hint.description "Describe your device here"

I haven't yet found documentation on this, but you can find an example in

  • alsa.conf on your system (I have it in /usr/share/alsa/alsa.conf)
  • alsa.conf in the alsa GitHub repo

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.