View previous topic :: View next topic |
Author |
Message |
Nerevar l33t
Joined: 31 May 2008 Posts: 720
|
Posted: Tue Jan 29, 2019 3:37 am Post subject: ALC887-VD sound not working |
|
|
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 |
|
|
Keruskerfuerst Advocate
Joined: 01 Feb 2006 Posts: 2289 Location: near Augsburg, Germany
|
Posted: Tue Jan 29, 2019 6:08 am Post subject: |
|
|
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 |
|
|
NeddySeagoon Administrator
Joined: 05 Jul 2003 Posts: 54237 Location: 56N 3W
|
Posted: Tue Jan 29, 2019 1:25 pm Post subject: |
|
|
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 |
|
|
Nerevar l33t
Joined: 31 May 2008 Posts: 720
|
Posted: Tue Jan 29, 2019 2:48 pm Post subject: |
|
|
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 |
|
|
NeddySeagoon Administrator
Joined: 05 Jul 2003 Posts: 54237 Location: 56N 3W
|
Posted: Tue Jan 29, 2019 3:21 pm Post subject: |
|
|
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 |
|
|
Nerevar l33t
Joined: 31 May 2008 Posts: 720
|
Posted: Wed Jan 30, 2019 4:42 am Post subject: |
|
|
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 |
|
|
NeddySeagoon Administrator
Joined: 05 Jul 2003 Posts: 54237 Location: 56N 3W
|
Posted: Wed Jan 30, 2019 6:06 pm Post subject: |
|
|
Nerevar,
I don't think your snd_hda_intel is built into the kernel.
Is it listed in
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 |
|
|
Nerevar l33t
Joined: 31 May 2008 Posts: 720
|
Posted: Thu Jan 31, 2019 2:39 am Post subject: |
|
|
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 |
|
|
NeddySeagoon Administrator
Joined: 05 Jul 2003 Posts: 54237 Location: 56N 3W
|
Posted: Wed Feb 06, 2019 7:53 pm Post subject: |
|
|
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 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 |
|
|
|
|
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
|
|