W tym rozdziale wymieniono karty graficzne i interfejsy, które są obecnie obsługiwane przez Linuxa. Informacja tutaj zawarta oparta jest na najnowszych w trakcie pisania tego dokumentu jądrach Linuxa.
Sterownik dźwięku ma swą własną numerację wersji. Ostatnie stabilne jądro Linuxa to wersja 2.0.27, wykorzystująca sterownik dźwięku w wersji 3.5.4-960630.
Autor sterownika dźwięku, Hannu Savolainen, zazwyczaj również udostępnia nowsze wersje sterownika dźwięku zanim włączane są one do standardowej dystrybucji jądra Linuxa. Najbardziej aktualna lista obsługiwanych kart znajduje się pod adresem http://www.4front-tech.com/ossfree/new_cards.html (USA) lub http://personal.eunet.fi/pp/voxware/new_cards.html (Europa). Na tych stronach wyszczególnione jest, która wersja sterownika dźwięku jest wymagana przy danym typie karty dźwiękowej, lub czy sterownik danej karty jest nadal w fazie rozwoju. Plik /usr/src/linux/drivers/sound/Readme.cards, rozprowadzany wraz ze sterownikiem dźwięku do jądra, zawiera informację o obsługiwanych kartach, ale nie zawsze jest aktualny.
Sterownik dźwięku powinien również działać z większością kart dźwiękowych na platformie Alpha. Jednakże, niektóre karty mogą wywoływać konflikty na portach I/O innych urządzeń systemów opartych na Alpha, nawet jeśli działają one poprawnie na komputerach i386, więc ogólnie rzecz biorąc nie można z góry określić, czy dana karta będzie działać, zanim się faktycznie nie spróbuje.
W czasie, gdy to piszę, sterownik dźwięku nie działa jeszcze na wersji Linuxa na systemy z procesorem PowerPC, ale w przyszłości obsługa ta powinna się pojawić.
Wygląda na to, że sterownik dźwięku można dołączyć do jądra w wersji Linuxa na systemy MIPs, ale obawiam się że nie specjalnie działa (czy komputery MIPs mają w ogóle sloty ISA?).
Jądro Linuxa zawiera osobne sterowniki dla wersji na Atari i Amigę, które implementują kompatybilny podzestaw sterownika na platformę Intel, przy użyciu wbudowanych w te komputery urządzeń.
Wersja Linuxa na systemy SPARC nie ma obecnie obsługi dźwięku (podobnie jak Amiga i Atari, komputery SPARC mają wbudowane urządzenia dźwiękowe, więc można to załatwić nowym sterownikiem).
Następujące karty dźwiękowe obsługiwane są przez sterownik dźwięku jądra Linuxa:
Należy zauważyć, że karty Plug and Play (PnP) nie są w pełni kompatybilne ze starszymi modelami bez PnP tego samego urządzenia. Dla przykładu, SoundBlaster16 PnP nie jest w pełni zgodna z oryginalną kartą SoundBlaster16. Podobnie jest w przypadku kart Soundscape PnP i GUS PnP. Więcej informacji o Plug and Play znajdziesz w dalszej części tego dokumentu.
Następujące karty nie są obsługiwane, z powodu, że są przestarzałe, bądź dlatego, że producent nie chce udostępnić informacji programistycznych niezbędnych do napisania sterownika.
Inne karty dźwiękowe, które określa się jako kompatybilne z jedną z obsługiwanych kart dźwiękowych mogą działać, jeśli są zgodne sprzętowo (tj. na poziomie rejestrów).
Mimo faktu, iż większość kart dźwiękowych tytułuje się mianem "kompatybilnych z SoundBlaster", bardzo niewiele z obecnie sprzedawanych kart jest wystarczająco kompatybilnych, aby pracować z linuxowym sterownikiem karty SoundBlaster. Karty te najczęściej pracują lepiej pod kontrolą sterownika MSS/WSS lub MAD16. Jedynie prawdziwe karty SoundBlaster, produkowane przez Creative Labs, zawierające oryginalne układy (tzn. SoundBlaster16 Vibra), karty MV Jaz16 i oparte o ESS688/1688 działają dobrze ze sterownikiem SoundBlaster. Próba użycia ustawienia "16-bitowa karta dźwiękowa kompatybilna z SoundBlaster Pro" to zazwyczaj tylko strata czasu.
Jądro Linuxa obsługuje port SCSI wbudowany w niektóre karty dźwiękowe (np. ProAudioSpectrum 16) i firmowy interfejs do niektórych napędów CD-ROM (np. Soundblaster Pro). Więcej informacji znajdziesz w dokumentach Linux SCSI HOWTO oraz Linux CDROM HOWTO
Dostępny jest także ładowalny moduł jądra obsługujący porty joysticka - również te, które znajdują się na niektórych kartach dźwiękowych.
Zauważ, że obsługa SCSI, CD-ROM, joysticka i sterowniki dźwiękowe w jądrze są od siebie całkowicie niezależne.
Najnowsze informacje o sterowniku kart dźwiękowych znajdziesz na stronie WWW Hannu Savolainena, której adres wymieniony jest w rozdziale Źródła Informacji.
Dostępnych jest też kilka "nieoficjalnych" sterowników dźwięku, nie włączonych do dystrybucji jądra Linuxa, używanych zamiast standardowego sterownika dźwięku.
Komercyjną wersję sterownika dźwięku pod Linuxa sprzedaje firma 4Front Technologies. Oferowana przez nich wersja ma kilka dodatkowych funkcji w porównaniu ze sterownikiem włączonym do dystrybucji jądra Linuxa. Więcej informacji na ten temat znajdziesz na stronie WWW 4Front Technologies.
Markus Mummert ( mum@mmk.e-technik.tu-muenchen.de) stworzył pakiet sterowników do kart Turtle Beach MultiSound (classic), Tahiti i Monterey. W dokumentacji czytamy:
"Jest on zaprojektowany do wysokiej jakości zapisu/odczytu z dysku twardego bez utraty synchronizacji nawet na obciążonych systemach. Inne funkcje, takie jak synteza fal, MIDI i cyfrowy procesor sygnałowy (DSP) nie mogą być używane. Nie jest również możliwe jednoczesne odtwarzanie i nagrywanie. Obecnie zastępuje on VoxWare i był testowany na kilku wersjach jądra, od 1.0.9 do 1.2.1. Można go również zainstalować na systemach UN*X SysV386R3.2."
Można je znaleźć pod adresem http://www.cs.colorado.edu/~mccreary/tbeach.
Kim Burgaard ( burgaard@daimi.aau.dk) napisał sterownik i programy narzędziowe do interfejsu MIDI Roland MPU-401. Opis z mapy oprogramowania Linuxa jest następujący:
"Sterownik do interfejsów MIDI w pełni zgodnych z Roland MPU-401 (w tym również Roland SCC-1 i RAP-10/ATW-10). Wraz ze sterownikiem otrzymujemy użyteczny zestaw programów narzędziowych, w skład którego wchodzą między innymi odtwarzacz i rejestrator standardowych plików MIDI (Standard MIDI Files)."
Od czasu wydania wersji 0.11a dokonano licznych ulepszeń. Między innymi, sterownik zawiera obecnie procedury dzielenia pracy IRQ i można go skompilować z nowym interfejsem modułów jądra. Opcja pracy z metronomem, możliwość synchronizowania np. grafiki na podstawie rytmu bez utraty precyzji, zaawansowany interfejs powtarzania/nagrywania/nadpisywania i wiele, wiele więcej."
Można to znaleźć pod adresem : ftp://sunsite.unc.edu/pub/Linux/kernel/sound/mpu401-0.2.tar.gz.
Dostępny jest sterownik dźwięku, nie wymagający żadnych dodatkowych urządzeń dźwiękowych; wykorzystuje on wewnętrzny głośnik PC. Jest on w większości programowo zgodny ze sterownikiem kart dźwiękowych, jednak jak można się było spodziewać, jakość uzyskiwanego dźwięku jest znacznie gorsza i procesor jest znacznie bardziej obciążony. Wyniki bywają różne, zależnie od charakterystyki danego głośnika. Więcej informacji znajdziesz w dokumentach dołączonych do sterownika głośnika PC.
Bieżąca wersja to 0.9b i można ją zdobyć pod adresem ftp://ftp.informatik.hu-berlin.de/pub/os/linux/hu-sound/
Innym wyjściem jest skonstruowanie konwertera cyfrowo-analogowego w oparciu o równoległy port drukarki i kilka dodatkowych komponentów. Jakość dźwięku w tym przypadku jest lepsza niż na głośniku PC, ale nadal sterownik konsumuje dużo czasu procesora. Wskazówki dotyczące budowy takiego konwertera, oraz odpowiedni sterownik zawiera wcześniej wspomniany pakiet sterujący do głośnika PC.