Audio driver not initializing after every boot up

openSUSE 11.2 x86_64 (ADM64), KDE4 (everything is up to date) …

As in the Subject, after the machine boots up and I’m logged in, there is no sound using local software (video or audio, such as VLC) or web-based (as in Pandora, youtube, etc).

So I have to bring up Yast → Hardware → Sound, then Delete the current driver, then select “Add” to re-add it … it detects the hardware fine, and sets up the sound driver, and I then get sound. However, when I shut down the machine and eventually fire the machine back up, no sound.

Driver: snd_intel8x0
Controller: CK804 AC’97 (onboard nVidia chipset)
I ran dmesg and saw nothing out of the ordinary.
All appropriate files/entries exist in /etc/modprobe.d/

What can I do so that the driver is loaded at each startup?

I had a response out in alt.os.linux.suse who said the problem went away when they switched to GNOME … so is this possibly a KDE issue? (I haven’t tried restarting and running GNOME versuse KDE).

I reads like something in the boot processes has either disrupted the loading of your audio driver, or something has seized your audio driver and stopped it from working.

First, lets record the problem.

Reboot your PC, and assuming the audio does not work, immediately after the reboot type:

dmesg > dmesg.txt

and then with a text editor open dmesg.txt and post its contents to PasteBin.be , select dump, and then post here the URL you are provided. ONLY do that for a reboot in which sound does NOT work. Not for a functioning case.

Then instead of going to YaST, restart your alsa sound driver by simply typing in a terminal:

su -c 'rcalsasound restart'

and enter root password when prompted for a password, and now test your sound to see if it works

if that works, and if the errors (in dmesg) support the hypothesis that your sound driver did not load properly, we could always put “rcalsasound restart” in your PC’s /etc/init.d/boot.local as the last line.

You may also find my reply in this thread of some help:
alsasound needs “rcalsasound restart” - openSUSE Forums

It looks like the issue is with the VLC media player, and
what is strange, it only has to do with one AVI file.

I checked your post in the other thread shown above.

With all other AVI files, when I run “lsof…”, the
output is typically this:

user@mach:~> lsof /dev/dsp* /dev/audio* /dev/mixer* /dev/snd/*
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
kmix 10040 user 11u CHR 116,7 0t0 37391 /dev/snd/controlC0
vlc 10272 user mem CHR 116,5 37339 /dev/snd/pcmC0D0p
vlc 10272 user 15r CHR 116,2 0t0 37269 /dev/snd/timer
vlc 10272 user 16u CHR 116,5 0t0 37339 /dev/snd/pcmC0D0p
user@mach:~>

BUT, when I play this one particular AVI video
and run the “lsof” command, we see this:

user@mach:~> lsof /dev/dsp* /dev/audio* /dev/mixer* /dev/snd/*
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
kmix 10040 user 11u CHR 116,7 0t0 37391 /dev/snd/controlC0
vlc 10272 user mem CHR 116,5 37339 /dev/snd/pcmC0D0p
vlc 10272 user 14u CHR 116,2 0t0 37269 /dev/snd/timer
vlc 10272 user 15r CHR 116,5 0t0 37339 /dev/snd/pcmC0D0p
xdg-scree 10393 user 14r CHR 116,2 0t0 37269 /dev/snd/timer
xdg-scree 10393 user 15u CHR 116,5 0t0 37339 /dev/snd/pcmC0D0p
xprop 10415 user 14r CHR 116,2 0t0 37269 /dev/snd/timer
xprop 10415 user 15u CHR 116,5 0t0 37339 /dev/snd/pcmC0D0p
user@mach:~>

When this one particular AVI is played, you can see that
the “xprop” and “xdg-screensaver” processes are associated
to /dev/snd/timer and /dev/snd/pcmC0D0p.

With all other AVI files, “xprop” and “xdg-screensaver”
processes are launched by VLC, but they aren’t associated
to /dev/snd/timer and /dev/snd/pcmC0D0p.

I also noticed that when I “Quit” VLC, the two processes
(xprop and xdg-screensaver) linger … AAMOF, for every
AVI file that is opened and played, two new xprop and
xdg-screensaver processes are launched. So, if I’ve
opened and played 8 AVI files, there will be 8 different
“xprop” and “xdg-screensaver” processes running (even
after I quit VLC).

So this appears to be a bug with the VLC player. And I
find it strange that this one particular AVI file affects
VLC to associate “xprop” and “xdg-screensaver” to the
two devices /dev/snd/timer and /dev/snd/pcmC0D0p.

To “recover” the audio, I simply run: “killall -9 xprop xdg-screensaver”

This is strange …

It reads like you have moved beyond the initial problem of the “audio driver not initializing after every boot up” and now are investigating a problem with processes started at the same time as vlc seizing the audio driver.

How confident are you that this .avi file is built properly? What are its characteristics? ie output of:

ffmpeg -i thisone.avi

or if tovid is installed

idvid thisone.avi

or if mediainfo is installed

mediainfo thisone.avi

Did you create this avi file your self?

It came straight out of a [friend’s pocket]
Canon camera with video capability - there
has been no post-processing of the video.

user@mach:~> mediainfo mov0012.avi
General
Complete name " : "mov0012.avi
Format " : "AVI
Format/Info " : “Audio Video Interleave
File size " : “29.3” MiB”
Duration " : “1mn 43s
Overall bit rate " : “2” “388” Kbps”
Mastered date " : "Sun Feb 12 11:46:24 2006
Writing application " : "CanonMVI01

Video
ID " : “0
Format " : “M-JPEG
Codec ID " : “MJPG
Duration " : “1mn 43s
Bit rate " : “2” “297” Kbps”
Width " : “320” pixels”
Height " : “240” pixels”
Display aspect ratio " : “4:3
Frame rate " : “15.000” fps”
Resolution " : “8” bits”
Scan type " : "Progressive
Bits/(Pixel*Frame) " : “1.994
Stream size " : “28.2” MiB” (96%)

Audio
Format " : "PCM
Format settings, Endianness " : “Little
Format settings, Sign " : “Unsigned
Codec ID " : “1
Codec ID/Hint " : “Microsoft
Duration " : “1mn 43s
Bit rate mode " : “Constant
Bit rate " : “88.2” Kbps”
Channel(s) " : “1” channel”
Sampling rate " : “11.024” KHz”
Resolution " : “8” bits”
Stream size " : “1.08” MiB” (4%)
Interleave, duration " : “1000 ms (15.00” video frames”)
Interleave, preload duration " : "1000 ms

user@mach:~> ffmpeg -i mov0012.avi
FFmpeg version UNKNOWN, Copyright (c) 2000-2010 Fabrice Bellard, et al.
built on Jan 5 2010 05:00:36 with gcc 4.4.1 [gcc-4_4-branch revision 150839]
configuration: --shlibdir=/usr/lib64 --prefix=/usr --mandir=/usr/share/man --libdir=/usr/lib64 --enable-shared --enable-libmp3lame --enable-libvorbis --enable-libtheora --enable-libspeex --enable-libfaad --enable-libfaac --enable-nonfree --enable-libxvid --enable-postproc --enable-gpl --enable-x11grab --enable-libschroedinger --enable-libdirac --enable-libgsm --enable-version3 --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libx264 --enable-libdc1394 --enable-pthreads
libavutil 50. 7. 0 / 50. 7. 0
libavcodec 52.45. 0 / 52.45. 0
libavformat 52.46. 0 / 52.46. 0
libavdevice 52. 2. 0 / 52. 2. 0
libswscale 0. 7. 2 / 0. 7. 2
libpostproc 51. 2. 0 / 51. 2. 0
Input #0, avi, from ‘mov0012.avi’:
Duration: 00:01:43.00, start: 0.000000, bitrate: 2388 kb/s
Stream #0.0: Video: mjpeg, yuvj422p, 320x240, 15 tbr, 15 tbn, 15 tbc
Stream #0.1: Audio: pcm_u8, 11024 Hz, 1 channels, u8, 88 kb/s
At least one output file must be specified

user@mach:~>

That does read like a vlc problem. I assume xine and mplayer can play the file with no problem?

No issues with MPlayer / xine (had to install them) …
I always use VLC, since it’s x-platform.

Thanks for the hints/solution!