8

I have a USB audio device, configured as the default device at card 0.

I have a 3rd party application that is attempting to play wav files, which fail with the following:

Playing WAVE 'sound.wav' : Signed 16 bit Little Endian, Rate 44100 Hz, Mono
aplay: set_params:1239: Channels count non available

If I try to manually play the very same wav, I get no error but also no sound:

aplay sound.wav
Playing WAVE 'sound.wav' : Signed 16 bit Little Endian, Rate 44100 Hz, Mono

If I specify device plughw:0,0, the sound plays correctly!

aplay -D plughw:0,0 sound.wav
Playing WAVE 'sound.wav' : Signed 16 bit Little Endian, Rate 44100 Hz, Mono

I have tried various attemps at configuring ~/.asoundrc to set plughw:0,0 as the default, without success.

How can I apply the -D plughw:0,0 be default to all sound playback?

2
  • 1
    That 3rd-party app calls aplay, and uses some wrong parameter(s). Can you configure it somehow? Otherwise, you have to find out what happens there; try replacing /usr/bin/aplay with a script that logs its parameters.
    – CL.
    Commented Apr 21, 2017 at 6:32
  • 1
    Please explain in detail what 3rd party application you use, what ALSA device it uses, and if you can configure it to use other devices. Without any ~/.asoundrc, the default device already is equivalent to plughw + dmix, so there's probably nothing you can do in your ~/.asoundrc alone.
    – dirkt
    Commented Apr 21, 2017 at 9:12

1 Answer 1

10

Backup your ~/.asoundrc - if you have one - and add the following, to a new ~/.asoundrc:

pcm.!default { 
 type plug 
 slave { 
 pcm "hw:0,0" 
 } 
} 

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .