{"id":32,"date":"2008-04-01T01:06:28","date_gmt":"2008-03-31T23:06:28","guid":{"rendered":"http:\/\/lisas.de\/~alex\/?p=32"},"modified":"2008-04-01T01:06:28","modified_gmt":"2008-03-31T23:06:28","slug":"the-return-of-the-daemons","status":"publish","type":"post","link":"https:\/\/lisas.de\/~alex\/?p=32","title":{"rendered":"The Return Of The Daemons"},"content":{"rendered":"<p>There was a time when Linux distributions automatically started sound daemons for the user. Typically these were <a href=\"http:\/\/en.wikipedia.org\/wiki\/ARts\" title=\"analog Real time synthesizer\">aRts<\/a> for <a href=\"http:\/\/www.kde.org\/\" title=\"K Desktop Environment\">KDE<\/a> and <a href=\"http:\/\/en.wikipedia.org\/wiki\/Enlightened_Sound_Daemon\" title=\"Enlightened Sound Daemon\">esd<\/a> for <a href=\"http:\/\/www.enlightenment.org\/\" title=\"Enlightenment\">Enlightenment<\/a>, <a href=\"http:\/\/www.gnome.org\" title=\"Gnome\">Gnome<\/a> and others. The main goal was to allow simultaneous audio playback from multiple applications.<\/p>\n<p>Unfortunately, using these daemons has side effects:<\/p>\n<ul>\n<li> they introduce significant latency<\/li>\n<li>they require applications to be ported and configured to use them<\/li>\n<li>they block the audio device for either serious or rather dumb audio applications<\/li>\n<\/ul>\n<p>Then, thanks to an tremendous development effort, a new <a href=\"http:\/\/www.alsa-project.org\/main\/index.php\/Main_Page\" title=\"ALSA Project\">audio layer<\/a> for Linux was born that addressed the main goal of these daemons, allowing hardware mixing where available and enabling software mixing when necessary. The daemons became obsolete and were eventually removed from the default install of all major distributions. The only daemon that stayed relevant was <a href=\"http:\/\/jackaudio.org\/\" title=\"JACK audio connection kit\">JACK<\/a> as it addressed audio production needs and most sound creation tools were extended to support that interface, too.<\/p>\n<p>Now, guess what. There&#8217;s a <a href=\"http:\/\/www.pulseaudio.org\/\" title=\"PulseAudio\">new daemon<\/a> in town. It&#8217;s better than ESD, but will still block your audio device. And from what I&#8217;ve read it is not designed to compete with JACK in the ultra-low-latency sector. A major motivation for its creation must have been <a href=\"http:\/\/www.pulseaudio.org\/wiki\/WhyIHateALSA\" title=\"PulseAudio\/ALSA\">a severe allergic reaction to ALSA<\/a>. And Fedora and Ubuntu intend to force it upon us.<\/p>\n<p>I got aware of that after upgrading my laptop to <a href=\"https:\/\/wiki.ubuntu.com\/HardyHeron\" title=\"Hardy Heron\">hardy<\/a>, when <a href=\"http:\/\/www.mplayerhq.hu\/\" title=\"MPlayer\">mplayer<\/a> failed to playback audio until I killed the <em>pulseaudio<\/em> daemon. Oh man, was I happy when the daemons where gone.<\/p>\n<p>Yeah, I know, they promise some interesting features. I also read that PulseAudio is causing significant load under certain conditions. I&#8217;m just not sure that you really need an extra CPU hog just to play audio, unless you really dedicate your machine to audio production in which case I cannot see why we should <em>not<\/em> stick with JACK.<\/p>\n<p>I really wonder whether investing all that energy into improving ALSA instead (and maybe <a href=\"http:\/\/gstreamer.freedesktop.org\/\" title=\"GStreamer\">gstreamer<\/a> or JACK) might have helped to provide some of the same features without the hassle of yet another daemon with yet another API.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>There was a time when Linux distributions automatically started sound daemons for the user. Typically these were aRts for KDE and esd for Enlightenment, Gnome and others. The main goal was to allow simultaneous audio playback from multiple applications. Unfortunately, using these daemons has side effects: they introduce significant latency they require applications to be [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[19,16],"tags":[],"class_list":["post-32","post","type-post","status-publish","format-standard","hentry","category-fedora","category-ubuntu"],"_links":{"self":[{"href":"https:\/\/lisas.de\/~alex\/index.php?rest_route=\/wp\/v2\/posts\/32","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/lisas.de\/~alex\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/lisas.de\/~alex\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/lisas.de\/~alex\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/lisas.de\/~alex\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=32"}],"version-history":[{"count":0,"href":"https:\/\/lisas.de\/~alex\/index.php?rest_route=\/wp\/v2\/posts\/32\/revisions"}],"wp:attachment":[{"href":"https:\/\/lisas.de\/~alex\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=32"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/lisas.de\/~alex\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=32"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/lisas.de\/~alex\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=32"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}