Cookies op Tweakers

Tweakers maakt gebruik van cookies, onder andere om de website te analyseren, het gebruiksgemak te vergroten en advertenties te tonen. Door gebruik te maken van deze website, of door op 'Ga verder' te klikken, geef je toestemming voor het gebruik van cookies. Wil je meer informatie over cookies en hoe ze worden gebruikt, bekijk dan ons cookiebeleid.

Meer informatie

Door , , 11 reacties
Bron: Alsa Project

Advanced Linux Sound Architecture biedt audio- en midi-functionaliteiten voor het Linux-platform. Ondersteuning voor een ruime selectie van geluidskaarten is aanwezig: daarover kun je op deze pagina meer lezen. De software is volgens de ontwikkelaars volgens een thread-safe smp-ontwerp modulair opgezet. Het ontwikkelteam blijft zoals altijd druk bezig met het programmeren en heeft daardoor versie 1.0.17a en 1.0.18rc2 uitgebracht. De lijst met veranderingen is helaas te groot om hier te vermelden maar de wijzigingen voor 1.0.17a ten opzichte van versie 1.0.17 zijn op deze pagina volledig na te lezen. En de lijst met veranderingen voor 1.0.18rc2 is op deze en deze pagina na te lezen.

ALSA schema
Moderatie-faq Wijzig weergave

Reacties (11)

Iets zegt met dat ze bij de development een foute weg hebben ingeslagen als ik dat diagram bekijk.
Je ziet 3 "renderpaden". 2 voor OSS-applicaties en 1 voor ALSA-applicaties. Een ALSA-app wordt redelijk simpel doorgegeven aan de ALSA-API van de kernel, maar OSS kan usermode, of kernelmode worden ge-emuleerd door ALSA.

Als dit diagram al eng is, bedenk dan ook nog eens dat hier nog sound-servers als ESD en PulseAudio bovenop draaien, en daarboven zit meestal zelfs nog highlevel multimedia-layer zoals Gstreamer of Xine.

En nu voor KDE4 hebben ze het voor elkaar gekregen om daarbovenop weer een abstractielaag te bouwen genaamd Phonon.

Kortom, geluid in Linux is een zooitje. :P
Niet persee,

Sinds Alsa is het eigelijk best wel prima werken onder linux.

Alsa is de hardware abstractie laag die er voor zorgt dat je alle drivers via 1 interface kan benaderen.

De alsa libs bevatten alle functies die je als coder gebruikt om je applicatie geluid te laten maken, dit is dus wat je als game of applicatie ontwikkelaar voor linux dus normaal zou gebruiken.

De OSS layer is obtioneel, en is vooral bedoelt voor de overgangs periode tussen OSS ( de oude api ) en ALSA ( de nieuwe api ) je zou deze niet eens in hoeven bouwen als je dat zou willen. Het was alleen erg belangrijk voor de acceptatie van ALSA dat deze layer er in zou zitten.

Gstreamer en Xine praten voor zover ik weet normaal gesproken direct met alsa. Misschien dat ze uit feature completeness overweging ook een backend hebben voor ESD en PulseAudio. ( waarschijnlijk voor het geval dat je je geluid over het netwerk wil vervoeren ) Maar dit is niet de normale gang van zaken.

KDE4 heeft een andere eigenschap, en dat is dat zij streven om een crossplatform ontwikkel omgeving te worden. Sinds kde4.1 zijn er beta's van de libs en verschillende applicaties beschikbaar voor zowel Mac als Windows. Het idee is dat je met de kde/qt api voor alle drie platformen mooie feature rijke applicaties kan schrijven.

Als je zoiets echt wil bereiken ontsnap je er niet aan dat je ook een cross platform geluid API nodig hebt. Bovendien kan phonon ook nog gebruikt worden om geluid via het netwerk op een andere pc af te laten spelen. ( remote desktop met geluid? )

Niet dat er niks meer te verbeteren valt aan geluid onder linux...
Teken jij dan maar een mooi diagram zoals het wel zou moeten volgens jou, dan.
Het geluid in Linux is eigenlijk nog best wel goed opgebouwd. Laten we als voorbeeld amaroK gebruiken, dat muziek van een formaat X wil afspelen... voor hetzelfde geld had dit xine-ui geweest, of wat dan ook:

amaroK praat met de xine lib, wat een library is om 'een multimedia bestand' af te kunnen spelen (MP3, Xvid, etc). Hiervoor hoeft amaroK dus maar met n library te praten.

De Xine lib heeft op zijn beurt weer de beschikking over enkele codecs waarmee het bestand wordt gedecodeerd (bijv. voor MP3). Dit staat eigenlijk los van het hele verhaal hierboven. Maar merk op dat dit handig is voor bijv. amaroK, want die hoeft alleen maar met Xine lib te praten en niet met die codecs. Xine lib praat zelf met Alsa.

Alsa babbelt dan als onderste laag met de hardware, en dus met de drivers specifiek voor jouw geluidskaart.

Vaak zit er tussen de applicatie en Alsa/de hardware laag ook nog wel een daemon, bijvoorbeeld aRts voor KDE (heel oud en niet meer gebruikt volgens mij), ESD en PulseAudio.


Compleet van die verhaal terzijde... wat ik wel eens zou willen zien in Linux is dat Alsa voor elk proces dat geluid wil maken een aparte mixer channel kan opzetten, net zoals dat in Windows Vista gebeurd. Dus dat ik m'n FireFox (als Flash herrie wil maken bijv). kan muten terwijl ik naar muziek aan het luisteren ben.
Dat kan ALSA al met dmix, maar tegenwoordig wordt het met PulseAudio gedaan. Daar kan je inderdaad alle afzonderlijke programma's zachter zetten tot muten, en je kan ook interessantere zaken doen, zoals het geluid via je netwerk naar een remote draaiende PulseAudio-installatie zenden, of je TeamSpeak naar je headset, en je game naar je surroundset.
pff alsa is leuk als het werkt... maar zodra je er een probleem mee hebt.. succes! 5.1 werkende krijgen en dergelijke.. of gewoon geluids problemen (mijn geluid was toen de tijd gewoon veelste zacht) heel gekloot allemaal..
Ik heb ook 5.1-geluid en nog nooit problemen gehad. Ligt eerder aan je distributie denk ik. Welke tools leveren ze mee, hoe is configuratie geregeld etc.
Toch niet helemaal mee eens:
Als alsa niet werkt dan is dit toch vaak door of hardware die niet ( volledig ) ondersteund wordt, ofwel door ingrijpen van de gebruiker.

Ik draai onder een ubuntu real-time kernel alsa en jack er bovenop. Haal zeer lage latencies icm een m-audio 1010 board. Net even beter dan onder xp en asio, dus mij hoor je niet klagen.
Voor de beginnende linux-gebruiker is de hele sound-structure wel intimiderend ja, dat klopt.
Ik vraag mij af hoe het met de Creative XFI is gesteld, het is net of er niks mee gebeurt. Maar ze hebben als het goed is de Tech Sheets gekregen van Creative? Weet iemand daar meer over want ik kan niet wachten om volledig over te gaan met al mijn PC's op Linux.
Is bij deze versie MIDI ook al een beetje aangepast?

Ik kan namelijk nog steeds niet erg netjes MIDI afspelen. Verder wil het verbinden van een Commodore MK-10 keyboard ook nog niet :'(

Iemand ervaring mee?

Systeem: Fedora 8 & XFCE

[Reactie gewijzigd door CONVOLUTION op 21 augustus 2008 16:49]

Op dit item kan niet meer gereageerd worden.



Apple iOS 10 Google Pixel Apple iPhone 7 Sony PlayStation VR AMD Radeon RX 480 4GB Battlefield 1 Google Android Nougat Watch Dogs 2

© 1998 - 2016 de Persgroep Online Services B.V. Tweakers vormt samen met o.a. Autotrack en Carsom.nl de Persgroep Online Services B.V. Hosting door True