You are not logged in.

#1 2020-10-12 14:40:48

Monoclard
Member
Registered: 2020-10-12
Posts: 7

[Solved] ALSA: aplay cannot play .wav file - no sound

Hello everyone,

I have a fresh install of archlinux but cannot manage to make my ASUS X206HA outputs a sound.

Setting

/proc/asound contains the following:

lrwxrwxrwx 1 root root 5 Oct 12 13:30 Audio -> card1
lrwxrwxrwx 1 root root 5 Oct 12 13:30 bytchtcx2072x -> card0
dr-xr-xr-x 6 root root 0 Oct 12 13:30 card0
dr-xr-xr-x 6 root root 0 Oct 12 13:30 card1
-r--r--r-- 1 root root 0 Oct 12 13:30 cards
-r--r--r-- 1 root root 0 Oct 12 13:30 devices
-r--r--r-- 1 root root 0 Oct 12 13:30 modules
dr-xr-xr-x 4 root root 0 Oct 12 13:30 oss
-r--r--r-- 1 root root 0 Oct 12 13:30 pcm
dr-xr-xr-x 2 root root 0 Oct 12 13:30 seq
-r--r--r-- 1 root root 0 Oct 12 13:30 timers
-r--r--r-- 1 root root 0 Oct 12 13:30 version

The command aplay -l outputs:

**** List of PLAYBACK Hardware Devices ****
card 0: bytchtcx2072x [bytcht-cx2072x], device 0: Audio (*) []
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 0: bytchtcx2072x [bytcht-cx2072x], device 1: Deep-Buffer Audio (*) []
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 1: Audio [Intel HDMI/DP LPE Audio], device 0: HdmiLpeAudio [Intel HDMI/DP LPE Audi]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 1: Audio [Intel HDMI/DP LPE Audio], device 1: HdmiLpeAudio [Intel HDMI/DP LPE Audi]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 1: Audio [Intel HDMI/DP LPE Audio], device 2: HdmiLpeAudio [Intel HDMI/DP LPE Audi]
  Subdevices: 1/1
  Subdevice #0: subdevice #0

When running alsamixer in order to unmute and set the card correctly I am given the choice between:

bytcht-cx2072x
Intel HDMI/DP LPE Audio

However, when running alsamixer, I can read for Intel HDMI/DP LPE Audio that This sound device does not have any controls

Following the wiki page about ALSA, I tried the following:

$ amixer sset Master unmute
$ amixer sset Speaker unmute

but none of them worked and output the same error: amixer: Unable to find simple control 'Master',0
Therefore, I ran amixer scontrols and found a lot more than I can understand in the output. One of the line being Simple mixer control 'Ext Spk',0, I ran amixer sset "Ext Spk" unmute which "worked" and output:

Simple mixer control 'Ext Spk',0
  Capabilities: pswitch pswitch-joined
  Playback channels: Mono
  Mono: Playback [on]

Problem

Despite all of that, I cannot get any sound. Following what I found on https://www.alsa-project.org/wiki/SoundcardTesting , I downloaded a .wav file (that I can read on another computer) and ran:

aplay -vv file.wav

which produces no sound and output the following:

Playing WAVE 'Downloads/07076043.wav' : Signed 16 bit Little Endian, Rate 44100 Hz, Mono
aplay: set_params:1407: Unable to install hw params:
ACCESS:  RW_INTERLEAVED
FORMAT:  S16_LE
SUBFORMAT:  STD
SAMPLE_BITS: 16
FRAME_BITS: 16
CHANNELS: 1
RATE: 44100
PERIOD_TIME: 125000
PERIOD_SIZE: (5512 5513)
PERIOD_BYTES: (11024 11026)
PERIODS: (3 5)
BUFFER_TIME: 500000
BUFFER_SIZE: 22050
BUFFER_BYTES: 44100
TICK_TIME: 0

I also tried to play a music video on a webpage without success. As a side information, I did not start any alsa-restore.service nor alsa-state.service as I am unsure of the necessity of it.
Any help on this topic is welcomed, thanks in advance.

Last edited by Monoclard (2020-10-15 07:47:16)

Offline

#2 2020-10-12 15:18:45

V1del
Forum Moderator
Registered: 2012-10-16
Posts: 24,449

Re: [Solved] ALSA: aplay cannot play .wav file - no sound

Try playing back to the other detected output

aplay -Dhw:0,1 test.wav

And make sure alsa-ucm-conf is installed. This is an UCM card and they generally need profiles that are in the alsa-ucm-conf package to be properly accessed.

Offline

#3 2020-10-12 15:39:15

Monoclard
Member
Registered: 2020-10-12
Posts: 7

Re: [Solved] ALSA: aplay cannot play .wav file - no sound

Indeed, the package alsa-ucm-conf was not installed.

After installing the package, I try again what I already did without any success.
Then I ran:

aplay -Dhw:0,1 test.wav

which outputs no sound and return in stderr:

Playing WAVE 'Downloads/07076043.wav' : Signed 16 bit Little Endian, Rate 44100 Hz, Mono
aplay: set_params:1349: Channels count non available

If I interpret this error correctly, I may have to create a .asoundrc for this command to work?

P.S.: Thanks for your promptness

Offline

#4 2020-10-12 16:11:46

V1del
Forum Moderator
Registered: 2012-10-16
Posts: 24,449

Re: [Solved] ALSA: aplay cannot play .wav file - no sound

No. try

aplay -Dplughw:0,1  test.wav

that should provide conversion between the channels, otherwise use something more flexible like

speaker-test -Dhw:0,1 -c2

The point of providing the hw:x,x device is to completely bypass any asoundrc. We still try to find out whether you even have any device that gives you audio. If you don't get that out of any of the basic devices listed in the aplay -l output you can stop trying to configure because then the issue lies at a deeper layer (e.g. kernel, or in this case as mentioned these UCM configs can be a bit tricky, I don't own any direct device that uses those so my knowledge on how they work is largely theoretical)

FWIW maybe also post

aplay -L

Last edited by V1del (2020-10-12 16:12:50)

Offline

#5 2020-10-12 16:34:20

Monoclard
Member
Registered: 2020-10-12
Posts: 7

Re: [Solved] ALSA: aplay cannot play .wav file - no sound

Ok, thanks you very much for the explanation.

Running

aplay -Dplughw:0,1  test.wav

I got:

Playing WAVE 'Downloads/07076043.wav' : Signed 16 bit Little Endian, Rate 44100 Hz, Mono
aplay: set_params:1407: Unable to install hw params:
ACCESS:  RW_INTERLEAVED
FORMAT:  S16_LE
SUBFORMAT:  STD
SAMPLE_BITS: 16
FRAME_BITS: 16
CHANNELS: 1
RATE: 44100
PERIOD_TIME: 125000
PERIOD_SIZE: (5512 5513)
PERIOD_BYTES: (11024 11026)
PERIODS: (3 5)
BUFFER_TIME: 500000
BUFFER_SIZE: 22050
BUFFER_BYTES: 44100
TICK_TIME: 0

without any sound. And trying

speaker-test -Dhw:0,1 -c2

I got:

speaker-test 1.2.3

Playback device is hw:0,1
Stream parameters are 48000Hz, S16_LE, 2 channels
Using 16 octaves of pink noise
Rate set to 48000Hz (requested 48000Hz)
Buffer size range from 16 to 204800
Period size range from 8 to 102400
Using max buffer size 204800
Periods = 4
Unable to set hw params for playback: Invalid argument
Setting of hwparams failed: Invalid argument

without sound. The line Unable to set hw params for playback: Invalid argument is output in stderr while the rest of the text is output in stdout.

On the ALSA page, one can read sof-firmware and alsa-ucm-conf are required for few newer laptop models (end of 2019/2020). Despite my laptop not being that new would you advise to install sof-firmware?

Offline

#6 2020-10-12 16:36:59

Monoclard
Member
Registered: 2020-10-12
Posts: 7

Re: [Solved] ALSA: aplay cannot play .wav file - no sound

The output of

aplay -L

is:

null
    Discard all samples (playback) or generate zero samples (capture)
default:CARD=bytchtcx2072x
    bytcht-cx2072x, 
    Default Audio Device
sysdefault:CARD=bytchtcx2072x
    bytcht-cx2072x, 
    Default Audio Device
default:CARD=Audio
    Intel HDMI/DP LPE Audio, Intel HDMI/DP LPE Audi
    Default Audio Device
sysdefault:CARD=Audio
    Intel HDMI/DP LPE Audio, Intel HDMI/DP LPE Audi
    Default Audio Device
hdmi:CARD=Audio,DEV=0
    Intel HDMI/DP LPE Audio, Intel HDMI/DP LPE Audi
    HDMI Audio Output
hdmi:CARD=Audio,DEV=1
    Intel HDMI/DP LPE Audio, Intel HDMI/DP LPE Audi
    HDMI Audio Output
hdmi:CARD=Audio,DEV=2
    Intel HDMI/DP LPE Audio, Intel HDMI/DP LPE Audi
    HDMI Audio Output

Offline

#7 2020-10-12 16:45:45

V1del
Forum Moderator
Registered: 2012-10-16
Posts: 24,449

Re: [Solved] ALSA: aplay cannot play .wav file - no sound

You can try but afaik these devices aren't sof firmware. But they might've been adapted in the meantime, what's your

dmesg | grep -E 'snd|sof|soc' 

Offline

#8 2020-10-12 17:05:21

Monoclard
Member
Registered: 2020-10-12
Posts: 7

Re: [Solved] ALSA: aplay cannot play .wav file - no sound

For the record, installing the sof-firmware package hasn't solved the problem.

The output of

dmesg | grep -E 'snd|sof|soc'

is (minus bluetooth and wlan0 thingy that match the pattern):

[    1.230842] PCI-DMA: Using software bounce buffering for IO (SWIOTLB)
[    1.230846] software IO TLB: mapped [mem 0x7311c000-0x7711c000] (64MB)
[    6.603479] bytcht_cx2072x bytcht_cx2072x: snd-soc-dummy-dai <-> media-cpu-dai mapping ok
[    6.604027] bytcht_cx2072x bytcht_cx2072x: snd-soc-dummy-dai <-> deepbuffer-cpu-dai mapping ok

Offline

#9 2020-10-12 18:05:45

euromatlox
Member
Registered: 2017-02-10
Posts: 131

Re: [Solved] ALSA: aplay cannot play .wav file - no sound

Member of audio group ? Possible mute audio key on (laptop) keyboard ?

Comments below linux-cx2072x 5.2_cx2072x-1 tell that it is supported since 5.3 kernel.

Last edited by euromatlox (2020-10-12 18:18:01)

Offline

#10 2020-10-12 18:58:00

Monoclard
Member
Registered: 2020-10-12
Posts: 7

Re: [Solved] ALSA: aplay cannot play .wav file - no sound

The user account (me) is not a member of the audio group since it is written in the ALSA page, section User privileges, that

Usually, local users have permission to play audio and change mixer levels.

To allow remote users to use ALSA, you need to add those users to the audio group, however this is not recommended by default (see note below).

euromatlox wrote:

Possible mute audio key on (laptop) keyboard ?

Despite the fact that there is the possibility of a mute audio key (which I have on my keyboard) I cannot explain the error messages that I got. Maybe you know a way to check if this is the issue?

euromatlox wrote:

Comments below linux-cx2072x 5.2_cx2072x-1 tell that it is supported since 5.3 kernel.

Thanks for the pointer! It is said further in the paragraph that However the alsa-lib package is still missing UCM configuration files to make it work. They are already contributed to the upstream, just not released yet. I tried the procedure that is written in this thread without any success, that is to say, modifying the .cong files in /usr/share/alsa/ucm2/bytchtcx2072x/ (pre-exists in my system after the installation of alsa-lib)
However, it did not work, even after creating by hand a /usr/share/alsa/ucm/bytchtcx2072x/ directory (and files within) as it is said in the aforementioned thread.

P.S.: As a side note, I would like to mention that after replacing the files in /usr/share/alsa/ucm2/bytchtcx2072x/, I wasn't able to use sudo anymore. I had to use the su command to restore the the .conf files in this directory from the backup I previously made. After that, I rebooted and my sudo command was back. How weird.

Last edited by Monoclard (2020-10-12 19:17:53)

Offline

#11 2020-10-15 07:43:54

Monoclard
Member
Registered: 2020-10-12
Posts: 7

Re: [Solved] ALSA: aplay cannot play .wav file - no sound

Hello everyone,

First, thanks to V1del and euromatlox for taking the time to think about this issue with me.
@euromatlox, I guess you were right about the  kernel being up to date since my workaround for the problem I had did not involve to deal with the kernel.

Solution After reading a few things I installed

pulseaudio
pulseaudio-alsa

then ran

pacman -Syyu

and somehow, the sound was fixed on my computer.

I know that pulseaudio is only a middleware but I guessed (from PulseAudio documentation) that installing it was a way to create/update some config files that would help ALSA. In the end, it works.

Offline

Board footer

Powered by FluxBB