Hda-intel

Aus wiki.archlinux.de

Problem

Die Soundkarte wurde zwar unter ALSA richtig erkannt und auch installiert aber trotzdem kommt kein Sound aus den Boxen.


Grund

Durch die vielen verschiedenen Typen von hda-intel Soundkarten auf dem Markt kann ALSA nicht automatisch erkennen um welche es sich tatsächlich handelt.


Lösung

WICHTIG: Alle Schritte müssen als root ausgeführt werden!!

1. Als erstes ALSA updaten:

 pacman -Sy
 pacman -S alsa-utils alsa-oss alsa-lib

2. Danach muss die Karte installiert werden:

 alsaconf

Im folgenden Dialog:

OK drücken hda-intel auswählen und OK drücken Yes drücken OK drücken

3. In der Konsole head -n 1 /proc/asound/card0/codec* tippen. Die Ausgabe müsste dann ungefähr so aussehen:

 ==> /proc/asound/card0/codec#0 <==
 Codec: Realtek ALC883
 
 ==> /proc/asound/card0/codec#1 <==
 Codec: Conexant ID 2c06

In diesem Fall wäre der richtige Codec für die Karte ALC883.

4. Dieser Codec muss nun unter /usr/src/KERNEL_VERSION/Documentation/sound/alsa/ALSA-Configuration.txt gesucht werden.

 ALC883/888
          3stack-dig	3-jack with SPDIF I/O						
	  6stack-dig	6-jack digital with SPDIF I/O					
	  3stack-6ch    3-jack 6-channel						
	  3stack-6ch-dig 3-jack 6-channel with SPDIF I/O				
	  6stack-dig-demo  6-jack digital for Intel demo board				
	  acer		Acer laptops (Travelmate 3012WTMi, Aspire 5600, etc)		
	  medion	Medion Laptops							
	  medion-md2	Medion MD2							
	  targa-dig	Targa/MSI							
	  targa-2ch-dig	Targs/MSI with 2-channel					
	  laptop-eapd   3-jack with SPDIF I/O and EAPD (Clevo M540JE, M550JE)		
	  lenovo-101e	Lenovo 101E							
	  lenovo-nb0763	Lenovo NB0763							
	  lenovo-ms7195-dig Lenovo MS7195						
	  6stack-hp	HP machines with 6stack (Nettle boards)				
	  3stack-hp	HP machines with 3stack (Lucknow, Samba boards)			
	  auto		auto-config reading BIOS (default)

Die darunter angegebenen Optionen stellen die verschiedenen Soundkarten da, die diesen Codec verwenden. Nun muss man sich für eine davon entscheiden (man kann auch alle durchprobieren, wenn man sich nicht sicher ist welche Karte man hat).

5. Der Codec für den man sich entschieden hat muss dann in /etc/modprobe.conf eingetragen werden.

Datei vor der Änderung (Beispiel):

 
  #
  # /etc/modprobe.conf (for v2.6 kernels)
  #

  # --- BEGIN: Generated by ALSACONF, do not edit. ---
  # --- ALSACONF version 1.0.15 ---
  alias snd-card-0 snd-hda-intel
  alias sound-slot-0 snd-hda-intel
  # --- END: Generated by ALSACONF, do not edit. ---

Datei nach der Änderung:

 
  #
  # /etc/modprobe.conf (for v2.6 kernels)
  #

  # --- BEGIN: Generated by ALSACONF, do not edit. ---
  # --- ALSACONF version 1.0.15 ---
  options snd-hda-intel model=6stack-dig enable=1 index=0
  alias snd-card-0 snd-hda-intel
  alias sound-slot-0 snd-hda-intel
  # --- END: Generated by ALSACONF, do not edit. ---

6. Datei /etc/modprobe.conf abspeichern und dann den Rechner neu starten. Dann muss man noch in KMix (unter KDE, unter GNOME kann man auch alsamixer in der Konsole verwenden oder einen entsprechenden GUI) die entsprechenden Kanäle aktivierne und laut stellen, zum testen einfach alle auf maximale Lautstärke. Dann testen ob Sound kommt. Falls sich nach dem Ändern der Soundkarte in /etc/modprbe.conf die im entsprechenden Mixer angezeigten Kanäle nicht ändern muss man den Computer neu starten (ACHTUNG: Wenn man gnome-volume-control verwendet muss man unter Bearbeiten/Einstellungen eventuel noch einige Kanäle freischalten)

7. Wenn kein Sound kommt muss man ein anderes Modell wählen und es damit versuchen. Mann kann auch alle Modelle nacheinander testen, da manche eine bessere Soundqualität haben als andere.