Linux Sound HOWTO
 Jeff Tranter ([email protected]),         �bersetzung
 Jens Vonderheide ([email protected])
 v1.15-2, 8. September 1996, �bersetzung 26. September 1996

 Dieser Text beschreibt die Soundunterst�tzung f�r Linux. Er listet die
 unterst�tzte Hardware auf, beschreibt, wie die Kerneltreiber   konfig�
 uriert werden und beantwortet h�ufig gestellte Fragen. Die   Zielset�
 zung ist, neuen Anwendern den Einstieg zu erleichtern und   das
 Rauschen in den Usenet-Newsgroups und dem Fido-Echo niedrig zu   hal�
 ten.


 1.  Einleitung


 Dies ist die Linux Sound HOWTO. Sie wurde geschrieben als schnelle
 Referenz f�r alles, was man �ber Installation und Einrichtung von
 Soundunterst�tzung unter Linux wissen mu�. H�ufig gestellte Fragen
 �ber Sound unter Linux werden beantwortet und Verweise auf andere
 Informationsquellen zu vielen Themen, die mit computererzeugtem Sound
 und Musik zu tun haben, gegeben.

 Dieser Text beschr�nkt sich auf die Aspekte von Soundkarten, die mit
 Linux zusammenh�ngen. F�r weitere Informationen betrachte man die
 Liste von Texten im Abschnitt Referenzen.


 1.1.  Anerkennungen


 Viele dieser Informationen kommen aus der Dokumentation, die zu dem
 Sourcecode des Soundtreibers geh�rt, geschrieben von Hannu Savolainen
 ([email protected]). Dank geht an Hannu und die vielen anderen
 Leute, die die Linux-Kernelsoundtreiber und Utilities entwickelt
 haben.

 Dank dem Paket Linuxdoc-SGML gibt es diese HOWTO in mehreren Formaten,
 die alle aus einer Datei erstellt werden.


 1.2.  Versionsgeschichte




    Version 1.1
       Erste Version; wurde nur in den SOUND-Kanal der Linuxaktivisten-
       Mailingliste gepostet


    Version 1.2
       Kleinere Updates; die erste Version, die auf Archiv-Servern zur
       Verf�gung stand.


    Version 1.3
       nach SGML konvertiert; jetzt in mehreren Formaten mittels Matt
       Welshs Linuxdoc-SGML-Programmen erh�ltlich; Aussehen durch das
       neue Format ge�ndert, nur kleine �nderungen am Inhalt


    Version 1.4
       kleine �nderung von SGML; Antwort zur PAS16 und Adaptec1542A
       SCSI-Adapter-Inkompatibilit�t hinzugef�gt.



    Version 1.5
       2.5a Soundtreiber ist jetzt in der 1.1 Kerneldistribution;
       Hinweis auf GUS-MAX-Unterst�tzung; andere kleine Updates


    Version 1.6
       Information �ber "no space on device"-Fehler hinzugef�gt;
       Hinweis hinzugef�gt, da� Hacker's Guide in einem "versteckten"
       Verzeichnis ist; Frage zum bidirektionalen Modus hinzugef�gt;
       Informationen �ber "device busy"-Fehler; sonstige kleine
       �nderungen


    Version 1.7
       Informationen �ber ASP und AWE32 hinzugef�gt; VoxWare 2.9 ist
       erh�ltlich; Antwort auf Frage zur Verwendung von IRQ2; Verweise
       auf Sound und SCSI HOWTOs


    Version1.8
       Frage zu Fehlern unter DOS hinzugef�gt; viele kleine Sachen
       upgedated, um  dem Soundtreiber Version 2.90 zu entsprechen;
       Information �ber DOOM; Antwort auf Rauschunterdr�ckung


    Version 1.9
       Fragen �ber Aufnahme und Klon-Karten


    Version 1.10
       Hinweis, da� HOWTO jetzt im WWW erh�ltlich ist, als gedruckte
       Ausgabe und als �bersetzungen; Information �ber DMA-Konflikt mit
       QIC-Bandtreibern; Informationen �ber Sound Galaxy NX Pro und
       Logitech BusMouse


    Version 1.11
       Ein lange f�lliges Update (der Autor war besch�ftigt); das
       Dokument wurde unter GPL gesetzt; auf den Soundtreiber 3.0
       aktualisiert; Informationen �ber viele neu unterst�tzte
       Soundkarten; mehr Informationen �ber Konfiguration und
       Problembehebung; viele HTML-Verweise; dem Format der CD-ROM
       HOWTO angepa�t.


    Version 1.12
       neue Soundtreiber im 1.3.34 Kernel; neue Sounddevice-Namen;
       1542-Adresse ist 334 nicht 333; Klarstellung des Status von Labs
       Emu und ASP; Verweis auf die Webseiten von Creative Labs und
       MediaTrix.


    Version 1.13
       Hinweis auf den Namen VoxWare; neue unterst�tzte Soundkarten und
       Konfigurationsprobleme hinzugef�gt; Frage wegen Plug& Play-
       Unterst�tzung; Frage wegen dem "block size"-Problem; neue
       xconfig und menuconfig-Optionen; modutils hat Sounddevice-
       Unterst�tzung; Hinweis auf Webseite des Autors; andere kleine
       �nderungen


    Version 1.14
       Audio Excell DSP16 wird momentan nicht unterst�tzt (das sollte
       in einigen  Monaten wieder funktionieren); �nderungen am
       Konfigurationsprogramm; italienische Version der HOWTO
       verf�gbar; Trick, um die Mixereinstellungen beim Laden des
       Soundmoduls festzulegen; aktueller stabiler Kernel ist jetzt
       2.0; neuer Name f�r den Soundtreiber; Frage wegen root-
       permissions der Sounddevice-Dateien.


    Version 1.15
       Einige Fragen entfernt, die sehr alt und inzwischen �berfl�ssig
       sind; neue e-Mail-Adresse des Autors; einige Verweise auf
       Software aktualisiert; weitere Informationen �ber das
       Multimedia-Buch; kleinere Rechtschreib- und
       Grammatik-�nderungen.



 1.3.  Geschichte der deutschen �bersetzung


 Die deutsch-sprachigen Versionen sind reine �bersetzung, die
 Geschichte stimmt daher weitestgehend mit der oben genannten
 Geschichte �berein. Die erste �bersetzte HOWTO war die Version 1.14,
 der �bersetzer bem�ht sich, neue englisch- sprachige Version m�glichst
 schnell einzubauen.  Gegen�ber dem englischen Original sind einige
 Formatierungen ge�ndert, und der Abschnitt �ber �bersetzungen in
 andere Sprachen wurde weggelassen.



 1.4.  Neue Versionen dieses Dokuments


 Neue englisch-sprachige Versionen dieses Dokuments werden regelm��ig
 in die Newsgroup comp.os.linux.answers gepostet. Sie werden auch auf
 viele ftp-Servern geladen die solche Informationen archivieren, unter
 anderem metalab.unc.edu:/pub/Linux/docs/HOWTO/.  Die aktuelle deutsche
 �bersetzung gibt es mit anderen deutschen �bersetzungen von HOWTOs
 unter http://www.tu-harburg.de/dlhp/FTP/.

 Hypertext-Versionen von dieser und anderer Linux HOWTOs gibt es auf
 vielen WWW-Seiten, unter anderem http://metalab.unc.edu/LDP/mdw.html.
 Die deutsche Version ist bei http://www.tu-harburg.de/dlhp/DE-Sound-
 HOWTO.html zu finden.

 Die meisten Linux CD-ROM-Distributionen enthalten die (englischen)
 HOWTOs, meistens im Verzeichnis /usr/doc, und es k�nnen auch gedruckte
 Ausgaben von vielen H�ndlern gekauft werden.


 1.5.  Feedback


 Der Autor verl��t sich auf den Leser, diese HOWTO sinnvoll zu machen.
 Jeder, der Hinweise, Korrekturen oder Kommentare hat, ist
 aufgefordert, sie einzusenden. Achten Sie bitte darauf, ob sich der
 Hinweis auf das englisch-sprachige Original (also den Inhalt) oder auf
 die �bersetzung bezieht. Hinweise zum Original bitte an Jeff Tranter
 ([email protected]), zur �bersetzung an Jens Vonderheide
 ([email protected]).  Im Zweifelsfall senden Sie die
 Hinweise besser an Jens Vonderheide, er leitet sie dann evtl. weiter.

 Der Autor Jeff Tranter ist auch bereit, generelle Fragen �ber
 Soundkarten und Linux zu beantworten. Bevor Sie Fragen stellen, lesen
 Sie bitte alle Informationen in dieser HOWTO und senden Sie genaue
 Informationen �ber das Problem.

 Wenn Sie dieses Dokument auf einer CD-ROM oder in gedruckter Form
 vertreiben, w�rde sich der Autor �ber eine Kopie freuen (der
 �bersetzer auch :-) ). Schreiben Sie f�r eine Postanschrift.  Bedenken
 Sie auch die M�glichkeit, eine Spende an das Linux Documentation
 Project zu entrichten, um kostenlose Dokumentationen f�r Linux zu
 unterst�tzen. Wenden Sie sich an den Linux-HOWTO- Koordinator, Greg
 Hankins ([email protected]) f�r weitere Informationen.


 1.6.  Copyright


 Dieses Dokument ist urheberrechtlich gesch�tzt. Das Copyright f�r die
 englische Sound-HOWTO, auf der dieses Dokument basiert, liegt bei Jeff
 Tranter. Das Copyright f�r die deutsche �bersetzung liegt bei bei Jens
 Vonderheide. Das Dokument darf gem�� der GNU GPL kostenlos verbreitet
 werden. Das bedeutet, da� der Text sowohl �ber elektronische wie auch
 physikalische Medien ohne die Zahlung von Lizenzgeb�hren verbreitet
 werden darf, solange dieser Copyright-Hinweis nicht entfernt wird.
 Eine kommerzielle Verbreitung ist erlaubt und sogar erw�nscht. Bei
 einer Verbreitung in Papierform ist das deutsche HOWTO-Projekt
 hier�ber zu informieren.


 2.  Soundkarten-Technik


 Dieser Abschnitt liefert einen sehr kurzen �berblick �ber Computer-
 Audiotechnik, damit die Konzepte, die sp�ter vorgestellt werden,
 besser verstanden werden. Es empfiehlt sich, ein Buch �ber digitales
 Audio oder digitale Signalverarbeitung zu lesen, um mehr zu erfahren.

 Sound ist analog, er kann jeden Wert in einem durchgehenden Bereich
 annehmen. Computer sind digital, sie arbeiten mit diskreten Werten.
 Soundkarten verwenden einen sogenannten Analog-Digital-Wandler (A/D
 oder ADC), um Spannungen, die analogen Klangwellen entsprechen, in
 digitale oder numerische Werte umzuwandeln. Genauso wandelt ein
 Digital-Analog-Wandler (D/A oder DAC) die numerischen Werte wieder in
 eine analoge Spannung um, die �ber einen Lautsprecher Kl�nge erzeugen
 kann.

 Die Umwandlung von Analog nach Digital, Sampling genannt, beinhaltet
 einige Fehlerquellen. Zwei Faktoren bestimmen, wie gut das gesamplete
 Signal mit dem Original �bereinstimmt. Die Samplerate ist die Anzahl
 von Samples pro Zeiteinheit (�blicherweise in Samples pro Sekunde oder
 Hertz angegeben).  Eine niedrige Samplingrate erzeugt ein weniger
 genaues Abbild des analogen Signals. Die Samplegr��e ist der Bereich
 von Werten, durch die jedes Sample dargestellt wird, �blicherweise in
 Bits angegeben. Je h�her die Samplegr��e, desto genauer wird das
 digitalisierte Signal sein.

 Soundkarten verwenden gew�hnlich 8 oder 16 Bit-Samples bei
 Samplingraten zwischen 4000 und 44.000 Samples pro Sekunde. Die
 Samples k�nnen auch aus einem (Mono) oder zwei (Stereo) Kan�len
 bestehen.

 FM-Synthese ist eine �ltere Technik der Klangerzeugung. Sie beruht auf
 der Kombination von verschiedenen Wellenformen (z.B. Sinus, Dreieck,
 Rechteck). FM-Synthese ist leichter in der Hardware zu implementieren
 als D/A-Wandlung, aber schwerer zu programmieren und weniger flexibel.
 Viele Soundkarten bieten FM-Synthese zur Kompatibilit�t mit �lteren
 Karten und Software. �blicherweise besitzen sie mehrere unabh�ngige
 Klanggeneratoren oder Voices.

 Wavetable-Synthese kombiniert die Flexibilit�t der D/A-Wandlung mit
 der Mehrkanal-Technik der FM-Synthese. Hiermit k�nnen digitalisierte
 Kl�nge in den Speicher geladen werden und dann mit geringer
 Prozessorbelastung abgespielt, kombiniert und ver�ndert werden.
 Moderne Soundkarten unterst�tzen alle Wavetable-Synthese.

 Die meisten Soundkarten bieten Mixen. Hiermit werden Signale aus
 unterschiedlichen Eingangsquellen kombiniert und die Lautst�rken
 kontrolliert.

 MIDI bedeutet Musical Instrument Digital Interface (Digitale
 Schnittstelle f�r Musikinstrumente). Es ist ein standardisiertes
 Hardware- und Software-Protokoll, mit dem Musikinstrumente miteinander
 kommunizieren k�nnen. Die Ereignisse, die �ber den Midi-Bus geschickt
 werden, k�nnen auch als MIDI-Dateien gespeichert und sp�ter ver�ndert
 und abgespielt werden. Viele Soundkarten besitzen eine MIDI-
 Schnittstelle. Diejenigen, die keine Schnittstelle besitzen, k�nnen
 trotzdem �ber die eingebauten F�higkeiten MIDI-Dateien abspielen.

 MOD-Dateien sind ein h�ufiges Format f�r computererzeugte Lieder.
 Diese Dateien enthalten sowohl Informationen �ber die Noten als auch
 digitalisierte Samples f�r die Instrumente (oder Stimmen). MOD-Dateien
 kommen urspr�nglich vom Amiga, k�nnen aber auf anderen Systemen, unter
 anderem Linux, mit geeigneter Software abgespielt werden.


 3.  Unterst�tzte Hardware


 Dieser Abschnitt listet die Soundkarten und -schnittstellen auf, die
 momentan von Linux unterst�tzt werden. Die Informationen basieren auf
 den neuesten Linuxkerneln zum Zeitpunkt des Schreibens.

 Der Soundtreiber hat seine eigenen Versionsnummern. Der aktuelle
 stabile Linux-Kernel ist 2.0.18 mit dem Soundtreiber 3.5.4-960630.

 Der Autor des Soundtreiber, Hannu Savolainen gibt normalerweise neuere
 Betaversionen des Soundtreibers als Kernelpatches heraus, bevor sie in
 die Standard-Kerneldistribution integriert werden.

 Diese Informationen sind nur auf Linux auf Intel-Plattformen
 anwendbar.  Einige Informationen k�nnten auf andere Architekturen
 �bertragbar sein, aber der Autor wei� dar�ber nichts.


 3.1.  Soundkarten


 Die folgenden Soundkarten werden vom Linux-Kernel Soundtreiber
 unterst�tzt:


 �  ATI Stereo F/X

 �  AdLib

 �  Ensoniq SoundScape (und Kompatible von Reveal und Spea)

 �  Gravis Ultrasound

 �  Gravis Ultrasound ACE

 �  Gravis Ultrasound Max

 �  Gravis Ultrasound mit 16-Bit-Samplingoption

 �  Logitech Sound Man 16

 �  Logitech SoundMan Games

 �  Logitech SoundMan Wave

 �  MAD16 Pro (OPTi 82C929)

 �  Media Vision Jazz16

 �  MediaTriX AudioTriX Pro

 �  Microsoft Windows Sound System (MSS/WSS)

 �  Mozart (OAK OTI-601)

 �  Orchid SW32

 �  Personal Sound System (PSS)

 �  Pro Audio Spectrum 16

 �  Pro Audio Studio 16

 �  Pro Sonic 16

 �  Roland MPU-401 MIDI Interface

 �  Sound Blaster 1.0

 �  Sound Blaster 16

 �  Sound Blaster 16ASP

 �  Sound Blaster 2.0

 �  Sound Blaster AWE32

 �  Sound Blaster Pro

 �  TI TM4000M notebook

 �  ThunderBoard

 �  Turtle Beach Tropez

 �  Yamaha FM Synthesizer (OPL2, OPL3 und OPL4)

 �  6850 UART MIDI Interface

 Die folgenden Karten werden nicht unterst�tzt, entweder weil sie
 veraltet sind oder weil der Hersteller die Programmierinformationen
 nicht freigibt, die f�r einen Treiber ben�tigt werden:


 �  Pro Audio Spectrum (Original)

 �  Pro Audio Spectrum+

 �  �ltere (auf Sierra Aria basierende) Soundkarten von Diamond

 Karten mit einem Plug&Play-Protokoll werden momentan nicht
 unterst�tzt, dies ist aber geplant.

 Andere Soundkarten, die angeblich mit einer der unterst�tzten
 Soundkarten kompatibel sind, k�nnen funktionieren, wenn sie Hardware-
 (also Register-) kompatibel sind. Einige Karten, die als "100%
 SoundBlaster kompatibel" beschrieben werden, sind nicht Register-
 kompatibel.  Einige Tips, wie kompatible Karten zum Laufen gebracht
 werden k�nnen, finden sich sp�ter im Text. Wer eine Karte besitzt, die
 funktioniert und nicht in der Liste aufgef�hrt ist, m�ge dies dem
 Autor mitteilen.

 Der Linux-Kernel unterst�tzt den SCSI-Port auf einigen Soundkarten
 (z.B. ProAudioSpectrum 16) und die Schnittstelle f�r einige CD-ROM
 Laufwerke (z.B. Soundblaster Pro). Siehe dazu die Linux SCSI HOWTO und
 die CDROM HOWTO.

 Es gibt ein ladbares Kernelmodul, das Joystickports unterst�tzt, auch
 die auf einigen Soundkarten.

 Hinweis: Die SCSI-, CD-ROM-, Joystick- und Soundtreiber sind v�llig
 unabh�ngig von einander.

 F�r die aktuellsten Informationen �ber den Soundtreiber sollte man
 Hannu Savolainen's Homepage besuchen, die im Referenzabschnitt
 aufgef�hrt wird.


 3.2.  Alternative Soundtreiber


 Es gibt einige "inoffizielle" Soundtreiber, die nicht in der Standard-
 Kerneldistribution enthalten sind und statt eines Standardtreibers
 verwendet werden.

 Eine kommerzielle Version des Linux Soundtreibers wird von 4Front
 Technologies vertrieben. Er bietet einige weitere F�higkeiten als die
 kostenlose Version, die zum Linuxkernel geh�rt. Weitere Informationen
 findet man auf der Webseite 4Front Technologies http://www.4front-
 tech.com/.

 Markus Mummert ([email protected]) hat ein Treiberpaket
 f�r die Turtle Beach MultiSound (klassisch), Tahiti und Monterey-
 Sounkarten geschrieben. Die Dokumentation sagt:


      Er wurde f�r qualitativ hochwertiges Aufnehmen/Abspielen auf
      der Festplatte entwickelt, ohne da� selbst auf einem
      belasteten System  Timingprobleme auftreten. Andere
      F�higkeiten, wie Wavesynthese, MIDI und der digitale Signal�
      prozessor (DSP) k�nnen nicht genutzt werden. Er ersetzt zur
      Zeit VoxWare und wurde mit mehreren Kernelversionen von
      1.0.9 bis 1.2.1 getestet. Er ist auch auf UN*X
      SysV386R3.2-Systemen installierbar."


 Er ist bei http://www.cs.colorado.edu/~mccreary/tbeach erh�ltlich.

 Kim Burgaard ([email protected]) hat einen Devicetreiber und
 Utilities f�r die Roland MPU-401 MIDI-Schnittstelle entwickelt. In der
 Linux Softwaremap steht folgende Beschreibung:


      "Ein Devicetreiber f�r echt Roland MPU-401 kompatible MIDI-
      Schnittstellen (unter anderem Roland SCC-1 und
      RAP-10/ATW-10).  Kommt mir einer sinnvollen Sammlung von
      Utilities, dabei ein Standard-MIDI-Abspieler und -rekorder."



      Seit der Version 0.11a wurden zahlreiche Verbesserungen
      vorgenommen. Unter anderem hat der Treiber jetzt IRQ-Sharing
      und stimmt mit der neuen Kernel-Modulschnittstelle �berein.
      Metronom, Synchronisationsm�glichkeiten, z.B. Grafiken auf
      einer Schlag/Minute-Basis ohne Pr�zisionsverlust,
 fortgeschrittene Abspiel/Aufnahme/Nachvertonungs-
 Schnittstelle und viel, viel mehr."


 Er ist bei metalab.unc.edu:/pub/Linux/kernel/sound/mpu401-0.2.tar.gz
 erh�ltlich.


 3.3.  PC-Lautsprecher


 Es gibt einen alternativer Soundtreiber, der ohne zus�tzliche Hardware
 auskommt; er verwendet den internen PC-Lautsprecher. Er ist zum
 gr��ten Teil Software-kompatibel mit dem Soundkartentreiber, liefert
 aber, wie erwartet, eine wesentlich schlechtere Qualit�t und
 verbraucht mehr CPU-Leistung. Die Ergebnisse sind unterschiedlich,
 abh�ngig vom verwendeten Lautsprecher.  Weitere Informationen finden
 sich in der Dokumentation der Treibers.

 Die aktuelle Version ist 0.9b und ist bei ftp.informatik.hu-
 berlin.de:/pub/os/linux/hu-sound/ erh�ltlich.


 3.4.  Parallele Schnittstelle


 Eine andere M�glichkeit besteht darin, mit Hilfe der
 Druckerschnittstelle und einigen weiteren Bestandteilen einen Digital-
 Analog-Wandler zu bauen. Das bietet eine bessere Klangqualit�t als der
 PC-Lautsprecher, kostet aber immer noch viel Prozessorleistung.  Das
 oben genannte PC-Soundtreiberpaket unterst�tzt dies und liefert eine
 Anleitung, um die n�tige Hardware zu bauen.


 4.  Installation


 Die Konfiguration der Soundunterst�tzung von Linux l�uft in folgenden
 Schritten ab:


 1. Installation der Soundkarte

 2. Konfiguration und Compilierung des Kernels f�r Soundunterst�tzung

 3. Erstellung der Devicedateien

 4. Booten von Linux und Test der Installation

 Die n�chsten Abschnitte behandeln jeden dieser Schritte detailiert.


 4.1.  Installation der Soundkarte


 Man folge der Anleitung der Soundkarte oder lasse sie vom H�ndler
 einbauen.

 �ltere Soundkarten besitzen �blicherweise Schalter oder Jumper, um
 IRQ, DMA-Kanal u.�. einzustellen; man merke sich die verwendeten
 Einstellungen. Im Zweifelsfall sollten die Standardeinstellungen
 verwendet werden. Dabei sind Konflikte mit anderen Karten (z.B.
 Ethernetkarten, SCSI-Controller, serielle und parallele
 Schnittstellen) zu vermeiden.


 4.2.  Konfiguration des Kernels


 Bei der ersten Installation von Linux wurde vermutlich ein
 vorcompilierter Kernel verwendet. Diese Kernel bieten normalerweise
 keine Soundunterst�tzung.  Am besten compiliert man den Kernel selbst
 mit den ben�tigten Treibern neu. Es bietet sich auch an, den Kernel
 neu zu compilieren, wenn man auf eine neuere Version umsteigen will
 oder Speicher sparen will, indem die Gr��e des Kernels verringert
 wird.

 Die Linux Kernel HOWTO liefert genauere Informationen, wie ein Kernel
 compiliert wird. Hier werden nur einige Punkte, die spezifisch f�r
 Soundkarten sind, erw�hnt.

 Wer noch nie einen Kernel mit Soundunterst�tzung compiliert hat,
 sollte alle Readme-Dateien f�r die Kernel-Soundtreiber lesen,
 besonders Informationen f�r die jeweilige Soundkarte. Die folgenden
 Dokumentationen befinden sich im Verzeichnis der Kernel-Soundtreiber,
 meistens in /usr/src/linux/drivers/sound:


 CHANGELOG         - Beschreibung der �nderungen in jedem Release
 COPYING           - Kopier- und Copyright-Einschr�nkungen
 Readme            - aktuellste und wichtigste Neuigkeiten
 Readme.aedsp16    - Informationen �ber die Audio Excel DSP 16 Soundkarte
 Readme.cards      - Hinweise f�r spezielle Soundkarten
 Readme.linux      - Hinweise zur Installation separater Soundtreiber
 Readme.v30        - Neue F�higkeiten des Soundtreibers Version 3.0
 experimental.txt  - Hinweise auf experimentelle F�higkeiten



 Nun folge man den �blichen Vorgehensweisen, um den Kernel zu
 compilieren.  Momentan gibt es drei M�glichkeiten der Konfiguration.
 "make xconfig" liefert eine grafische Benutzerschnittstelle unter X11,
 ein Men�system im Textmodus ergibt "make menuconfig". Im weiteren wird
 von der traditionellen Kommandozeilen-Konfiguration mit "make config"
 ausgegangen, der Proze� ist aber in jedem Fall gleich.

 Es ist auch m�glich, den Soundtreiber als ein ladbares Modul zu bauen.
 Es wird empfohlen, zuerst den Treiber fest in den Kernel zu
 compilieren.  Sobald alles funktioniert kann er als Modul verwendet
 werden.

 Wenn man make config aufruft, wird die Soundunterst�tzung aktiviert,
 indem mit "y" auf die Frage



      Sound card support (CONFIG_SOUND) [M/n/y/?]




 geantwortet wird.

 Am Ende der Konfigurationsfragen wird ein Soundkonfigurationsprogramm
 compiliert und ausgef�hrt, das dann nach den Soundoptionen fragt.  Bei
 der Beantwortung dieser Fragen sollte man sehr vorsichtig sein, denn
 eine falsch beantwortete Frage kann dazu f�hren, da� sp�tere Fragen
 nicht gestellt werden. Zum Beispiel darf man nicht mit "y" auf die
 erste Frage (PAS16) antworten, wenn man keine PAS16 besitzt. Man
 sollte auch nicht mehr Treiber aktivieren, als man wirklich braucht,
 sie verschwenden nur Speicher. Au�erdem k�nnen einige Treiber (wie
 MPU401) einen Konflikt mit dem SCSI-Controller verursachen, der das
 Booten des Kernels verhindern kann.

 Im folgenden findet sich eine kurze Beschreibung jeder Dialogoption.
 Man beantworte jede Frage mit "y" (ja) oder "n" (nein).  Die
 Standardvorgabe ist gro� markiert, d.h. "[Y/n/?]" bedeutet "y" als
 Standard und umgekehrt "[N/y/?]" "n".  Um die Standardwerte zu
 verwenden, reicht es, einfach Enter zu dr�cken, aber diese sind nicht
 unbedingt korrekt.

 Die Eingabe von "?" liefert eine kurze Beschreibung der Option.

 Man beachte, da� evtl. nicht alle Fragen gestellt werden. Abh�ngig von
 fr�heren Einstellungen kann das Konfigurationsprogramm einige Fragen
 �berspringen oder auch einige Einstellungen automatisch w�hlen.



    Old configuration exists in /etc/soundconf. Use it [Y/n/?]
       Wenn man den Kernel schon einmal mit Soundunterst�tzung
       compiliert hat, kann die vorherige Konfiguration gesichert
       werden. Wenn man diese verwenden will, antworte man mit "y. Will
       man eine andere Konfiguration ausprobieren oder auf einen neuen
       Kernel umgestiegen ist, sollte man "n" antworten und den
       Konfigurationsproze� durchlaufen.


    ProAudioSpectrum 16 support [Y/n/?]
       Man antworte "y" nur dann, wenn man wirklich eine Pro Audio
       Spectrum 16, ProAudio Studio 16 oder Logitech SoundMan 16
       besitzt. Man darf nicht mit "y" antworten, wenn man eine andere
       Karte von Media Vision oder Logitech besitzt, denn diese sind
       nicht PAS16-kompatible.


    SoundBlaster support [Y/n/?]
       Wenn man eine original Soundblaster-Karte von Creative Labs oder
       einen 100% hardwarekompatiblen Klon (wie die Thunderboard oder
       SM Games) besitzt, sollte man hier "y" antworten. Wenn die Karte
       in der Liste der unterst�tzten Karten steht, sehe man in die
       Readme.cards, bevor man diese Frage beantwortet. Eine unbekannte
       Karte k�nnte mit "y" funktionieren, wenn sie SoundBlaster-
       kompatibel sein soll.


    Gravis Ultrasound support [Y/n/?]
       Man antworte mit "y", wenn man eine GUS oder GUS MAX hat.
       Ansonsten unbedingt "n" antworten, die dieser Treiber viel
       Speicher verbraucht.


    MPU-401 support (NOT for SB16) [Y/n/?]
       Mit dieser Frage mu� man sehr vorsichtig sein. Die MPU-401
       Schnittstelle wird von fast allen Soundkarten unterst�tzt.
       Allerdings haben einige direkt unterst�tzte Soundkarten ihren
       eigenen Treiber f�r MPU-401. Wenn man bei diese Karten die
       MPU-401 Unterst�tzung aktiviert, erzeugt man einen Konflikt.  Es
       kann auch Probleme bringen, wenn man MPU-401 aktiviert, obwohl
       man �berhaupt keine MPU-401 Schnittstelle im System hat. Wenn
       die Karte in der Liste der unterst�tzten Karten steht, liefert
       Readme.cards weitere Informationen. Es gibt keine Probleme, mit
       "y" zu antworten, wenn man eine wirkliche MPU-401 MIDI
       Schnittstellenkarte hat.


    6850 UART Midi support [Y/n/?]
       Es ist sicher, immer mit "n" zu antworten. Die 6850 UART-
       Schnittstelle wird sehr selten verwendet.


    PSS (ECHO-ADI2111) support [Y/n/?]
       Man antworte "y" nur dann, wenn man eine Orchid SW32, Cardinal
       DSP16 oder eine andere Karte besitzt, die auf dem PSS-Chipsatz
       (AD1848 codec + ADSP-2115 DSP Chip + Echo ESC614 ASIC CHIP)
       basiert.


    16 bit sampling option of GUS (not GUS MAX) [Y/n/?]
       Hier sollte man mit "y" antworten, wenn man die 16bit-Sampling-
       Tochterkarte f�r die GUS hat. Besitzt man eine GUS MAX, antworte
       man mit "n", diese Option deaktiviert die GUS MAX-Unterst�tzung.


    GUS MAX support [Y/n/?]
       Nur wenn man eine GUS MAX besitzt, sollte man mit "y" antworten.


    Microsoft Sound System support [Y/n/?]
       Man sollte wieder gr�ndlich nachdenken, bevor man "y" antwortet.
       Es ist sicher, mit "y" zu antworten, wenn man die original
       Microsoft Windows Sound System-Karte oder die Aztech SG 16 Pro
       (oder NX16 Pro) verwendet. Man kann auch mit "y" antworten, wenn
       die Karte nicht weiter oben in dieser Datei aufgef�hrt wurde.
       F�r Karten, die VoxWare-Unterst�tzung besitzen, lese man die
       Readme.cards. Einige Treiber haben ihre eigene MSS-
       Unterst�tzung, es gibt einen Konflikt, wenn man dann diese
       Option aktiviert.


    Ensoniq Soundscape support [Y/n/?]
       Man antworte mit "y", wenn man eine Soundkarte, die auf dem
       Ensoniq SoundScape-Chipsatz basiert. Solche Karten werden
       zumindest von Ensoniq, Spea und Reveal (Reveal stellt auch
       andere Karten her) hergestellt.


    MediaTriX AudioTriX Pro support [Y/n/?]
       Man antworte mit "y", wenn man die AudioTriX Pro hat.


    Support for MAD16 and/or Mozart based cards?
       Man antworte mit "y", wenn die Karte einen Mozart (OAK OTI-601)
       oder MAD16 (OPTi 82C928 oder 82C929) Audiointerfacechip besitzt.
       Diese Karten sind momentan ziemlich h�ufig, so da� viele NoName-
       Karten einen dieser Chips haben. Au�erdem wird der MAD16-Chip in
       einigen Karten von bekannten Herstellern verwendet, wie Turtle
       Beach (Tropez), Reveal (einige Modelle) und Diamond (die
       aktuellsten).


    Support for Crystal CS4232 based (PnP) cards [Y/n/?]
       Wenn man eine Karte mit dem Crystal CS4232-Chipsatz hat, sollte
       man hier mit "y" antworten.


    Support for Turtle Beach Wave Front (Maui, Tropez) synthesizers
       [Y/n/?]"  Hat man eine dieser Karten, so antworte man mit "y".


    SoundBlaster Pro support [Y/n/?]
       Man aktiviere diese Option, wenn man eine SoundBlaster Pro oder
       SoundBlaster 16 oder einen SoundBlaster Pro-Klon besitzt. "n"
       spart etwas Speicher, aber "y" ist die sichere Alternative.
    SoundBlaster 16 support [Y/n/?]
       Diese Option sollte man aktivieren, wenn man einen SoundBlaster
       16 (auch AWE32) besitzt.


    Audio Excel DSP 16 initialization support [Y/n/?]
       Man aktiviere dies, wenn man eine Audio Excel DSP16-Karte
       besitzt.  Siehe Readme.aedsp16.


 Das Konfigurationsprogramm stellt dann einige Fragen �ber Dienste auf
 einer h�heren Stufe. Es wird empfohlen, auf jede dieser Fragen mit "y"
 zu antworten.



    /dev/dsp and /dev/audio support (usually required) [Y/n/?]
       "n" deaktiviert /dev/dsp und /dev/audio, die Devices zur A/D-
       und D/A-Wandlung.


    MIDI interface support [Y/n/?]
       "n" deaktiviert die /dev/midixx Devices und den Zugriff auf alle
       MIDI-Ports mit /dev/sequencer und /dev/music. Diese Option
       betrifft auch alle MPU401- und/oder General MIDI-kompatiblen
       Devices.


    FM synthesizer (YM3812/OPL-3) support [Y/n/?]
       Hier sollte mit "y" geantwortet werden.


    /dev/sequencer support [Y/n/?]
       "n" deaktiviert /dev/sequencer und /dev/music.


    Do you want support for the mixer of SG NX Pro ?
       Hier antworte man mit "y", wenn man eine Sound Galaxy NX Pro
       besitzt und Unterst�tzung f�r ihre erweiterten Mixerfunktionen
       will.


    Do you want support for the MV Jazz16 (ProSonic etc.) ?
       Man antworte mit "y", wen man eine MV Jazz16 Soundkarte besitzt.


    Do you have a Logitech SoundMan Games [Y/n/?]
       Man antworte mit "y", wenn man eine Logitech SoundMan Games
       Soundkarte besitzt.


 Nach diesen Fragen fragt das Konfigurationsprogramm nach den
 kartenspezifischen Konfigurationsinformationen. �blicherweise wird nur
 nach I/O-Adresse, IRQ und DMA gefragt. Bei einigen Karten fragt das
 Programm nach Dateien, die w�hrend der Initialisierung der Karte
 verwendet werden. Diese werden von Karten verwendet, die einen DSP-
 Chip oder Mikroprozessor haben, der initialisiert werden mu�, indem
 ein Programm (Microcode) in die Karte geladen wird. In einigen F�llen
 wird dieses Programm vom Konfigurationsprogramm in eine .h-Datei
 geschrieben und w�hrend der Compilierung in den Treiber eingef�gt.
 Wiederum stehen weitere Informationen in der Datei Readme.cards.

 Am Ende wird gefragt:



 The sound driver is now configured.
 Save copy of this configuration to /etc/soundconf [Y/n/?]




 Normalerweise wird hier "y" geantwortet, so da� man beim sp�teren
 neuen Compilieren die gleiche Konfiguration verwendet werden kann.

 Wenn man von einem �lteren Soundtreiber aufsteigt, mu� man darauf
 achten, da� die Dateien /usr/include/sys/soundcard.h und
 /usr/include/sys/ultrasound.h symbolische Links auf die entsprechenden
 Dateien in /usr/include/linux sind, oder da� sie nur die Zeilen
 #include <linux/soundcard.h> beziehungsweise #include
 <linux/ultrasound.h> enthalten.

 Jetzt ist alles zum Compilieren und Installieren des Kernels bereit.


 4.3.  Erstellung der Devicedateien


 Wenn der Kernelsoundtreiber zum ersten mal konfiguriert wird, m�ssen
 noch die Sound-Devicedateien erstellt werden. Am einfachsten geschieht
 dies, indem das kurze Shellscript am Ende von Readme.linux in das
 Verzeichnis /usr/src/linux/drivers/sound ausgeschnitten wird und als
 root ausgef�hrt wird.

 Wenn die Deviceeintr�ge schon existieren, kann das Script trotzdem
 ausgef�hrt werden, wenn man nicht sicher ist, da� sie korrekt sind.

 Einige �ltere Linux-Distributionen installieren Scripte, die falsche
 Sound-Devicedateien erstellen. Es kann auch ein Script /dev/MAKEDEV
 existieren, um Devicedateien zu erstellen. Es ist vorteilhafter, das
 Script aus dem Kernel-Soundtreiber zu verwenden, da es immer aktuell
 ist.

 Nach der Ausf�hrung des Scripts sollten die Sound-Devicedateien in
 etwa so aussehen:


 lrwxrwxrwx   1 root        11 Aug 22 00:01 audio -> /dev/audio0
 crw-rw-rw-   1 root   14,   4 Aug 22 00:01 audio0
 crw-rw-rw-   1 root   14,  20 Aug 22 00:01 audio1
 lrwxrwxrwx   1 root         9 Aug 22 00:01 dsp -> /dev/dsp0
 crw-rw-rw-   1 root   14,   3 Aug 22 00:01 dsp0
 crw-rw-rw-   1 root   14,  19 Aug 22 00:01 dsp1
 crw-rw-rw-   1 root   14,   2 Aug 22 00:01 midi00
 crw-rw-rw-   1 root   14,  18 Aug 22 00:01 midi01
 crw-rw-rw-   1 root   14,  34 Aug 22 00:01 midi02
 crw-rw-rw-   1 root   14,  50 Aug 22 00:01 midi03
 crw-rw-rw-   1 root   14,   0 Aug 22 00:01 mixer
 crw-rw-rw-   1 root   14,  16 Aug 22 00:01 mixer1
 crw-rw-rw-   1 root   14,   8 Aug 22 00:01 music
 crw-rw-rw-   1 root   14,  17 Aug 22 00:01 patmgr0
 crw-rw-rw-   1 root   14,  33 Aug 22 00:01 patmgr1
 crw-rw-rw-   1 root   14,   1 Aug 22 00:01 sequencer
 lrwxrwxrwx   1 root        10 Aug 22 00:01 sequencer2 -> /dev/music
 crw-rw-rw-   1 root   14,   6 Aug 22 00:01 sndstat



 Besondere Aufmerksamkeit sollte den Devicenamen und den "major" und
 "minor" Devicenummern gelten, die in der 4. und 5. Spalte aufgef�hrt
 werden.

 Wer den PC-Lautsprecher-Treiber verwendet, sollte die Dokumentation in
 diesem Paket lesen, um zu erfahren, welche Devicedateien erstellt
 werden m�ssen.

 Normalerweise sollte die Konfiguration bei der Erstellung der Kernels
 f�r den Soundkartentreiber geeignet sein. Es ist auch m�glich, �ber
 die Kernel-Kommandozeile (z.B. mit LILO) Parameter an den den
 Soundtreiber zu �bergeben. Diese werden in der Datei Readme.linux
 definiert. Es ist nur selten notwendig, diese zu verwenden. Sie sind
 haupts�chlich daf�r gedacht, einen Kernel f�r Bootdisketten zu
 erstellen, die viele verschiedenen Soundkarten unterst�tzen.


 4.4.  Booten von Linux und Testen der Installation


 Jetzt sollte alles bereit sein, um den neuen Kernel zu booten und die
 Soundtreiber zu testen. Man folge der �blichen Vorgehensweise, um den
 Kernel zu installieren und neu zu booten (man sollte den alten Kernel
 aufheben, falls es Probleme gibt).

 W�hrend des Bootens sollte man auf eine �hnliche Nachricht wie die
 folgende achten (wenn sie zu schnell vorbei scrollen, kann man sie
 auch sp�ter mit dmesg lesen):



      snd2 <SoundBlaster Pro 3.2> at 0x220 irq 5 drq 1
      snd1 <Yamaha OPL-3 FM> at 0x388 irq 0 drq 0




 Das sollte mit der verwendeten Soundkarte und Jumpereinstellung
 �bereinstimmen.

 Der Treiber k�nnte auch einige Fehler oder Warnungen anzeigen. Darauf
 sollte man nach beim ersten Booten achten.

 Als n�chsten sollte man die Datei /dev/sndstat �berpr�fen.  Die
 Soundtreiber-Statusdatei sollte weitere Informationen dar�ber liefern,
 ob der Treiber richtig initialisiert wurde. Die Ausgabe sollte in etwa
 so aussehen:























 % cat /dev/sndstat
 Sound Driver:3.5.2-960330 (Tue  4 16:31:10 EDT 1996 root,
 Linux fizzbin 2.0.0 #1 Mon Jun 3 16:59:37 EDT 1996 i386)
 Kernel: Linux fizzbin 2.0.0 #1 Tue Jun 4 16:57:55 EDT 1996 i386
 Config options: a80002

 Installed drivers:
 Type 1: OPL-2/OPL-3 FM
 Type 2: SoundBlaster
 Type 6: SoundBlaster 16bit
 Type 7: SB MPU

 Card config:
 SoundBlaster at 0x220 irq 5 drq 1,5
 OPL-2/OPL-3 FM at 0x388 irq 0 drq 0

 Audio devices:
 0: SoundBlaster Pro 3.2

 Synth devices:
 0: Yamaha OPL-3

 Midi devices:
 0: SoundBlaster

 Timers:
 0: System clock

 Mixers:
 0: SoundBlaster




 Jetzt ist alles bereit, um eine einfache Sounddatei abzuspielen.  Man
 suche sich eine Beispielsdatei und sende sie zum Sounddevice als
 grundlegenden Test der Soundausgabe, z.B.



      % cat endoftheworld >/dev/dsp
      % cat crash.au >/dev/audio




 (Man achte darauf, da� man nicht das ">" vergi�t).

 Einige Beispielsdateien sind bei
 tsx-11.mit.edu:/pub/linux/packages/sound/snd-data-0.1.tar.Z
 erh�ltlich.

 Jetzt kann die Aufnahme �berpr�ft werden. Wenn man die M�glichkeit zur
 Aufnahme hat, kann man einen schnellen Test machen, indem man
 folgendes eingibt:



      # 4 Sekunden Audio vom Mikrofon aufnehmen
      EDT% dd bs=8k count=4 </dev/audio >sample.au
      4+0 records in
      4+0 records out
      # Sound wieder abspielen
      % cat sample.au >/dev/audio


 Nat�rlich braucht man hierf�r ein Mikrofon, das an die Soundkarte
 angeschlossen sein mu� und man sollte in es sprechen. Evtl. braucht
 man auch ein Mixerprogramm, um das Mikrofon als Eingabeger�t
 einzustellen und die Verst�rkung einzustellen.

 Wenn diese Tests gelingen, ist es sehr wahrscheinlich, da� die
 Hardware und Software funktioniert. Bei Problemen lese man den
 n�chsten Abschnitt.


 4.5.  Fehlerbehebung


 Wenn es trotz der Anleitung immer noch Probleme gibt, sind hier einige
 Sachen zu �berpr�fen. Die Punkte sind in aufsteigender Komplexit�t
 aufgef�hrt. Wenn ein Test fehlschl�gt, ist zuerst das Problem zu
 l�sen, bevor mit dem n�chsten Punkt fortgefahren wird.


 4.5.1.  wird Schritt 1: �berpr�fen, ob wirklich der compilierte Kernel
 verwendet


 Man kann den Datumsstempel des Kernels �berpr�fen, um zu sehen, ob man
 den mit Soundunterst�tzung compilierten Kernel verwendet. Daf�r gibt
 es den uname-Befehl:



      % uname -a
      Linux fizzbin 2.0.0 #1 Tue Jun 4 16:57:55 EDT 1996 i386




 Die Information steht auch in der Datei /proc/version:



      % cat /proc/version
      Linux version 2.0.0 (root@fizzbin) (gcc version 2.7.0)
      #1 Tue Jun 4 16:57:55 EDT 1996




 Wer der Datumsstempel nicht mit der Zeit, als der Kernel compiliert
 wurde, �bereinstimmt, verwendet man einen alten Kernel. Wurde wirklich
 neu gebootet? Wenn LILO verwendet wird, wurde es neu installiert
 (�blicherweise durch /etc/lilo/install oder /sbin/lilo)? Wenn von
 einer Floppy gebootet wird, wurde eine neue Bootdiskette erstellt und
 beim Booten verwendet? Wenn mit LOADLIN von DOS aus gebootet wird,
 wurde der neue Kernel in das richtige DOS-Verzeichnis kopiert?


 4.5.2.  Schritt 2: �berpr�fen, ob die Soundtreiber eincompiliert wur�
 den


 Man kann sehen, welche Treiber eincompiliert sind, indem man
 /proc/devices betrachtet:





 % cat /proc/devices
 Character devices:
  1 mem
  4 tty
  5 cua
  6 lp
 14 sound
 15 Joystick

 Block devices:
  2 fd
  3 hd
 25 sbpcd




 Hier sollte das "character device" 14 aufgef�hrt sein, genannt
 "sound".  Wenn das Sounddevice hier nicht steht, ging etwas bei der
 Kernelkonfiguration oder Erstellung schief. Man sollte den
 Installationsproze� neu starten, mit der Konfiguration und Erstellung
 des Kernels beginnend.


 4.5.3.  Schritt 3: Hat der Kernel die Soundkarte beim Booten erkannt?


 Man �berpr�fe, ob die Soundkarte beim Booten des Kernels erkannt
 wurde.  Man sollte beim Booten eine Nachricht sehen. Wenn die
 Nachrichten schon vom Bildschirm gescrollt sind, kann man sie mit dem
 dmesg- Befehl betrachten:



      % dmesg




 oder



      % tail /var/adm/messages




 Wenn die Soundkarte nicht gefunden wurde, ist etwas falsch. Als erstes
 sollte man �berpr�fen, ob sie wirklich installiert ist. Wenn die
 Soundkarte unter DOS funktioniert, ist es vermutlich ein Problem mit
 der Kernelkonfiguration. Entweder die Soundkarte wurde als falscher
 Typ oder mit den falschen Parametern konfiguriert oder die Soundkarte
 ist nicht mit einem der Soundkartentreiber kompatibel.

 Eine M�glichkeit besteht darin, da� die Soundkarte eine der
 "kompatiblen" ist, die durch einen DOS-Treiber initialisiert werden
 m�ssen. Man kann versuchen, DOS zu booten und den vom Hersteller
 gelieferten Treiber zu laden. Dann sollte Linux weich gebootet werden
 (mit Strg-Alt-Entf).  Man achte darauf, da� die I/O-Adresse, DMA- und
 IRQ-Einstellungen die gleichen f�r Linux wie f�r DOS sind. Siehe auch
 Readme.cards.

 Wenn die Soundkarte nicht in diesem Dokument aufgef�hrt ist, ist es
 m�glich, da� die Linuxtreiber sie nicht unterst�tzen. Man kann einige
 der Referenzen am Ende dieses Dokuments nach Hilfe absuchen.
 4.5.4.  Schritt 4: Kann man Daten vom dsp-Device lesen?


 Man versuche, vom /dev/audio-Device mittels dd zu lesen (siehe oben).
 Der Befehl sollte ohne Fehler ablaufen.

 Wenn das nicht funktioniert, ist eine m�gliche Fehlerursache die
 Devicedatei. Die Devicedateien im /dev-Verzeichnis m�ssen die
 richtigen major und minor Nummern haben (wie weiter oben aufgef�hrt).
 Die Permissions m�ssen Lesen und Schreiben erlauben.

 Eine seltene Fehlerursache ist ein Hardware-Problem. Wenn m�glich,
 sollte die Karte unter DOS getestet werden.


 4.5.5.  Wenn alles andere fehlschl�gt


 Wenn immer noch Probleme vorliegen, sind hier einige letzte
 Ratschl�ge:


 �  Die HOWTO nochmal gr�ndlich lesen

 �  Die Referenzen, die am Ende dieses Dokuments aufgelistet sind,
    lesen, besonders die relevanten Readme-Dateien der Kernelsourcen

 �  Eine Frage in die de.comp.os.linux.* oder andere Usenet-Newsgroup
    oder in das Fidoecho LINUX.GER posten.

 �  Eine Frage an den Soundkanal der Linux-Mailinglist schicken

 �  Den aktuellsten Kernel verwenden

 �  Den Computerh�ndler fragen

 �  Den Hersteller der Soundkarte fragen

 �  Dem Autor des Soundtreibers eine Frage schreiben

 �  Dem Autor der Sound-HOWTO eine Frage schreiben

 �  Emacs starten und Esc-x doctor eingeben


 5.  Anwendungen, die Sound unterst�tzen


 Hier folgen einige Beispiele f�r Anwendungen, die man wahrscheinlich
 verwenden m�chte, wenn man eine Soundkarte unter Linux hat. Man kann
 die Linux Software Map, Internet-Server und/oder Dateien auf einer
 Linux CD-ROM �berpr�fen, um aktuellere Informationen zu erhalten.

 Als absolutes Minimum sollte man folgende Anwendungen besorgen:


 �  eine Audio-Dateiumwandlungs-Utility (z.B. Sox)

 �  ein Mixerprogramm (z.B. aumix oder xmix)

 �  ein Abspiel-/Aufnahmeprogramm f�r digitalisierte Sounds (z.B.  play
    oder wavplay)

 �  ein MOD-Abspieler (z.B. tracker)


 �  ein MIDI-Abspieler (z.B. mp)

 Von den meisten dieser Programme gibt es sowohl Text- als auch GUI-
 basierte Versionen. Es gibt auch einige esotherischere Anwendungen
 (z.B. Spracherzeugung und -erkennung), die man testen kann.


 6.  Antworten auf h�ufig gestellte Fragen (FAQ)


 Dieser Abschnitt beantwortet die meisten der h�ufig im Usenet
 gestellten Fragen.


 6.1.  Was bedeuten die verschiedenen Sound-Devicedateien?


 Diese sind die "Standard"-Dateinamen, einige Linuxdistributionen
 k�nnten leicht abweichende Namen verwenden.


    /dev/audio
       normalerweise eine Link auf /dev/audio0

    /dev/audio0
       Sun Workstation-kompatibles Audiodevice (nur eine l�ckenhafte
       Implementierung, unterst�tzt nicht das ioctl-Interface von Sun,
       nur u-law-Codierung)

    /dev/audio1
       zweites Audiodevice (wenn von der Soundkarte unterst�tzt)

    /dev/dsp
       normalerweise ein Link auf /dev/dsp0

    /dev/dsp0
       erstes digitales Sampling-Device

    /dev/dsp1
       zweites digitales Sampling-Device

    /dev/mixer
       Soundmixer

    /dev/mixer1
       Zweiter Soundmixer

    /dev/music
       Schnittstelle zum Sequencer auf hoher Stufe

    /dev/patmgr0
       Patch Manager

    /dev/patmgr1
       Patch Manager

    /dev/sequencer
       MIDI, FM und GUS-Zugriff auf unterer Stufe

    /dev/sequencer2
       normalerweise eine Link auf /dev/music

    /dev/midi00
       erster reiner MIDI-Port


    /dev/midi01
       zweiter reiner MIDI-Port

    /dev/midi02
       dritter reiner MIDI-Port

    /dev/midi03
       vierter reiner MIDI-Port

    /dev/sndstat
       liefert den Status des Soundtreibers

 Der PC-Lautsprecher-Treiber verwendet die folgenden Devices:


    /dev/pcaudio
       �quivalent zu /dev/audio

    /dev/pcsp
       �quivalent zu /dev/dsp

    /dev/pcmixer
       �quivalent zu /dev/mixer


 6.2.  Wie kann man ein Soundsample abspielen?


 Sun Workstation (.au) Sounddateien k�nnen abgespielt werden, indem sie
 an das /dev/audio-Device geschickt werden. Reine Samples k�nnen an
 /dev/dsp geschickt werden. Ein Programm wie play erleichtert das
 Abspielen, da es die meisten Dateitypen korrekt erkennt und die
 Soundkarte auf die richtige Samplingrate etc. einstellt.


 6.3.  Wie kann ich ein Soundsample aufnehmen?


 /dev/audio oder /dev/dsp liefern gesamplete Daten, die in eine Datei
 umgeleitet werden k�nnen. Ein Programm wie vrec erleichtert die
 Kontrolle der Samplingrate, Dauer, etc. Evtl. ben�tigt man auch ein
 Mixerprogramm, um den entsprechende Eingang zu w�hlen.


 6.4.  Kann man mehr als eine Soundkarte haben?


 Bis zu zwei Soundkarten werden unterst�tzt. Es ist m�glich, eine
 Gravis Ultrasound oder MPU-401 mit einer SoundBlaster, SoundBlaster
 Pro, SoundBlaster 16 oder ProAudioSpectrum 16 zu verwenden. Man kann
 nicht gleichzeitig eine ProAudioSpectrum und einen SoundBlaster
 verwendet (die PAS16 besitzt einen SoundBlaster-Emulation). Es ist
 auch nicht m�glich, mehr als eine Karte des gleichen Typs zu verwenden
 -- zum Beispiel ist eine GUS+GUS-Kombination nicht m�glich.

 Man kann die Konfiguration der Soundkarte zur Bootzeit �ndern, indem
 man mit Hilfe eines Bootladers wie LILO Kommandozeilenoptionen
 verwendet. Details hierzu stehen in Readme.linux.


 6.5.  Fehler: "No such file or directory" f�r Sounddevices


 Die Soundtreiber-Devicedateien m�ssen erstellt werden. Siehe den
 Abschnitt �ber die Erstellung der Devicedateien. Wenn die Dateien
 existieren, k�nnten die major und minor Devicenummern falsch sein
 (einige �ltere CD-ROM-Distributionen von Linux k�nnten nicht die
 richtigen Devicedateien erstellen).


 6.6.  Fehler: "No such device" f�r Sounddevices


 Es wurde nicht mit einem Kernel gebootet, der die Soundtreiber enth�lt
 oder die I/O-Adresse stimmt nicht mit der Hardware �berein. Man sollte
 �berpr�fen, ob der neu compilierte Kernel verwendet wird und ob die
 Eingaben bei der Konfiguration mit der Hardwareeinstellung
 �bereinstimmen.


 6.7.  Fehler: "No space left on device" f�r Sounddevices


 Dies kann passieren, wenn man versucht, Daten auf /dev/audio oder
 /dev/dsp aufzunehmen, ohne die notwendigen Devicedateien zu erzeugen.
 Das Sounddevice ist jetzt eine normale Datei und hat die Diskpartition
 gef�llt. Man mu� das im Abschnitt Erstellen der Devicedateien
 beschriebene Script ausf�hren.


 6.8.  Fehler: "Device busy" f�r Sounddevices


 Nur ein Proze� gleichzeitig kann ein Sounddevice �ffnen. Sehr
 wahrscheinlich verwendet ein anderer Proze� das entsprechende Device.
 Dieser kann mit dem Befehl fuser ermittelt werden:



      % fuser -v /dev/dsp
      /dev/dsp:             USER       PID ACCESS COMMAND
                            tranter    265 f....  tracker




 In diesem Beispiel zeigt fuser, da� Proze� 256 das Device ge�ffnet
 hat. Man kann das Sounddevice erst ansprechen, wenn dieser Proze�
 beendet ist oder gekillt wurde.


 6.9.  Es gibt immer noch Fehler "device busy"!


 Laut Brian Gough k�nnen SoundBlaster-Karten mit DMA-Kanal 1 einen
 Konflikt mit dem QIC-02 Bandtreiber, der ebenfalls DMA 1 benutzt,
 verursachen. Das erzeugt einen "device busy"-Fehler. Wer FTape
 verwendet, k�nnte dieses Treiber aktiviert haben. Laut FTape-HOWTO ist
 der QIC-02-Treiber nicht wichtig f�r FTape, nur der QIC-117-Treiber
 wird ben�tigt. Eine Neukonfiguration des Kernels, so da� der QIC-117-,
 aber nicht der QIC-02-Treiber verwendet wird, erlaubt es, gleichzeitig
 FTape und der Soundtreiber zu benutzen.

 (Die folgende Erkl�rung stammt von Harald Albrecht
 ([email protected]):

 Einige Soundkarten unterst�tzen den DMA-Kanal 0. Das
 Konfigurationsprogramm des Soundtreibers erlaubt dies und der Kernel
 compiliert einwandfrei, aber ein Zugriff auf das Sounddevice erzeugt
 einen "device busy"-Fehler.


 Der Grund daf�r besteht darin, da� der Linuxkernel den DMA-Kanal 0 f�r
 den DRAM-Refresh reserviert. Das ist f�r moderne 386/486er Boards
 unwichtig, sie verwenden ihre eigene Refreshlogik. Man kann es
 korrigieren, indem man diese Zeile in der Datei
 /usr/src/linux/kernel/dma.c �ndert:



      static volatile unsigned int dma_chan_busy[MAX_DMA_CHANNELS] = {
                      1, 0, 0, 0, 1, 0, 0, 0
      };




 Wenn man die erste 1 durch eine 0 ersetzt, aktiviert das den DMA-Kanal
 0.  Man darf das auf keinen Fall mit DMA-Kanal 4 machen, dieser wird
 cascadiert, das wird nicht funktionieren! Der Code sollte jetzt so
 aussehen:



      static volatile unsigned int dma_chan_busy[MAX_DMA_CHANNELS] = {
                      0, 0, 0, 0, 1, 0, 0, 0
      };




 Nun noch neu compilieren und mit dem neuen Kernel booten.


 6.10.  Digitalisierte Sounddateien werden nur teilweise abgespielt


 Das Symptom sieht �blicherweise so aus, da� ein Soundsample f�r etwa
 eine Sekunde abgespielt wird und dann komplett aufh�rt oder einen
 Fehler wegen "missing IRQ" oder "DMA timeout" ausgibt. Wahrscheinlich
 sind die IRQ- oder DMA-Einstellungen falsch. Man sollte �berpr�fen, ob
 die Kernelkonfiguration mit der Einstellung der Jumper auf der
 Soundkarte �bereinstimmt und keine Konflikte mit anderen Karten
 verursacht.

 Ein anderes Symptom sind Soundsamples, die in eine Endlosschleife
 geraten. Das wird normalerweise durch einen IRQ-Konflikt ausgel�st.


 6.11.  Es gibt Unterbrechungen beim Abspielen von MOD-Dateien


 Das Abspielen von MOD-Dateien verbraucht viel CPU-Leistung. Es k�nnten
 zu viele Prozesse laufen oder der Computer k�nnte zu langsam sein, um
 in Echtzeit abzuspielen. Die M�glichkeiten sind:



 �  mit einer niedrigeren Samplingrate oder in Mono abspielen

 �  andere Prozesse beenden

 �  einen schnelleren Computer kaufen

 �  eine leistungsf�higere Soundkarte (z.B. Gravis UltraSound) kaufen

 Wenn man eine Gravis UltraSound-Karte verwendet, sollte man einen der
 MOD-Abspieler f�r die GUS (z.B. gmod) verwenden.
 6.12.  Compilefehler beim Compilieren von Soundanwendungen


 Die Soundtreiber Version 1.0c und fr�her verwendeten einen anderes und
 inkompatibles ioctl()-Schema. Man ben�tigt neueren Sourcecode oder mu�
 die n�tigen Anpassungen f�r den neuen Soundtreiber selber vornehmen.
 Details befinden sich in der Readme-Datei des Soundtreibers.

 Au�erdem sollte man die neuesten Versionen von soundcard.h und
 ultrasound.h f�r die Compilierung der Anwendung verwenden. Siehe auch
 die Installationsanleitung am Anfang dieses Textes.


 6.13.  SEGV beim Aufruf von Soundprogrammen, die fr�her funktionierten


 Das ist wahrscheinlich das gleiche Problem wie in der vorherigen Frage
 beschrieben.


 6.14.  Welche bekannten Bugs oder Einschr�nkungen gibt es im
 Soundtreiber?


 Dies steht in den Dateien Readme und CHANGELOG, die den Soundtreiber-
 Sourcen beiliegen.


 6.15.  Wo sind die ioctls() etc. des Soundtreibers dokumentiert?


 Diese sind teilweise in der Hacker's Guide to VoxWare dokumentiert,
 die es momentan in Entwurfsform gibt. Die aktuellste Version ist
 Entwurf (draft) 2 und ist unter nic.funet.fi:/pub/OS/Linux/ALPHA/sound
 zu finden.  Hinweis: Das Directory ist "versteckt" und taucht nicht in
 Directory-Listings auf. Wenn man aber mit "cd" in das Directory
 wechselt und dann den FTP-Befehl "dir" verwendet, sind die Dateien da.

 Zum Zeitpunkt des Schreibens wurde neue Dokumentation auf der Webseite
 von 4Front Technologies bereitgestellt.

 Eine andere Informationsquelle ist die Linux Multimedia Guide, im
 Abschnitt Referenzen beschrieben.


 6.16.  Welche CPU-Ressourcen werden ben�tigt, um ohne Pausen abzuspie�
 len        oder aufzunehmen?


 Es gibt keine leichte Antwort auf diese Frage, denn sie h�ngt von
 folgendem ab:


 �  ob PCM Sampling oder FM Synthese verwendet wird

 �  Samplingrate und Samplegr��e

 �  welche Anwendung zum Abspielen oder Aufnehmen verwendet wird

 �  Soundkarten-Hardware

 �  Disk I/O-Geschwindigkeit, CPU-Taktfrequenz, Cachegr��e, etc.

 Generell gesagt sollte jeder 386er ausreichen, um Samples oder FM-
 Synthese auf einer 8bit-Soundkarte abzuspielen.

 Das Abspielen von MOD-Dateien erfordert hingegen beachtliche CPU-
 Ressourcen. Experimente haben ergeben, da� das Abspielen bei 44kHz
 mehr als 40% der Geschwindigkeit eines 486/50 verbraucht und ein
 386/25 kaum mehr als 22 kHz abspielen kann (diese Werte gelten f�r
 eine 8bit-Soundkarte wie die SoundBlaster). Eine Karte wie die Gravix
 UltraSound kann mehr Funktionen in der eigenen Hardware ausf�hren und
 braucht deshalb weniger CPU-Ressourcen.

 Diese Aussagen setzen voraus, da� der Computer keine anderen CPU-
 intensiven Aufgaben erledigt.

 Die Konvertierung von Sounddateien oder das Hinzuf�gen von Effekten
 mit einer Utility wie Sox ist wesentlich schneller, wenn man einen
 mathematischen Coprozessor verwendet. Der Kerneltreiber selber
 verwendet aber keine Flie�kommaoperationen.


 6.17.  Probleme mit einer PAS16 und einem Adaptec 1542 SCSI
 Hostadapter


 (Die folgende Erkl�rung stammt von [email protected])

 Linux erkennt den 1542 nur auf der Adresse 330 (Standard) oder 334 und
 die PAS erlaubt die MPU-401-Emulation nur auf 330. Auch wenn man durch
 Software MPU-401 abschaltet, wird immer noch etwas mit dem 1542 einen
 Konflikt verursachen, wenn dieser auf seiner Standardadresse steht.
 Das Verschieben des 1542 auf 334 macht jeden gl�cklich.

 Au�erdem benutzen der 1542 und die PAS16 16-bit-DMA. Wenn man also
 eine Datei mit 16bit 44kHz in Stereo samplet und sie auf ein SCSI-
 Laufwerk schreibt, das am 1542 h�ngt, wird das Probleme geben. Die
 DMAs �berschneiden sich und es gibt nicht genug Zeit f�r einen RAM-
 Refresh, so da� man den gef�rchteten ``PARITY ERROR - SYSTEM HALTED''-
 Fehler bekommt und nicht wei� warum. Es wird dadurch verschlimmert,
 da� einige Hersteller von QIC-117-Bandlaufwerken empfehlen, die Bus
 on/off-Zeiten so einzustellen, da� der 1542 noch l�nger als normal an
 ist. Man sollte sich das Programm SCSISEL.EXE aus der Box von Adaptec
 oder einigen Stellen im Internet besorgen und solange entweder die BUS
 ON-Zeiten erh�hen oder die BUS OFF-Zeiten senken, bis das Problem
 behoben ist und sie dann noch einen Tick weiter ver�ndern.  SCSISEL
 �ndert die EEPROM-Einstellungen, so da� es permanenter ist als eine
 �nderung in der DOS-Treiberzeile in der CONFIG.SYS und damit auch
 funktioniert, wenn man direkt Linux bootet. N�chstes Problem gel�st.

 Letztes Problem - die �lteren Symphony Chips�tze haben das Timing der
 I/O-Zyklen drastisch reduziert, um den Buszugriff zu beschleunigen.
 Keine der zahlreichen Karten, die der Autor getestet hat, hatte
 irgendein Problem mit dem gesenkten Timing au�er der PAS16.  In der
 Box von Media Vision liegt ein Programm namens SYMPFIX.EXE, das das
 Problem beheben soll, indem ein Diagnosebit im Buscontroller von
 Symphony ge�ndert wird, aber es ist nicht garantiert. Man mu� evtl.:


 �  den Hersteller/Verk�ufer des Motherboards dazu bringen, die �lteren
    Versionen des Buschips zu ersetzen,

 �  das Motherboard ersetzen oder

 �  eine andere Soundkarte kaufen.

 Young Microsystems r�stet die Boards, die sie importieren, f�r etwa
 $30 (US) auf; andere H�ndler k�nnten das auch machen, wenn man
 herausfindet, wer das Motherboard hergestellt oder importiert hat
 (viel Gl�ck). Das Problem liegt in dem von ProAudio verwendeten
 Interfacechip; niemand kauft eine Soundkarte f�r $120 und steckt sie
 in einen 6MHz AT. Die meisten werden sie in 25-40MHz 386/486er
 Rechnern verwenden, deshalb sollte sie mindestens 12MHz Bustakt
 vertragen, wenn die Chips richtig konstruiert sind.

 Das erste Problem h�ngt vom Chipsatz auf dem Motherboard ab, von der
 Busgeschwindigkeit und anderen BIOS-Einstellungen und von der
 Mondphase.  Das zweite Problem h�ngt von der Einstellung der
 Refreshoption (hidden oder synchronous), der DMA-Rate des 1542 und
 (m�glicherweise) der I/O-Rate des Busses ab. Das dritte kann
 festgestellt werden, indem man Media Vision anruft und danach fragt,
 welche Art Symphonychip mit ihrem langsamen Design inkompatibel ist.
 Aber Vorsicht: 3 von 4 Technikern, mit denen der Autor sprach, hatten
 Hirnsch�den. Man sollte sehr vorsichtig sein, ihnen irgendetwas zu
 glauben, was sie �ber fremde Hardware sagen, da sie ihre eigene noch
 nicht mal besonders gut kennen.


 6.18.  Ist es m�glich, Samples gleichzeitig zu lesen und zu schreiben?


 Wegen Hardwarebegrenzungen ist das bei den meisten Soundkarten nicht
 m�glich. Einige neuere Karten unterst�tzen es. Siehe den Abschnitt
 �ber "birektionalen Modus" in der Hacker's Guide to Voxware f�r
 weitere Informationen.


 6.19.  Wert nicht.  Mein SB16 ist auf IRQ 2 eingestellt, aber config�
 ure erlaubt diesen


 Auf 286er und h�her ist der IRQ 2 auf den zweiten Interruptcontroller
 cascadiert. Er ist gleichbedeutend mit IRQ 9.


 6.20.  Werden die SoundBlaster AWE32 oder SoundBlaster 16 ASP
 unterst�tzt?


 Diese Karten besitzen spezielle Chips (ASP und Emu), die zus�tzliche
 F�higkeiten wie Wavetable-Synthese liefern. Aber Creative Labs ist
 nicht bereit, Informationen �ber ihre Programmierung freizugeben.
 Solange sie ihre Politik nicht �ndern, kann es unter Linux keine
 Unterst�tzung f�r diese spezielle Hardware geben. Die Karten werden
 aber als normale SoundBlaster 16-Karten unterst�tzt.

 Die Gravis UltraSound hat �hnliche F�higkeiten wie die AWE32 und wird
 von Linux unterst�tzt. Karten, die auf anderen DSPs, wie dem Analog
 Devices ADSP-21xx, basieren, k�nnten in Zukunft unterst�tzt werden.


 6.21.  Wenn ich Linux benutze und danach DOS boote, bekomme ich Fehler
 und/oder einige Anwendungen laufen nicht richtig.


 Das passiert nach einem Softboot zu DOS. Manchmal verweist die
 Fehlermeldung f�lschlicherweise auf einen Fehler in der CONFIG.SYS.

 Die meisten der aktuellen Soundkarten haben durch Software
 kontrollierbare IRQ- und DMA-Einstellungen. Wenn man unter Linux und
 DOS verschiedene Einstellungen benutzt, kann das Probleme bereiten.
 Einige Soundkarten akzeptieren neue Parameter nur nach einem
 kompletten Reset (d.h. entweder die Stromversorgung ausschalten oder
 den Resetknopf verwenden).

 Die schnelle L�sung dieses Problems besteht also darin, statt eines
 Softboots (z.B. Strg-Alt-Entf) einen kompletten Reset zu verwenden.
 Die korrekte L�sung liegt darin, die gleichen IRQ- und DMA-
 Einstellungen unter DOS und Linux zu verwenden (oder kein DOS zu
 verwenden :-).


 6.22.  Probleme, DOOM unter Linux laufen zu lassen


 Anwender der Linuxversion von DOOM von ID Software k�nnten an diesen
 Hinweisen interessiert sein.

 F�r eine korrekte Soundausgabe braucht man Version 2.90 oder sp�ter;
 sie unterst�tzt den Echtzeit "DOOM mode".

 Die Soundsamples sind 16-bit. Wer eine 8bit-Soundkarte verwendet, kann
 trotzdem Sound bekommen, wenn er eines der zahlreichen Programme aus
 metalab.unc.edu:/pub/Linux/games/doom verwendet.

 Wenn die Geschwindigkeit von DOOM zu gering ist, kann sie verbessert
 werden, wenn man den Sound ausschaltet (indem man die Datei sndserver
 umbenennt).

 Standardm��ig unterst�tzt DOOM keine Musik (wie in der DOS-Version).
 Das Programm musserver f�gt Musik zu DOOM unter Linux hinzu.  Es
 befindet sich unter pandora.st.hmc.edu:/pub/linux/musserver.tgz.

 (Letzte Meldung: Es sieht so aus, als ob Sound mit DOOM unter 2.0.x-
 Kernels nicht mehr funktioniert, es liefert einen Fehler wegen
 /dev/sequencer.)


 6.23.  Wie kann ich das Rauschen der Soundkarte reduzieren?


 Um Rauschen zu reduzieren, sollte man abgeschirmte Kabel von guter
 Qualit�t nehmen und die Soundkarte in verschiedenen Steckpl�tzen
 testen.  Wenn die Soundkarte eine Lautst�rkenkontrolle hat, sollte man
 verschiedene Einstellungen testen (Maximum ist vielleicht die Beste).

 Mit einem Mixerprogramm kann man sichergehen, da� unerw�nschte
 Eing�nge (z.B. Mikrofon) auf Lautst�rke 0 gestellt sind.

 Einige Soundkarten sind schlecht abgeschirmt und geerdet und deshalb
 f�r Rauschen sehr empf�nglich.

 Au�erdem hat der Autor herausgefunden, da� auf seinem System die
 Kommandozeilenoption no-hlt das Rauschen verringert. Diese Option sagt
 dem Kernel, da� er nicht die halt-Anweisung verwenden soll, wenn er
 die idle-process-Schleife durchl�uft. Man kann das manuell beim Booten
 testen oder es mittels des Befehls append = "no-htl" in der LILO-
 Konfigurationsdatei verwenden.


 6.24.  Ich kann Sounds abspielen, aber nicht aufnehmen.


 Wenn man Sound abspielen, aber nicht aufnehmen kann, sollte man
 Folgendes ausprobieren:


 �  ein Mixerprogramm verwenden, um den entsprechenden Eingang zu
    w�hlen (z.B. Mikrofon)

 �  den Mixer verwenden, um die Eingangsverst�rkung auf Maximum zu
    setzen.

 �  wenn m�glich, die Soundkarte unter DOS testen, um festzustellen, ob
    es ein Hardwareproblem ist.


 6.25.  Meine "kompatible" Soundkarte funktioniert nur, wenn ich sie
 zuerst unter DOS initialisiere.


 Einige Klone sind nicht 100% registerkompatibel mit dem Original; sie
 haben manchmal zus�tzliche Schaltkreise wie Mixer. Man kann sie evtl.
 unter Linux verwenden, wenn man sie zuerst unter DOS initialisiert und
 dann Linux softbootet (d.h. Strg-Alt-Entf).

 Ein Anwender hat auch berichtet, da� er bessere Ergebnisse hatte, wenn
 er LOADLIN anstatt LILO verwendete, um Linux zu booten, nachdem er
 seine Soundkarte unter DOS initialisiert hatte (es war eine Diamond
 Soundkarte).

 Sie k�nnen zuverl�ssig funktionieren oder nicht. Die wahre L�sung ist,
 vom Hersteller zu erfahren, wo die Unterschiede liegen und zum
 Soundtreiber die Unterst�tzung hinzuzuf�gen. Das wurde z.B. f�r die
 Sound Galaxy NX Pro gemacht.


 6.26.  Linux nur im 8bit-Modus.  Meine 16bit-SoundBlaster-kompatible
 Soundkarte funktioniert unter


 16bit-Soundkarten, die als SoundBlaster-kompatibel beschrieben werden,
 sind in Wirklichkeit nur mit der 8bit SoundBlaster Pro kompatibel. Sie
 haben �blicherweise einen 16bit-Modus, der nicht kompatibel mit der
 SoundBlaster 16 ist und auch nicht mit dem Linux Soundtreiber.

 Wenn die Karte als kompatibel mit dem Microsoft Windows Sound System
 aufgef�hrt wird, k�nnte sie im 16bit-Modus laufen, wenn man die
 Unterst�tzung f�r das WSS im Linux Soundtreiber aktiviert. Au�erdem
 mu� man wahrscheinlich den DOS-Initialisierungstrick benutzen.


 6.27.  Wo finde ich Soundanwendungen f�r Linux?


 Hier sind einige gute Archivserver f�r Linux-spezifische
 Soundanwendungen:


 �  metalab.unc.edu:/pub/Linux/kernel/sound/

 �  metalab.unc.edu:/pub/Linux/apps/sound/

 �  tsx-11.mit.edu:/pub/linux/packages/sound/

 �  nic.funet.fi:/pub/OS/Linux/util/sound/

 �  nic.funet.fi:/pub/OS/Linux/xtra/snd-kit/

 �  nic.funet.fi:/pub/OS/Linux/ALPHA/sound/


 6.28.  Kann der Soundtreiber als ladbares Modul compiliert werden?


 Mit neueren Kernels wird der Soundtreiber als ladbares Modul
 unterst�tzt.


 F�r Details siehe die Dateien
 /usr/src/linux/drivers/sound/Readme.modules und
 /usr/src/linux/Documentation/modules.txt (oder /usr/src/linux/README).


 6.29.  zu ersetzen?  Kann ich eine Soundkarte verwenden, um den Piep
 der Systemkonsole


 Man probiere das Programm oplbeep von
 metalab.unc.edu:/pub/Linux/apps/sound/oplbeep-alpha.tar.gz.

 Eine andere Variante ist das Programm beep von
 metalab.unc.edu:/pub/Linux/kernel/patches/misc/modreq_beep.tgz.

 Im Paket modutils liegt in Beispielsprogramm und ein Kernelpatch, mit
 denen man ein externes Programm aufrufen kann, um Ger�usche zu
 erzeugen, wenn das vom Kernel gefordert wird.

 Alternativ kann man bei einigen Soundkarten den Ausgang f�r den PC-
 Lautsprecher mit der Soundkarte verbinden, so da� alle Ger�usche aus
 den Lautsprechern der Soundkarte kommen.


 6.30.  Was ist VoxWare?


 Die Soundtreiber des Kernels unterst�tzen mehrere Intel-basierende,
 Unix-kompatible Betriebssysteme und sind getrennt vom Linuxkernel
 erh�ltlich. Bis Februar 1996 hat der Autor die Software VoxWare
 genannt.  Ungl�cklicherweise wurde dieser Name von VoxWare
 Incorporated registriert und kann nicht verwendet werden. Am 29. M�rz
 1996 hat Hannu Savolainen erkl�rt, da� der neue Name Unix Sound System
 (USS) Lite ist.

 Das Unix Sound System (USS) ist ein kommerziell erh�ltlicher Kernel-
 Soundtreiber f�r mehrere Unixsysteme, vertrieben von 4Front
 Technologies.  Eine freie Version, bekannt als USS/Lite wird weiterhin
 kostenlos f�r Linuxsysteme erh�ltlich sein.

 Weitere Informationen findet man auf der Webseite von 4Front
 Technologies http://www.4front-tech.com/.


 6.31.  Werden Plug&Play Soundkarten unterst�tzt?


 Volle Plug&Play (PnP) Unterst�tzung wird es voraussichtlich in Linux
 Version 2.1 geben. In der Zwischenzeit gibt es einige Workarounds, um
 PnP-Soundkarten unter Linux zum Arbeiten zu bringen.

 Wenn man ein neueres Pentiumsystem mit PnP-BIOS hat, sollte dieses die
 Karten konfigurieren. Der Linux Soundtreiber mu� die gleiche I/O-
 Adresse, IRQ- und DMA-Parameter verwenden wie das BIOS.

 Es gibt ein Paket mit PnP-Tools f�r Linux, mit dem man die Karte
 einstellen kann. Es befindet sich bei http://www.redhat.com/pnp.

 Wenn man die Karten unter Windows95 verwendet, kann man den
 Hardwaremanager verwenden, um die Karte einzustellen und dann Linux
 mittels des LOADLIN-Programms starten. Win95 und Linux m�ssen die
 gleichen Karteneinstellungen verwenden.

 Wenn man die Karte unter DOS verwendet, kann man das icu-Utility
 verwenden, das mit SB16 PnP geliefert wird, um die Karte unter DOS zu
 konfigurieren und dann Linux mit LOADLIN starten. Wiederum m�ssen DOS
 und Linux die gleichen Karteneinstellungen verwenden.

 Der kommerzielle USS/Linux Soundtreiber unterst�tzt die SB16 PnP.  Man
 kann diesen Treiber von 4Front Technologies kaufen.


 6.32.  Sox/Play/VPlay meldet "invalid block size 1024"


 Eine �nderung des Soundtreibers in der Version 1.3.67 sorgte daf�r,
 da� einige Programme, die (f�lschlicherweise) �berpr�ften, ob das
 Ergebnis von SNDCTL_DSP_GETBLKSIZE ioctl gr��er als 4096 war, nicht
 mehr funktionieren. Man sollte eine neuere Version des Programms
 besorgen oder es selber anpassen. F�r das Programm Sox hat folgender
 Patch funktioniert:



      --- sbdsp.c.orig        Thu Feb 22 22:46:00 1996
      +++ sbdsp.c     Thu Feb 22 22:51:18 1996
      @@ -176,7 +176,7 @@
              }

              ioctl (dspfd, SNDCTL_DSP_GETBLKSIZE, &abuf_size);
      -       if (abuf_size < 4096 || abuf_size > 65536) {
      +       if (abuf_size < 1) {
                      if (abuf_size == -1)
                      perror (dspname);
                      else





 6.33.  Warum benutzt der Soundtreiber sein eigenes        Konfigura�
 tionsprogramm?


 Der Soundtreiber unterst�tzt viele unterschiedliche
 Konfigurationsparameter. Das Programm configure des Soundtreibers
 pr�ft viele Abh�ngigkeiten zwischen den Parametern. Die Werkzeuge, die
 zur Konfiguration des Kernels verwendet werden, unterst�tzen diesen
 Funktionalit�t nicht.

 Allerdings erlauben es die sp�teren 1.3.x-Kernel optional, das
 Standard-Konfigurationsprogramm des Kernels f�r den Soundtreiber zu
 verwenden. Siehe die Anmerkungen in CHANGELOG. Das ist noch
 experimentell und es k�nnen damit einige Optionen nicht eingestellt
 werden.


 6.34.  geladen wird Die Mixereinstellungen werden gel�scht, wenn das
 Soundtreiber-Modul


 Man kann den Soundtreiber als ladbares Modul compilieren und kerneld
 verwenden, um es automatisch zu laden und zu entfernen. Das kann ein
 Problem geben - wenn das Modul neu geladen wird, werden die
 Mixereinstellungen auf Standardwerte zur�ckgesetzt. Bei einigen
 Soundkarten sind diese zu laut (z.B. SB16) oder zu leise.  Markus
 Gutschke ([email protected]) fand diese L�sung. Man setze so
 eine Zeile in die Datei /etc/conf.modules:




 options sound dma_buffsize=65536 && /usr/bin/setmixer igain 0 ogain 0 vol 75




 Dadurch wird das Mixerprogramm (hier setmixer) aufgerufen, sobald der
 Soundtreiber geladen wird. Der Parameter dma_buffsize ist ohne
 Bedeutung, aber der Befehl option ben�tigt eine Kommandozeilenoption.
 Man kann die Zeile auf die passenden Einstellungen f�r Mixerprogramm
 und Verst�rkung anpassen.

 Wenn man den Soundtreiber in den Kernel compiliert hat und die
 Lautst�rke beim Booten einstellen will, kann man einen Aufruf des
 Mixerprogramms in eine Startdatei wie /etc/rc.d/rc.local setzen.


 6.35.  Nur root kann Sound aufnehmen


 Standardm��ig erstellt da� Script aus Readme.linux die Sounddevices
 so, da� sie nur von root gelesen werden k�nnen. Das schlie�t ein
 potentielles Sicherheitsloch. In einer Netzwerkumgebung k�nnte sich
 ein Benutzer �ber das Netzwerk in einen Linux-PC mit Soundkarte und
 Mikrofon einloggen und lauschen. Wenn man sich dar�ber keine Sorgen
 machen mu�, kann man die Permissions ver�ndern.

 Bei der Standardeinstellung k�nnen Anwender immer noch Sounddateien
 abspielen. Das ist kein Sicherheitsrisiko, k�nnte aber bel�stigend
 sein.


 7.  Referenzen


 Wenn man eine Soundkarte besitzt, die eine CD-Rom- oder SCSI-
 Schnittstelle hat, liefern die Linux SCSI HOWTO und die Linux CD-ROM
 HOWTO weitere Informationen.

 Die Linux Sound Playing HOWTO beschreibt, wie verschiedene Arten von
 Sound- und Musikdateien unter Linux abgespielt werden.

 Hannu Savolainen hat einen Entwurf der Hacker's Guide to VoxWare
 geschrieben. Die aktuelle Version ist Entwurf (draft) 2 und befindet
 sich bei nic.funet.fi:/pub/OS/Linux/ALPHA/sound/.

 Die folgenden FAQs werden regelm��ig in die Usenet-Newsgroup
 news.announce gepostet und bei rtfm.mit.edu:/pub/usenet/news.answers
 archiviert:


 �  PCsoundcards/generic-faq (Generische PC-Soundkarten FAQ)

 �  PCsoundcards/soundcard-faq (comp.sys.ibm.pc.soundcard FAQ)

 �  PCsoundcards/gravis-ultrasound/faq (Gravis UltraSound FAQ)

 �  audio-fmts/part1 (Beschreibungen von Audio-Dateiformaten)

 �  audio-fmts/part2 (Beschreibungen von Audio-Dateiformaten)

 Die FAQs f�hren auch mehrere produktspezifische Mailinglisten und
 Archivserver auf. In den folgenden Usenet-Newsgroups werden Sound- und
 Musikfragen diskutiert.



 �  alt.binaries.sounds.*  (verschiedene Gruppen, um Sounddateien zu
    posten)

 �  alt.binaries.multimedia (um Multimedia-Dateien zu posten)

 �  alt.sb.programmer (Themen zur Programmierung des SoundBlasters)

 �  comp.multimedia (Themen zu Multimedia)

 �  comp.music (Theorie und Forschung zur Computermusik)

 �  comp.sys.ibm.pc.soundcard.*  (verschiedene Gruppen zu IBM PC-
    Soundkarten)

 Eine Webseite mit Multimediathemen ist bei
 http://viswiz.gmd.de/MultimediaInfo/. Creative Labs hat eine Webseite
 bei http://www.creaf.com/. MediaTrix's Webseite ist
 http://www.mediatrix.com/.

 Die Linux Mailingliste besitzt eine Anzahl von "Kan�len" f�r
 verschiedene Themen, unter anderem Sound. Um zu erfahren, wie man der
 Liste beitritt, schicke man eine Mail mit dem Wort "help" im
 Nachrichtentext an [email protected]. (Hinweis: Zur Zeit des
 Schreibens waren diese Mailinglisten stark �berladen und es wurde nach
 einem Ersatz gesucht).

 Wie schon h�ufiger erw�hnt geh�ren zum Kernel-Soundtreiber mehrere
 Readme-Dateien, die sinnvolle Informationen �ber den Soundtreiber
 enthalten. Diese sind �berlicherweise im Verzeichnis
 /usr/src/linux/drivers/sound.

 Der Autor der Kernel-Soundtreibers, Hannu Savolainen, kann unter
 [email protected] erreicht werden. Er hat auch eine Webseite unter
 http://personal.eunet.fi/pp/voxware. Diese Webseite ist die beste
 Quelle f�r aktuelle Informationen �ber unterst�tzte Soundkarten,
 bekannte Probleme und Bugfixes.

 Informationen �ber USS, den kommerziellen Soundtreiber f�r Linux und
 andere Unix-kompatible Betriebssysteme, gibt es auf der 4Front
 Technologies Webseite bei http://www.4front-tech.com/.

 Die Linux Software Map (LSM) ist eine wichtige Referenz, um Software
 f�r Linux zu finden. Um Anwendungen f�r die Soundhardware zu finden,
 kann man sie z.B. nach Schl�sselworten wie sound durchsuchen. Die LSM
 befindet sich auf vielen FTP-Servern, unter anderem
 metalab.unc.edu/pub/Linux/docs/LSM.gz.

 Das Linux Documentation Project hat mehrere B�cher �ber Linux
 produziert, unter anderem Linux Installation and Getting Started.
 Diese gibt es kostenlos von FTP-Servern oder sie k�nnen als gedruckte
 Version gekauft werden.

 Zum Schlu� noch eine schamlose Werbung: Wer viel mehr �ber Multimedia
 unter Linux lernen will (besonders CD-ROM und Soundkarten-Anwendungen
 und Programmierung), sollte sich das Buch Linux Multimedia Guide
 geschrieben vom Autor dieser HOWTO ansehen. Es ist erschienen von
 O'Reilly and Associates unter der ISBN 1-56592-219-0. Weitere Hinweise
 erh�lt man unter 800-998-9938 (nur Nordamerika) und auf der Webseite
 bei http://www.ora.com/.