Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
ALC887-VD sound not working
View unanswered posts
View posts from last 24 hours

 
Reply to topic    Gentoo Forums Forum Index Multimedia
View previous topic :: View next topic  
Author Message
Nerevar
l33t
l33t


Joined: 31 May 2008
Posts: 720

PostPosted: Tue Jan 29, 2019 3:37 am    Post subject: ALC887-VD sound not working Reply with quote

I'm trying to get the front headphone jack working on a new PC. I've set the BIOS to use AC97 sound instead of HD sound hoping that might help but it hasn't. I've switched it back and forth trying a lot of settings and now I'm almost ready to go buy a sound card. Any ideas would be greatly appreciated!

lspci -v
Code:
26:00.1 Audio device: NVIDIA Corporation GP108 High Definition Audio Controller (rev a1)
   Subsystem: Micro-Star International Co., Ltd. [MSI] GP108 High Definition Audio Controller
   Flags: bus master, fast devsel, latency 0, IRQ 61
   Memory at fd080000 (32-bit, non-prefetchable) [size=16K]
   Capabilities: [60] Power Management version 3
   Capabilities: [68] MSI: Enable- Count=1/1 Maskable- 64bit+
   Capabilities: [78] Express Endpoint, MSI 00
   Capabilities: [100] Advanced Error Reporting
   Kernel driver in use: snd_hda_intel
   Kernel modules: snd_hda_intel

28:00.3 Audio device: Advanced Micro Devices, Inc. [AMD] Family 17h (Models 00h-0fh) HD Audio Controller
   Subsystem: ASRock Incorporation Family 17h (Models 00h-0fh) HD Audio Controller
   Flags: bus master, fast devsel, latency 0, IRQ 63
   Memory at fd700000 (32-bit, non-prefetchable) [size=32K]
   Capabilities: [48] Vendor Specific Information: Len=08 <?>
   Capabilities: [50] Power Management version 3
   Capabilities: [64] Express Endpoint, MSI 00
   Capabilities: [a0] MSI: Enable+ Count=1/1 Maskable- 64bit+
   Capabilities: [100] Vendor Specific Information: ID=0001 Rev=1 Len=010 <?>
   Capabilities: [150] Advanced Error Reporting
   Capabilities: [2a0] Access Control Services
   Kernel driver in use: snd_hda_intel
   Kernel modules: snd_hda_intel

/etc/modprobe.d/alsa.conf
Code:
options snd cards_limit=2
options snd-hda-intel model=dual-codecs index=1

When index is 0, I get no sound. When index is 1 (as shown), I get hissing/static.

alsa-info.sh output
Back to top
View user's profile Send private message
Keruskerfuerst
Advocate
Advocate


Joined: 01 Feb 2006
Posts: 2289
Location: near Augsburg, Germany

PostPosted: Tue Jan 29, 2019 6:08 am    Post subject: Reply with quote

I think, the right sound card driver in the kernel, is: intel hda.

Did you compile this support into the kernel ?

Can you post lspci -v | grep audio ?
Back to top
View user's profile Send private message
NeddySeagoon
Administrator
Administrator


Joined: 05 Jul 2003
Posts: 54237
Location: 56N 3W

PostPosted: Tue Jan 29, 2019 1:25 pm    Post subject: Reply with quote

Nerevar,

Both those sound cards need
Code:
Kernel modules: snd_hda_intel


Since you have two sound cards, you need to get them in the right order. The default order will be PCI bus order
Code:
26:00.1 Audio device: NVIDIA Corporation GP108 High Definition Audio Controller
28:00.3 Audio device: Advanced Micro Devices, Inc. [AMD] Family 17h (Models 00h-0fh) HD Audio Controller
so I guess that's wrong as the nVidia card will be HDMI sound over the video cable.

Some sound applications let you specify the sound card they should use, others do not.

Once your audio is directed to the right card, the next step is getting it out of the headphone jack.

What do you have in /proc/asound/devices ?
_________________
Regards,

NeddySeagoon

Computer users fall into two groups:-
those that do backups
those that have never had a hard drive fail.
Back to top
View user's profile Send private message
Nerevar
l33t
l33t


Joined: 31 May 2008
Posts: 720

PostPosted: Tue Jan 29, 2019 2:48 pm    Post subject: Reply with quote

Thanks for the help guys. That kernel module is baked in...
Code:
# lsmod
Module                  Size  Used by
fuse                   98304  2
snd_hda_codec_realtek    81920  1
snd_hda_codec_generic    65536  1 snd_hda_codec_realtek
snd_hda_codec_hdmi     45056  1
snd_hda_intel          28672  1
snd_hda_codec          90112  4 snd_hda_codec_generic,snd_hda_codec_hdmi,snd_hda_intel,snd_hda_codec_realtek
snd_hda_core           49152  5 snd_hda_codec_generic,snd_hda_codec_hdmi,snd_hda_intel,snd_hda_codec,snd_hda_codec_realtek
snd_hwdep              12288  1 snd_hda_codec
snd_pcm                73728  4 snd_hda_codec_hdmi,snd_hda_intel,snd_hda_codec,snd_hda_core
vboxpci                24576  0
vboxnetadp             24576  0
vboxnetflt             28672  0
vboxdrv               405504  3 vboxpci,vboxnetadp,vboxnetflt
snd_timer              28672  1 snd_pcm
snd                    65536  9 snd_hda_codec_generic,snd_hda_codec_hdmi,snd_hwdep,snd_hda_intel,snd_hda_codec,snd_timer,snd_pcm
soundcore              12288  1 snd
wmi_bmof               12288  0

/proc/asound/devices
Code:
  2: [ 0- 0]: digital audio playback
  3: [ 0- 0]: digital audio capture
  4: [ 0- 2]: digital audio capture
  5: [ 0- 0]: hardware dependent
  6: [ 0]   : control
  7: [ 1- 3]: digital audio playback
  8: [ 1- 7]: digital audio playback
  9: [ 1- 0]: hardware dependent
 10: [ 1]   : control
 33:        : timer

The lspci info requested is in the OP.

Thanks again!
Back to top
View user's profile Send private message
NeddySeagoon
Administrator
Administrator


Joined: 05 Jul 2003
Posts: 54237
Location: 56N 3W

PostPosted: Tue Jan 29, 2019 3:21 pm    Post subject: Reply with quote

Nerevar,

/proc/asound/devices:
  5: [ 0- 0]: hardware dependent


Good. The default sound cars is correct. Card 1 only has playback devices, so its not your analogue sound card.
With that setup, you should have sound on speakers.

With the kernel module built into the kernel, /etc/modprobe.d/alsa.conf should have no effect as its needed at the time the module is initialised, which is well before root is mounted.
For built in modules, you must pass module parameters on the kernel command line, like snd-hda-intel.index=1,0 to swap the cards over.
Alternatively you can make an /etc/asound.conf which alsa will consult every time alsa runs.

From your alsa-info.sh output
Code:
Node 0x14 [Pin Complex] wcaps 0x40058d: Stereo Amp-Out
  Control: name="Front Playback Switch", index=0, device=0
    ControlAmp: chs=3, dir=Out, idx=0, ofs=0
  Amp-Out caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1


The Front Playback Switch in muted. As is Speaker Playback Switch

Hmm ..

Code:
Node 0x1b [Pin Complex] wcaps 0x40058f: Stereo Amp-In Amp-Out
  Control: name="Headphone Playback Switch", index=0, device=0
    ControlAmp: chs=3, dir=Out, idx=0, ofs=0
  Amp-In caps: ofs=0x00, nsteps=0x03, stepsize=0x27, mute=0
  Amp-In vals:  [0x00 0x00]
  Amp-Out caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1
The Mic part of the heaphones are unmuted, but the output part is muted.

Run alsamixer

Umute Master, PCM and Front Speakers. Set the sliders to about 70%
Mute everything else, especially anything with IEC or SPDI/F in its name.
HD-Audio cards can work at 44.1kHz, for normal CD sound. or 48kHz for DVDs etc., but not both at the same time.
If you select both, digital wins and you get no analogue audio at all.

Keep an eye on your /proc/asound/devices to make sure card 0 has capture controls.
I don't understand how the sound cards are being swapped from the defaults yet.
_________________
Regards,

NeddySeagoon

Computer users fall into two groups:-
those that do backups
those that have never had a hard drive fail.
Back to top
View user's profile Send private message
Nerevar
l33t
l33t


Joined: 31 May 2008
Posts: 720

PostPosted: Wed Jan 30, 2019 4:42 am    Post subject: Reply with quote

Hi Neddy,

I commented out everything in /etc/modprobe.d/alsa.conf (which I'm pretty sure it is using as it does change things) and here's the output now:

Code:
# cat /proc/asound/devices
  2: [ 1- 0]: digital audio playback
  3: [ 1- 0]: digital audio capture
  4: [ 1- 2]: digital audio capture
  5: [ 1- 0]: hardware dependent
  6: [ 1]   : control
  7: [ 0- 3]: digital audio playback
  8: [ 0- 7]: digital audio playback
  9: [ 0- 0]: hardware dependent
 10: [ 0]   : control
 33:        : timer


I can't find a way to unmute the front headphones! Alsamixer only has a Front setting and it isn't muted. Are there any other tools to use?

alsa-info.sh with no alsa.conf settings

Thank you very much!
Back to top
View user's profile Send private message
NeddySeagoon
Administrator
Administrator


Joined: 05 Jul 2003
Posts: 54237
Location: 56N 3W

PostPosted: Wed Jan 30, 2019 6:06 pm    Post subject: Reply with quote

Nerevar,

I don't think your snd_hda_intel is built into the kernel.
Is it listed in
Code:
lsmod

Built ins will not appear.

Oops, you have shown lsmod and snd_hda_intel is indeed a loadable module.

Both ways work. What differs is how you exercise control of snd_hda_intel itself.

Your new /proc/asound/devices shows that your analogue sound card is now card 1.

Code:
options snd cards_limit=2
options snd-hda-intel model=dual-codecs index=1
should be
Code:
options snd cards_limit=1
options snd-hda-intel model=dual-codecs index=1,0


Sound cards are numbered from zero.
index needs 1,0 sot your cards are swapped. It looks like alsa did the right thing anyway.

Fix your /etc/modprobe.d/alsa.conf to work again, then check your IEC and/or SPDI/F input and outputs are all muted.
You may not have any, that's fine.

Lets get sound out of the speakers (the Green socket) first. That will be the hard bit.
You can plug heaphones in there for testing but take care with the volume level.
_________________
Regards,

NeddySeagoon

Computer users fall into two groups:-
those that do backups
those that have never had a hard drive fail.
Back to top
View user's profile Send private message
Nerevar
l33t
l33t


Joined: 31 May 2008
Posts: 720

PostPosted: Thu Jan 31, 2019 2:39 am    Post subject: Reply with quote

Here's what it looks like when set to index=1,0:

Code:
# cat /proc/asound/devices
  2: [ 0- 0]: digital audio playback
  3: [ 0- 0]: digital audio capture
  4: [ 0- 2]: digital audio capture
  5: [ 0- 0]: hardware dependent
  6: [ 0]   : control
  7: [ 1- 3]: digital audio playback
  8: [ 1- 7]: digital audio playback
  9: [ 1- 0]: hardware dependent
 10: [ 1]   : control
 33:        : timer


Now with index=1,0, the XFCE ALSA Volume Control widget is defaulting to the HDA NVidia sound if that means anything. With index=1, that widget defaults to the HD-Audio Generic device. With nothing in alsa.conf it also defaults to HDA NVidia. I'm thinking that's a clue, but maybe not. Just throwing it out there.

alsa-info.sh with index=1,0

My headphones are now plugged into the back speaker jack and it's giving static/hissing/white noise as well. It isn't static over the sound, it's just static.

There's way too many options for these HD sound cards. This is like trying to get sound working back in the 90s before ALSA. Sigh.

Thanks for all the help!
Back to top
View user's profile Send private message
NeddySeagoon
Administrator
Administrator


Joined: 05 Jul 2003
Posts: 54237
Location: 56N 3W

PostPosted: Wed Feb 06, 2019 7:53 pm    Post subject: Reply with quote

Nerevar,

Back from FOSDEM and caught up with real life.

With index=1,0 your /proc/asound/devices is correct.
Card 0 is the default card.

If the ALSA Volume Control widget is defaulting to the HDA NVidia, then something is swapping the cards again later in the process,

Run
Code:
aplay -L
to get a list of sound devices on your system.
It should include something like
Code:
front:CARD=SB,DEV=0
    HDA ATI SB, VT1708S Analog
    Front speakers
surround21:CARD=SB,DEV=0
    HDA ATI SB, VT1708S Analog
    2.1 Surround output to Front and Subwoofer speakers
surround40:CARD=SB,DEV=0
    HDA ATI SB, VT1708S Analog
    4.0 Surround output to Front and Rear speakers
surround41:CARD=SB,DEV=0
    HDA ATI SB, VT1708S Analog
    4.1 Surround output to Front, Rear and Subwoofer speakers
surround50:CARD=SB,DEV=0
    HDA ATI SB, VT1708S Analog
    5.0 Surround output to Front, Center and Rear speakers
surround51:CARD=SB,DEV=0
    HDA ATI SB, VT1708S Analog
    5.1 Surround output to Front, Center, Rear and Subwoofer speakers
surround71:CARD=SB,DEV=0
    HDA ATI SB, VT1708S Analog
    7.1 Surround output to Front, Center, Side, Rear and Woofer speakers

That's all the analogue outputs. I have lots more digital outputs named hdmi ... which we don't care about.


Find your
Code:
front:CARD=SB,DEV=0
equivalent and plug it into
speaker-test.
Code:
speaker-test CARD=SB,DEV=0

This will produce pink noise from the green analogue output socket.

It works without regard to (or in despite of) any index= settings as you look up the Alsa device names then to talk to the devices directly.

It is possible to get silence if the sliders and mute buttons are not set correctly.
_________________
Regards,

NeddySeagoon

Computer users fall into two groups:-
those that do backups
those that have never had a hard drive fail.
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index Multimedia All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum