Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
Wegweiser für ALSA und Kernel 2.6.x
View unanswered posts
View posts from last 24 hours
View posts from last 7 days

 
Reply to topic    Gentoo Forums Forum Index Deutsches Forum (German) Deutsche Dokumentation
View previous topic :: View next topic  
Author Message
yeoman
Tux's lil' helper
Tux's lil' helper


Joined: 05 Jan 2004
Posts: 109
Location: Germany

PostPosted: Wed Sep 01, 2004 9:03 am    Post subject: Wegweiser für ALSA und Kernel 2.6.x Reply with quote

ALSA und Kernel 2.6.x

Da im deutschsprachigen Teil der Gentoo-Foren sehr häufig Fragen zu ALSA und Kernel 2.6.x auftauchen, hier nun ein kurzer Wegweiser zur Installation. Einen bootfähigen Kernel 2.6.x setze ich als bereits installiert voraus. Alle Schritte müssen selbstverständlich als Root ausgeführt werden.


1.) Auswahl der benötigten ALSA-Module im Kernel. Eine Liste mit unterstützen Soundkarten und den dazugehörigen Modulen gibt es unter http://www.alsa-project.org/alsa-doc/index.php?vendor=All#matrix. Ich besitze beispielsweise eine Terratec DMXfire 1024 und habe daher unter PCI devices das Modul Cirrus Logic (Sound Fusion) CS4280/CS461x/CS462x/CS463x ausgewählt.
Code:

Device Drivers  ---> 
   Sound  --->
   <M> Sound card support
   <M> Advanced Linux Sound Architecture
   <M> Sequencer support
   <M> OSS Mixer API
   <M> OSS PCM (digital audio) API
   [*] OSS Sequencer API
   <M> RTC Timer support
      PCI devices  --->
      <M> Cirrus Logic (Sound Fusion) CS4280/CS461x/CS462x/CS463x

OSS Mixer API und OSS PCM (digital audio) API dienen der Kompatibilität mit dem mittlerweile überholten OSS. Da dies lange Zeit der Standardsoundtreiber unter Linux war gibt es noch vereinzelt Anwendungen, die keine ALSA-Unterstützung mitbringen, weshalb dieser Kompatibilitätslayer für ALSA zur Verfügung steht, der nach meiner persönlichen Erfahrung auch hervoragend funktioniert. Wer diesen nicht benötigt, läßt die entsprechenden Module einfach weg.
RTC Timer support habe ich ebenfalls noch nie benötigt, da es aber für den Fall der Fälle automatisch geladen wird, habe ich es einfach aktiviert in der Hoffnung einmal einer Anwendung zu begegnen, die Gebrauch davon macht.

Nachdem alles passend konfiguriert ist einfach:
Code:
make modules && make modules_install


2.) Die alsa-utils installieren.
Code:
emerge alsa-utils

Dabei werden automatisch auch die Pakete alsa-lib und alsa-headers installiert. "alsa-utils" enthält neben dem Initscript alsasound unter anderem auch die Tools alsaconf, alsactl und alsamixer. Nach dem Kompilieren muß in aller Regel noch etc-update ausgeführt werden.

ACHTUNG! In Portage befindet sich das Paket "alsa-driver", das ebenfalls die ALSA-Kernelmodule zur Verfügung stellt. Da diese aber nicht unbedingt mit jedem 2.6.x Kernel harmonieren (z.B. läßt sich alsa-driver-1.0.5a nicht mit 2.6.8 installieren) sollten 2.6.x-Benutzer den hier beschriebenen Weg vorziehen. Wurde jedoch kein 2.6.x-Kernel via Portage installiert, sondern die Kernelsources stattdessen aus einer anderen Quelle (z.B. von www.kernel.org) bezogen, weiß Portage natürlich nicht, daß alsa-driver (als Virtual) bereits im System vorhanden ist und versucht fortan verzweifelt dieses Paket zu installieren. In diesem Fall mußt du entweder einen 2.6.x-Kernel injecten (man emerge!) oder besser du machst es von Anfang an Gentoo-like und emergst die Kernelsourcen auf bewährte Art und Weise.
Das Paket alsa-oss aus Portage ergänzt lediglich OSS-Kompatibilität zum Paket alsa-driver und wird daher für 2.6.x-Kernel ebenfalls nicht benötigt.

3.) ALSA konfigurieren
Code:
alsaconf

Einfach Soundkarte auswählen und alsaconf erledigt die notwendigen Einträge in /etc/modules.d/alsa. Anschließend wird automatisch modules-update ausgeführt damit die neuen Einstellungen auch übernommen werden.

4.) alsasound zum Boot-Runlevel hinzufügen
Code:
rc-update add alsasound boot

Damit wird alsasound künftig bei jedem Systemstart ausgeführt und sorgt dafür, daß die Kernelmodule geladen werden. Ein Eintrag in den Runlevel "default" genügt übrigens nicht, da dann beispielsweise die OSS-Kompatibilität nicht funktioniert.

5.) reboot
Code:
reboot

Tja, was soll ich sagen, reboot eben. Ist nicht unbedingt notwendig, aber sicher ist sicher und man fühlt sich endlich einmal wieder wie in Redmond.

6.) Mixer-Einstellungen
Code:
alsamixer

Prinzipiell geht auch jedes andere ALSA-kompatible Mixerprogramm, aber alsamixer ist ohnehin Teil der alsa-utils, warum also nicht. Wer nicht gleich klarkommt, findet in der Manpage eine ausführliche Anleitung.

7.) Mixer-Einstellungen speichern
Code:
alsactl store

Bewirkt, daß die aktuellen Mixer-Einstellungen gespeichert werden. "alsasound" stellt diese dann beim reboot wieder her.

ACHTUNG, gefährlich!
cat /proc/asound/version zeigt die Version der installierten ALSA-Treiber an. Die im Kernel mitgelieferten Treiber sind meist nicht ganz aktuell. Wem dies unerträglich erscheint, dem kann geholfen werden. Auf ftp://ftp.alsa-project.org/pub/kernel-patches/ gibt es Patches, die einen 2.6.x-Kernel auf den aktuellen Stand bringen. Dazu den aktuellsten Patch (zur Zeit z.B. alsa-bk-2004-08-26.patch.gz) herunterladen und nach /usr/src/linux kopieren.
Code:
cd /usr/src/linux
zcat alsa-bk-2004-08-26.patch.gz | patch -p1

bringt danach die ALSA-Treiber im Kernel auf Versionsnummer 1.0.6.

Natürlich ist es höchstwahrscheinlich, daß hierbei deine Soundkarte Feuer fängt, dein Monitor implodiert und das Internet gelöscht wird. Trotzdem kann es gelegentlich hilfreich sein.


yeoman
Back to top
View user's profile Send private message
Marlo
Veteran
Veteran


Joined: 26 Jul 2003
Posts: 1148

PostPosted: Sun Dec 04, 2005 9:37 pm    Post subject: Reply with quote

Hi,
ich bumpe nur deine vorzügliche how to, damit sie weiter nach oben kommt und in diesem neuen Verzeichnissystem leichter zu finden ist.

Ma
_________________
Test Adobe Flash Player
The Indian Shankar Drum Ganesh Machine
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index Deutsches Forum (German) Deutsche Dokumentation 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