1

My Dell XPS 13 9350 laptop came with Ubuntu 14.04 installed and I had never had sound issues. Since an upgrade to Ubuntu 18.04 the laptop has produced no sound so I've tried applying various fixes found online, possibly messing up more things.

  • In the graphical interface, in the "Settings > Sound > Output" the only available device is Dummy Output. The same Dummy Ouput name appears when I change volume through F-keys.

  • pulseaudio -k && sudo alsa force-reload unloads ALSA sound drivers then reloads them but this does not restore sound.

  • pacmd list-cards gives 0 card(s) available.

About ALSA

On the other hand, aplay -l finds a sound card whose number matches the "Audio controller" RealTek ALC3246 listed in the BIOS:

$ aplay -l
**** List of PLAYBACK Hardware Devices ****
card 0: PCH [HDA Intel PCH], device 0: ALC3246 Analog [ALC3246 Analog]
  Subdevices: 1/1
  Subdevice #0: subdevice #0

$ grep "Codec:" /proc/asound/card*/codec*
Codec: Realtek ALC3246

This is consistent with the behaviour of alsamixer, which shows Realtex ALC3246 and a bunch of gauges I can vary, with no effect.

Since all seems normal for ALSA, I tried bypassing pulseaudio. First, speaker-test does not produce any sound. Next I tried

aplay -D sysdefault ~/Downloads/file_example_WAV_1MG.wav

without success. With the -vvv option I can see an indicator bar showing the volume varying along the music; still no sound. Repeating the experiment with pulseaudio uninstalled (sudo apt-get purge pulseaudio) does not help.

lsof, ps and lsmod

lsof /dev/snd/* gives no output at all (but as per ls the directory /dev/snd contains: by-path controlC0 hwC0D0 pcmC0D0c pcmC0D0p seq timer).

$ ps -ef | grep pulse
gdm       2168  1827  0 19:53 ?        00:00:00 /usr/bin/pulseaudio --daemonize=no
bruno     2555     1  0 19:54 ?        00:00:00 /usr/bin/pulseaudio --start --log-target=syslog
bruno     4106  3923  0 20:11 pts/2    00:00:00 grep --color=auto pulse

$ lsmod | grep snd
snd_soc_skl           106496  0
snd_soc_hdac_hda       24576  1 snd_soc_skl
snd_hda_ext_core       28672  2 snd_soc_hdac_hda,snd_soc_skl
snd_soc_skl_ipc        65536  1 snd_soc_skl
snd_soc_sst_ipc        20480  1 snd_soc_skl_ipc
snd_soc_sst_dsp        36864  1 snd_soc_skl_ipc
snd_soc_acpi_intel_match    28672  1 snd_soc_skl
snd_soc_acpi           16384  2 snd_soc_acpi_intel_match,snd_soc_skl
snd_hda_codec_realtek   114688  1
snd_soc_core          233472  2 snd_soc_hdac_hda,snd_soc_skl
snd_hda_codec_generic    77824  1 snd_hda_codec_realtek
snd_compress           24576  1 snd_soc_core
ac97_bus               16384  1 snd_soc_core
snd_pcm_dmaengine      16384  1 snd_soc_core
snd_hda_intel          49152  0
snd_hda_codec         135168  4 snd_hda_codec_generic,snd_hda_intel,snd_hda_codec_realtek,snd_soc_hdac_hda
snd_hda_core           86016  7 snd_hda_codec_generic,snd_hda_intel,snd_hda_ext_core,snd_hda_codec,snd_hda_codec_realtek,snd_soc_hdac_hda,snd_soc_skl
snd_hwdep              20480  1 snd_hda_codec
snd_pcm               102400  7 snd_hda_intel,snd_hda_ext_core,snd_hda_codec,snd_soc_core,snd_soc_skl,snd_hda_core,snd_pcm_dmaengine
ledtrig_audio          16384  3 snd_hda_codec_generic,snd_hda_codec_realtek,dell_laptop
snd_seq_midi           20480  0
snd_seq_midi_event     16384  1 snd_seq_midi
snd_rawmidi            36864  1 snd_seq_midi
snd_seq                69632  2 snd_seq_midi,snd_seq_midi_event
snd_seq_device         16384  3 snd_seq,snd_seq_midi,snd_rawmidi
snd_timer              36864  2 snd_seq,snd_pcm
snd                    86016  12 snd_hda_codec_generic,snd_seq,snd_seq_device,snd_hwdep,snd_hda_intel,snd_hda_codec,snd_hda_codec_realtek,snd_timer,snd_compress,snd_soc_core,snd_pcm,snd_rawmidi
soundcore              16384  1 snd

pulseaudio -v

I just killed and reran pulseaudio verbosely with pulseaudio -k ; pulseaudio -v and some messages seem interesting.

I: [pulseaudio] (alsa-lib)utils.c: could not open configuration file /usr/share/alsa/ucm/HDA Intel PCH at 0xdc328000 irq 133/HDA Intel PCH at 0xdc328000 irq 133.conf
I: [pulseaudio] (alsa-lib)parser.c: error: could not parse configuration for card HDA Intel PCH at 0xdc328000 irq 133
I: [pulseaudio] (alsa-lib)parser.c: uknown master file field pcm
I: [pulseaudio] (alsa-lib)parser.c: uknown master file field HDA-Intel
I: [pulseaudio] alsa-ucm.c: UCM available for card HDA Intel PCH
E: [pulseaudio] alsa-ucm.c: No UCM verb is valid for HDA Intel PCH
E: [pulseaudio] module-alsa-card.c: Failed to find a working profile.
E: [pulseaudio] module.c: Failed to load module "module-alsa-card" (argument: "device_id="0" name="pci-0000_00_1f.3" card_name="alsa_card.pci-0000_00_1f.3" namereg_fail=false tsched=yes fixed_latency_range=no ignore_dB=no deferred_volume=yes use_ucm=yes card_properties="module-udev-detect.discovered=1""): initialization failed.
I: [pulseaudio] module-udev-detect.c: Card /devices/pci0000:00/0000:00:1f.3/sound/card0 (alsa_card.pci-0000_00_1f.3) failed to load module.
I: [pulseaudio] module-udev-detect.c: Found 1 cards.
  • Please show lsof /dev/snd/* and lsmod | grep snd and almost forgot ps -ef | grep pulse – nobody Oct 14 '19 at 16:23
  • Thank you @nobody; I've added the outputs to the bottom of my question, together with potentially interesting pulseaudio errors (lines starting with E:). – Bruno Le Floch Oct 14 '19 at 18:20
0

Somewhat underwhelmingly here are the steps that completely fixed sound for me, with two cold reboots (shutdown + turn the computer back on manually) between every step. Probably some of the restarts are not useful.

  • Upgrade the Linux kernel from version 4.15(?) to version 5.0.0

  • Uninstall ALSA and pulseaudio (and all related packages I could find) through:

    sudo apt-get --purge remove linux-sound-base alsa-base alsa-utils pulseaudio pavucontrol pulseaudio-utils
    
  • Reinstall these packages:

    sudo apt-get install linux-sound-base alsa-base alsa-utils pulseaudio pavucontrol pulseaudio-utils
    

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.