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/.