{"id":528,"date":"2009-06-09T21:11:36","date_gmt":"2009-06-09T19:11:36","guid":{"rendered":"http:\/\/linux.leunen.com\/?p=528"},"modified":"2009-06-09T21:11:36","modified_gmt":"2009-06-09T19:11:36","slug":"les-differents-sytemes-audio-sous-linux","status":"publish","type":"post","link":"https:\/\/www.leunen.com\/linux\/2009\/06\/les-differents-sytemes-audio-sous-linux\/","title":{"rendered":"Les diff\u00e9rents syt\u00e8mes audio sous Linux"},"content":{"rendered":"<p>Sous Linux, il existe toute une s\u00e9rie de syst\u00e8mes d\u00e9di\u00e9s au son et il est parfois tr\u00e8s difficile de s&rsquo;y retrouver. Voyons ici bri\u00e8vement et rapidement les principaux.<\/p>\n<h3>Gstreamer<\/h3>\n<p><a href=\"http:\/\/www.gstreamer.net\/\">Gstreamer<\/a> est un framework multimedia. C&rsquo;est \u00e0 dire un ensemble de composants permettant de lire, enregister, faire du streaming et de l&rsquo;\u00e9dition audio et video. Ce framework est multi-plateforme. Il devient un standard pour les applications audio\/vid\u00e9o sous Linux surtout gr\u00e2ce \u00e0 Gnome au d\u00e9part. Gr\u00e2ce \u00e0 une architecture de plugins, il est ais\u00e9 d&rsquo;ajouter \u00e0 Gstreamer de nouvelles fonctionnalit\u00e9s. Gstreamer supporte comme backends aussi bien <em>Alsa<\/em> qu&rsquo;<em>OSS<\/em> ou <em>PulseAudio<\/em>. Il est donc bien adapt\u00e9 pour la cr\u00e9ation d&rsquo;applications. Par exemple: Banshee, Amarok, Jokosher, RythmBox, Totem, Elisa, Sound Juicer etc&#8230; sont tous bas\u00e9s sur Gstreamer.<\/p>\n<h3>Jack<\/h3>\n<p><a href=\"http:\/\/jackaudio.org\/\">Jack<\/a> est un serveur de sons permettant l&rsquo;interconnexion d&rsquo;applications audio professionnelles avec des p\u00e9riph\u00e9riques audio et\/ou MIDI ou d&rsquo;autres applications professionnelles. C&rsquo;est un syst\u00e8me temps r\u00e9el caract\u00e9ris\u00e9 par une faible latence. Il supporte <em>Alsa<\/em> et <em>OSS<\/em> comme backends mais pas <em>PulseAudio<\/em> (\u00e0 ma connaissance!).<\/p>\n<h3>Alsa<\/h3>\n<p><a href=\"http:\/\/www.alsa-project.org\/main\/index.php\/Main_Page\">Advanced Linux Sound Architecture<\/a><br \/>\nImpl\u00e9ment\u00e9 directement comme composant du noyau, c&rsquo;est lui qui fournit l&rsquo;interfa\u00e7age avec les p\u00e9riph\u00e9riques audio (cartes sons) et MIDI. Il a \u00e9t\u00e9 cr\u00e9\u00e9 pour remplacer <em>OSS<\/em> qui \u00e9tait devenu obsol\u00e8te. Pour servir de base \u00e0 la cr\u00e9ation d&rsquo;applications, <em>Alsa dispose<\/em> d&rsquo;une API au niveau utilisateur qui est plus facile a utiliser que celle au niveau noyau. Il est aussi compatible avec <em>OSS<\/em> ce qui veut dire que les applications n\u00e9cessitant OSS fonctionnent avec Alsa.<\/p>\n<h3>PulseAudio<\/h3>\n<p><a href=\"http:\/\/pulseaudio.org\/\">PulseAudio<\/a> est un serveur de son. Il peut router des sons provenant de plusieurs sources, processus ou p\u00e9riph\u00e9riques de capture et les envoyer vers d&rsquo;autres processus, cartes sons ou son propre syst\u00e8me de streaming. <em>PulseAudio<\/em> se sert d&rsquo;<em>Alsa<\/em> (on dit qu&rsquo;il se place on top of <em>Alsa<\/em>) comme source et aussi d&rsquo;<em>Alsa<\/em> pour envoyer les donn\u00e9es apr\u00e8s traitement vers la carte son. PulseAudio est surtout utilis\u00e9 dans les applications r\u00e9seau. Il permet aussi la connexion \u00e0 un serveur <em>Jack<\/em>.<\/p>\n<h3>Oss<\/h3>\n<p><a href=\"http:\/\/www.opensound.com\/\">Open Sound System<\/a><br \/>\nC&rsquo;est le syst\u00e8me le plus ancien, apparu avant <em>Alsa<\/em> et que ce dernier remplace. <em>PulseAudio<\/em> par exemple ne peut fonctionner avec <em>OSS<\/em>. On en dira pas plus. Beaucoup de choses manquent \u00e0 <em>OSS<\/em> et c&rsquo;est ce qui a n\u00e9cessit\u00e9 l&rsquo;\u00e9criture d&rsquo;un syst\u00e8me plus complet. <\/p>\n<p><strong>En r\u00e9sum\u00e9:<\/strong> <em>Alsa<\/em>, <em>PulseAudio<\/em> et <em>OSS<\/em> peuvent \u00eatre consid\u00e9r\u00e9s comme des backends, c&rsquo;est \u00e0 dire l&rsquo;interface bas niveau qui g\u00e8re le son au niveau des p\u00e9riph\u00e9riques, <em>PulseAudio<\/em> \u00e9tant une sur-couche d&rsquo;<em>Alsa<\/em>. On peut se servir de l&rsquo;API d&rsquo;<em>Alsa<\/em> ou de <em>PulseAudio<\/em> pour \u00e9crire des applications mais il est plus int\u00e9ressant d&rsquo;utiliser un framework du genre de <em>Gstreamer<\/em> pour le faire. <em>Gstreamer<\/em> g\u00e9rant les codecs de fa\u00e7on transparente par exemple. Si vous voulez cr\u00e9er une application professionnelle qui n\u00e9cessite de travailler en temps r\u00e9el, tournez-vous vers <em>Jack<\/em>. <\/p>\n","protected":false},"excerpt":{"rendered":"<p>Sous Linux, il existe toute une s\u00e9rie de syst\u00e8mes d\u00e9di\u00e9s au son et il est parfois tr\u00e8s difficile de s&rsquo;y retrouver. Voyons ici bri\u00e8vement et rapidement les principaux. Gstreamer Gstreamer est un framework multimedia. C&rsquo;est \u00e0 dire un ensemble de composants permettant de lire, enregister, faire du streaming et de l&rsquo;\u00e9dition audio et video. Ce [&hellip;]<\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":[],"categories":[8,5],"tags":[],"aioseo_notices":[],"_links":{"self":[{"href":"https:\/\/www.leunen.com\/linux\/wp-json\/wp\/v2\/posts\/528"}],"collection":[{"href":"https:\/\/www.leunen.com\/linux\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.leunen.com\/linux\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.leunen.com\/linux\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/www.leunen.com\/linux\/wp-json\/wp\/v2\/comments?post=528"}],"version-history":[{"count":6,"href":"https:\/\/www.leunen.com\/linux\/wp-json\/wp\/v2\/posts\/528\/revisions"}],"predecessor-version":[{"id":534,"href":"https:\/\/www.leunen.com\/linux\/wp-json\/wp\/v2\/posts\/528\/revisions\/534"}],"wp:attachment":[{"href":"https:\/\/www.leunen.com\/linux\/wp-json\/wp\/v2\/media?parent=528"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.leunen.com\/linux\/wp-json\/wp\/v2\/categories?post=528"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.leunen.com\/linux\/wp-json\/wp\/v2\/tags?post=528"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}