Linux Sound HOWTO
  Jeff Tranter (jeff_tranter@pobox.com),         Übersetzung
  Jens Vonderheide (Jens_Vonderheide@wharfrat.fido.de)
  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
  (hannu@voxware.pp.fi). 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
  (jeff_tranter@pobox.com), zur Übersetzung an Jens Vonderheide
  (Jens_Vonderheide@wharfrat.fido.de).  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 (gregp@sunsite.unc.edu) 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 (mum@mmk.e-technik.tu-muenchen.de) 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 (burgaard@daimi.aau.dk) 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
  (albrecht@igpm.rwth-aachen.de):

  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 seeker@indirect.com)

  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 (gutschk@uni-muenster.de) 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 majordomo@vger.rutgers.edu. (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
  hannu@voxware.pp.fi 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/.