How do I restore missing asound files used in ALSA for 12.04

Asked by Robin

I use ALSA not pulse. I had it working the way I want and then started the computer after an update and every time I try to play a video there is a report that the drivers are missing. This is an example:

Audio output failed:
The audio device "sysdefault:CARD=Intel" could not be used:
No such device.

Previously cat /proc/asound/modules showed three cards now it shows nothing.

These are the files that seem to have lost all their content:
pcm ----no soundcards----
modules ---empty
hwdep ---empty
cards ---no soundcards ----

Without doing a system re-install is there a way of rebuilding the proc/asound files so that the soundcard entries are restored?

Question information

Language:
English Edit question
Status:
Solved
For:
Ubuntu alsa-driver Edit question
Assignee:
No assignee Edit question
Solved by:
Robin
Solved:
Last query:
Last reply:

This question was reopened

Revision history for this message
N1ck 7h0m4d4k15 (nicktux) said :
#1

Hi ,

please open a terminal and execute bellow command

wget -O alsa-info.sh http://www.alsa-project.org/alsa-info.sh && bash alsa-info.sh --upload

Then give back here the link .

Thanks

Revision history for this message
Robin (r1579) said :
#2

The files saved to my home directory but did not upload anywhere so I have put it on mediafire at the following address:

http://www.mediafire.com/?vfgs82klwkg937s

Revision history for this message
N1ck 7h0m4d4k15 (nicktux) said :
#3

You uploaded the wrong file. You uploaded the script.

Try to run again the command. I just copied-pasted from here to my terminal and worked as it should.

Just copy-paste the ALL line from here to your terminal.

Thanks

Revision history for this message
Robin (r1579) said :
#4
Revision history for this message
N1ck 7h0m4d4k15 (nicktux) said :
#5

Hi ,

I think you have some mistakes in your config files.

Give here the results of

cat /etc/modprobe.d/alsa-base.conf

ls /etc/modprobe.d/

Thanks

Revision history for this message
Robin (r1579) said :
#6

robins@robins1-EP35-DS3L:~$ cat /etc/modprobe.d/alsa-base.conf
# autoloader aliases
install sound-slot-0 /sbin/modprobe snd-card-0
install sound-slot-1 /sbin/modprobe snd-card-1
install sound-slot-2 /sbin/modprobe snd-card-2
install sound-slot-3 /sbin/modprobe snd-card-3
install sound-slot-4 /sbin/modprobe snd-card-4
install sound-slot-5 /sbin/modprobe snd-card-5
install sound-slot-6 /sbin/modprobe snd-card-6
install sound-slot-7 /sbin/modprobe snd-card-7

# Cause optional modules to be loaded above generic modules
install snd /sbin/modprobe --ignore-install snd $CMDLINE_OPTS && { /sbin/modprobe --quiet --use-blacklist snd-ioctl32 ; /sbin/modprobe --quiet --use-blacklist snd-seq ; }
#
# Workaround at bug #499695 (reverted in Ubuntu see LP #319505)
install snd-pcm /sbin/modprobe --ignore-install snd-pcm $CMDLINE_OPTS && { /sbin/modprobe --quiet --use-blacklist snd-pcm-oss ; : ; }
install snd-mixer /sbin/modprobe --ignore-install snd-mixer $CMDLINE_OPTS && { /sbin/modprobe --quiet --use-blacklist snd-mixer-oss ; : ; }
install snd-seq /sbin/modprobe --ignore-install snd-seq $CMDLINE_OPTS && { /sbin/modprobe --quiet --use-blacklist snd-seq-midi ; /sbin/modprobe --quiet --use-blacklist snd-seq-oss ; : ; }
#
install snd-rawmidi /sbin/modprobe --ignore-install snd-rawmidi $CMDLINE_OPTS && { /sbin/modprobe --quiet --use-blacklist snd-seq-midi ; : ; }
# Cause optional modules to be loaded above sound card driver modules
install snd-emu10k1 /sbin/modprobe --ignore-install snd-emu10k1 $CMDLINE_OPTS && { /sbin/modprobe --quiet --use-blacklist snd-emu10k1-synth ; }
install snd-via82xx /sbin/modprobe --ignore-install snd-via82xx $CMDLINE_OPTS && { /sbin/modprobe --quiet --use-blacklist snd-seq ; }

# Load saa7134-alsa instead of saa7134 (which gets dragged in by it anyway)
install saa7134 /sbin/modprobe --ignore-install saa7134 $CMDLINE_OPTS && { /sbin/modprobe --quiet --use-blacklist saa7134-alsa ; : ; }
# Prevent abnormal drivers from grabbing index 0
options bt87x index=-2
options cx88_alsa index=-2
options saa7134-alsa index=-2
options snd-atiixp-modem index=-2
options snd-intel8x0m index=-2
options snd-via82xx-modem index=-2
options snd-usb-audio index=-2
options snd-usb-caiaq index=-2
options snd-usb-ua101 index=-2
options snd-usb-us122l index=-2
options snd-usb-usx2y index=-2
# Ubuntu #62691, enable MPU for snd-cmipci
options snd-cmipci mpu_port=0x330 fm_port=0x388
# Keep snd-pcsp from being loaded as first soundcard
options snd-pcsp index=-2
options snd-usb-audio index=-2
#force the cards to be loaded in following order instead of random
options snd_hda_intel index 0
options snd_usb_audio index 1
opnions snd_usb_audio index 2
robins@robins1-EP35-DS3L:~$

ls /etc/modprobe.d/
alsa-base.conf blacklist-framebuffer.conf blacklist-watchdog.conf
alsa-base.conf~ blacklist-local.conf dkms.conf
blacklist-ath_pci.conf blacklist-modem.conf vmwgfx-fbdev.conf
blacklist.conf blacklist-oss.conf
blacklist-firewire.conf blacklist-rare-network.conf
robins@robins1-EP35-DS3L:~$

Revision history for this message
N1ck 7h0m4d4k15 (nicktux) said :
#7

Hi ,

the 3 last lines are wrong. An equal is missing between index and the number. Also last command has a misspell "opnions" . Correct is "options" , with "t".

So correct them if you want , or delete them completely.
We will attempt to correct them now.

Run bellow commands in terminal. There are 3 commands. If (1) or (2) or (3) appeared like a 2 lines each , copy-paste both lines as one in terminal.

1) sudo sed -i 's/options snd_hda_intel index 0/options snd_hda_intel index=0/g' /etc/modprobe.d/alsa-base.conf

2) sudo sed -i 's/options snd_usb_audio index 1/options snd_usb_audio index=1/g' /etc/modprobe.d/alsa-base.conf

3) sudo sed -i 's/opnions snd_usb_audio index=2/options snd_usb_audio index=2/g' /etc/modprobe.d/alsa-base.conf

COPY-PASTE the commands one at time , from here to the terminal.

Reboot and see if sound fixed.

Thanks

Revision history for this message
Robin (r1579) said :
#8

Unfortunately the changes made no difference.

Audio output failed:
The audio device "sysdefault:CARD=Intel" could not be used:
No such device.

This is taken from my original posting:

Previously cat /proc/asound/modules showed three cards now it shows nothing.

"These are the files that seem to have lost all their content:
pcm ----no soundcards----
modules ---empty
hwdep ---empty
cards ---no soundcards ----"

Is the explanation that the existence of the /proc/asound with the files cards, devices, pcm and modules all without content over riding the default settings that you have corrected? As the files in there have lost their settings Alsa is not looking further and is throwing out an error message. Until this problem arose some of those files had active content and Alsa sound was working in the way I wanted. Should the asound directory be deleted? Would that help?

Robin

Revision history for this message
N1ck 7h0m4d4k15 (nicktux) said :
#9

If you see in alsa script results (you posted previews) you will see that you have the driver. Alsa is there.

For some reason (my opinion is config files) it cannot load the correct modules.

Lets remove completely the last 3 lines from alsa-base.conf

Open the file

gksudo gedit /etc/modprobe.d/alsa-base.conf

Go to the end (down) and remove ONLY the last 3 lines

options snd_hda_intel index=0
options snd_usb_audio index=1
options snd_usb_audio index=2

Save the document and Reboot your PC.

Then give the results of

cat /etc/modprobe.d/alsa-base.conf

cat /etc/modprobe.d/blacklist.conf

Thanks

Revision history for this message
Robin (r1579) said :
#10

Thank you. The sound came back with the deletions of the three lines. I had put them in because I was finding that the sound devices were being allocated on a random basis and I could not be sure the default card remained the same between boots.

Will random device selection as default come back again or is there something that is laying down the order of each card?

# Prevent abnormal drivers from grabbing index 0
options bt87x index=-2
options cx88_alsa index=-2
options saa7134-alsa index=-2
options snd-atiixp-modem index=-2
options snd-intel8x0m index=-2
options snd-via82xx-modem index=-2
options snd-usb-audio index=-2
options snd-usb-caiaq index=-2
options snd-usb-ua101 index=-2
options snd-usb-us122l index=-2
options snd-usb-usx2y index=-2
# Ubuntu #62691, enable MPU for snd-cmipci
options snd-cmipci mpu_port=0x330 fm_port=0x388
# Keep snd-pcsp from being loaded as first soundcard
options snd-pcsp index=-2
options snd-usb-audio index=-2
#force the cards to be loaded in following order instead of random
#options snd_hda_intel index 0
#options snd_usb_audio index 1
#opnions snd_usb_audio index 2
robins@robins1-EP35-DS3L:~$

robins@robins1-EP35-DS3L:~$ cat /etc/modprobe.d/blacklist.conf
# This file lists those modules which we don't want to be loaded by
# alias expansion, usually so some other driver will be loaded for the
# device instead.

# evbug is a debug tool that should be loaded explicitly
blacklist evbug

# these drivers are very simple, the HID drivers are usually preferred
blacklist usbmouse
blacklist usbkbd

# replaced by e100
blacklist eepro100

# replaced by tulip
blacklist de4x5

# causes no end of confusion by creating unexpected network interfaces
blacklist eth1394

# snd_intel8x0m can interfere with snd_intel8x0, doesn't seem to support much
# hardware on its own (Ubuntu bug #2011, #6810)
blacklist snd_intel8x0m

# Conflicts with dvb driver (which is better for handling this device)
blacklist snd_aw2

# causes failure to suspend on HP compaq nc6000 (Ubuntu: #10306)
blacklist i2c_i801

# replaced by p54pci
blacklist prism54

# replaced by b43 and ssb.
blacklist bcm43xx

# most apps now use garmin usb driver directly (Ubuntu: #114565)
blacklist garmin_gps

# replaced by asus-laptop (Ubuntu: #184721)
blacklist asus_acpi

# low-quality, just noise when being used for sound playback, causes
# hangs at desktop session start (Ubuntu: #246969)
blacklist snd_pcsp

# ugly and loud noise, getting on everyone's nerves; this should be done by a
# nice pulseaudio bing (Ubuntu: #77010)
blacklist pcspkr

# EDAC driver for amd76x clashes with the agp driver preventing the aperture
# from being initialised (Ubuntu: #297750). Blacklist so that the driver
# continues to build and is installable for the few cases where its
# really needed.
blacklist amd76x_edac
robins@robins1-EP35-DS3L:~$

Revision history for this message
N1ck 7h0m4d4k15 (nicktux) said :
#11

You added those lines , I assume for a problem with selection of sound card (?)

Those lines are STILL wrong. You did not change them , as I told you in answer #7 OR you executed the commands (1,2,3) wrong.
In answer #7 , two lines = ONE command.

Now you commented the lines , (you did not delete them) , all these in Linux have a matter. (delete means Delete, Commented out is a different thing cuz in future you or a new config file can UN-commend the lines )

The order of devices are already pre-configured from alsa. You don't need to configure anything in Ubuntu. ONLY if you have a problem and eg: Headphones work and external speakers No.

I will suggest to delete those lines completely IF you have NO problem and mark the question as Solved.

BUT

IF you have a problem with default device in each boot , then FIX the lines cuz ARE WRONG.

Open again the file

gksudo gedit /etc/modprobe.d/alsa-base.conf

and make the last 3 lines like this

options snd_hda_intel index=0
options snd_usb_audio index=1
options snd_usb_audio index=2

Then save the file and reboot OR
give this command

sudo alsa force-reload

Thanks

Revision history for this message
Robin (r1579) said :
#12

Thank you for your patience and support it is now working. I decided to force the order by correcting the errors in the last 3 lines of the file and it is working well.

Revision history for this message
Robin (r1579) said :
#13

I have noticed that the default sound is mono not stereo. Is there anything you can do about recovering the stereo setting?

Revision history for this message
N1ck 7h0m4d4k15 (nicktux) said :
#14

Something else we both missed , is that this line

options snd_usb_audio index

exists 3 (three) times in your alsa-base.conf

3 same lines with different values cannot exist in same config file. So you must delete the two lines you added.

Take a look carefully in /etc/modprobe.d/alsa-base.conf (answer #10)

and delete the last two lines

options snd_usb_audio index=1
options snd_usb_audio index=2

When you remove the lines , not need for reboot

just run this command

sudo alsa force-reload

Thanks

Revision history for this message
Robin (r1579) said :
#15

Much to my surprise when I removed the 2 last lines I could not hear any sound in my headphones (non usb). Putting the second line back, still did not bring back the sound, with the 3rd: sound appears.

At the moment I can hear the sound but it is not stereo. Could you please suggest a way bringing that back?

Here is the /etc/modprobe.d/alsa-base.conf

# autoloader aliases
install sound-slot-0 /sbin/modprobe snd-card-0
install sound-slot-1 /sbin/modprobe snd-card-1
install sound-slot-2 /sbin/modprobe snd-card-2
install sound-slot-3 /sbin/modprobe snd-card-3
install sound-slot-4 /sbin/modprobe snd-card-4
install sound-slot-5 /sbin/modprobe snd-card-5
install sound-slot-6 /sbin/modprobe snd-card-6
install sound-slot-7 /sbin/modprobe snd-card-7

# Cause optional modules to be loaded above generic modules
install snd /sbin/modprobe --ignore-install snd $CMDLINE_OPTS && { /sbin/modprobe --quiet --use-blacklist snd-ioctl32 ; /sbin/modprobe --quiet --use-blacklist snd-seq ; }
#
# Workaround at bug #499695 (reverted in Ubuntu see LP #319505)
install snd-pcm /sbin/modprobe --ignore-install snd-pcm $CMDLINE_OPTS && { /sbin/modprobe --quiet --use-blacklist snd-pcm-oss ; : ; }
install snd-mixer /sbin/modprobe --ignore-install snd-mixer $CMDLINE_OPTS && { /sbin/modprobe --quiet --use-blacklist snd-mixer-oss ; : ; }
install snd-seq /sbin/modprobe --ignore-install snd-seq $CMDLINE_OPTS && { /sbin/modprobe --quiet --use-blacklist snd-seq-midi ; /sbin/modprobe --quiet --use-blacklist snd-seq-oss ; : ; }
#
install snd-rawmidi /sbin/modprobe --ignore-install snd-rawmidi $CMDLINE_OPTS && { /sbin/modprobe --quiet --use-blacklist snd-seq-midi ; : ; }
# Cause optional modules to be loaded above sound card driver modules
install snd-emu10k1 /sbin/modprobe --ignore-install snd-emu10k1 $CMDLINE_OPTS && { /sbin/modprobe --quiet --use-blacklist snd-emu10k1-synth ; }
install snd-via82xx /sbin/modprobe --ignore-install snd-via82xx $CMDLINE_OPTS && { /sbin/modprobe --quiet --use-blacklist snd-seq ; }

# Load saa7134-alsa instead of saa7134 (which gets dragged in by it anyway)
install saa7134 /sbin/modprobe --ignore-install saa7134 $CMDLINE_OPTS && { /sbin/modprobe --quiet --use-blacklist saa7134-alsa ; : ; }
# Prevent abnormal drivers from grabbing index 0
options bt87x index=-2
options cx88_alsa index=-2
options saa7134-alsa index=-2
options snd-atiixp-modem index=-2
options snd-intel8x0m index=-2
options snd-via82xx-modem index=-2
options snd-usb-audio index=-2
options snd-usb-caiaq index=-2
options snd-usb-ua101 index=-2
options snd-usb-us122l index=-2
options snd-usb-usx2y index=-2
# Ubuntu #62691, enable MPU for snd-cmipci
options snd-cmipci mpu_port=0x330 fm_port=0x388
# Keep snd-pcsp from being loaded as first soundcard
options snd-pcsp index=-2
options snd-usb-audio index=-2
#force the cards to be loaded in following order instead of random
options snd_hda_intel index=0
options snd_usb_audio index=1
options snd_usb_audio index=2

In order to stop the random switching of the cards I had originally followed the advice at

http://ubuntuforums.org/showthread.php?t=205449

"Configuring default soundcards / stopping multiple soundcards from switching

Note: This section assumes that you have installed each soundcard properly.

    In a shell, type
    Code:

    cat /proc/asound/modules

    This will give the the name and index of each soundcard you have currently. Make a note of the names, and decide which one you want to be the default card.

    Now type
    Code:

    sudo nano /etc/modprobe.d/alsa-base

    At the very end of the file, add the following (assuming you have 3 cards with module names A, B and C and you want to have them in the order CAB)

Code:

options snd-C index=0
options snd-A index=1
options snd-B index=2"

Revision history for this message
N1ck 7h0m4d4k15 (nicktux) said :
#16

You said (in the description of the problem) that you have no pulseaudio
(?)

If I understood correctly , I think you have to install it .

sudo apt-get install pulseaudio pulseaudio-module-x11

Thanks

Revision history for this message
Robin (r1579) said :
#17

No, I do not use pulseaudio. I prefer to revert to alsa. I was not saying I want pulseaudio. I went out of my way to remove it.

Any thoughts on how I can switch on the stereo in the 0 card (hda intel)?

Revision history for this message
Robin (r1579) said :
#18

I am still not hearing the stereo in playback. Are there any other adjustments I can make so that both speakers are sending out sound?

Revision history for this message
Robin (r1579) said :
#19

Alsa mixer for device 0 shows that the headphone is stereo ie 81<>81 and the master 44

I have just plugged the jack directly into the board's output and it is stereo. So it is a problem with the external speaker system.

Thank you again for your help