<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
		>
<channel>
	<title>Comments on: This is the route to hell</title>
	<atom:link href="http://colin.guthr.ie/2010/02/this-is-the-route-to-hell/feed/" rel="self" type="application/rss+xml" />
	<link>http://colin.guthr.ie/2010/02/this-is-the-route-to-hell/</link>
	<description>Illegitimi non carborundum</description>
	<lastBuildDate>Tue, 27 Jul 2010 12:14:02 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.1</generator>
	<item>
		<title>By: orbisvicis</title>
		<link>http://colin.guthr.ie/2010/02/this-is-the-route-to-hell/comment-page-1/#comment-717</link>
		<dc:creator>orbisvicis</dc:creator>
		<pubDate>Fri, 28 May 2010 16:16:19 +0000</pubDate>
		<guid isPermaLink="false">http://colin.guthr.ie/?p=206#comment-717</guid>
		<description>Oh and about the CPU consumption comments, I too have have similar problems.

You mentioned &quot;it could be that the ALSA drivers for your h/w are not giving accurate timing information to PA&quot;. Perhaps in a separate article you could explain the details of why this raises CPU. Especially with respect to determining if our devices are susceptible, how to fix them, and if any workarounds  - say in daemon.pa - could be applied.

Also do you happen to know if the &quot;USB SounBlaster mp3+&quot; devices (usb-041e_USB_Audio-00-MP3) have this problem?</description>
		<content:encoded><![CDATA[<p>Oh and about the CPU consumption comments, I too have have similar problems.</p>
<p>You mentioned &#8220;it could be that the ALSA drivers for your h/w are not giving accurate timing information to PA&#8221;. Perhaps in a separate article you could explain the details of why this raises CPU. Especially with respect to determining if our devices are susceptible, how to fix them, and if any workarounds  &#8211; say in daemon.pa &#8211; could be applied.</p>
<p>Also do you happen to know if the &#8220;USB SounBlaster mp3+&#8221; devices (usb-041e_USB_Audio-00-MP3) have this problem?</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: orbisvicis</title>
		<link>http://colin.guthr.ie/2010/02/this-is-the-route-to-hell/comment-page-1/#comment-716</link>
		<dc:creator>orbisvicis</dc:creator>
		<pubDate>Fri, 28 May 2010 16:10:17 +0000</pubDate>
		<guid isPermaLink="false">http://colin.guthr.ie/?p=206#comment-716</guid>
		<description>defaul device
    I feel that it is natural not to move existing streams when the default device is changed. Obviously the user is comfortable with the current setup and if a default device is plugged in, wouldn&#039;t want the stream automatically move to this new device, especially if using headphones.

stream restore
    Just for clarification, when moving the stream via pavucontrol the changes take place automatically because &quot;the stream restore database is written by some PA client [pavucontrol] which requests the &quot;apply_immediately&quot; flag set.

    As for &quot;I don&#039;t want an override anymore&quot;, I agree. Wouldn&#039;t it make sense, if moving a stream to a default device, simply to remove the override?

I really like you proposal and feel that it is more &quot;natural&quot;</description>
		<content:encoded><![CDATA[<p>defaul device<br />
    I feel that it is natural not to move existing streams when the default device is changed. Obviously the user is comfortable with the current setup and if a default device is plugged in, wouldn&#8217;t want the stream automatically move to this new device, especially if using headphones.</p>
<p>stream restore<br />
    Just for clarification, when moving the stream via pavucontrol the changes take place automatically because &#8220;the stream restore database is written by some PA client [pavucontrol] which requests the &#8220;apply_immediately&#8221; flag set.</p>
<p>    As for &#8220;I don&#8217;t want an override anymore&#8221;, I agree. Wouldn&#8217;t it make sense, if moving a stream to a default device, simply to remove the override?</p>
<p>I really like you proposal and feel that it is more &#8220;natural&#8221;</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Colin</title>
		<link>http://colin.guthr.ie/2010/02/this-is-the-route-to-hell/comment-page-1/#comment-537</link>
		<dc:creator>Colin</dc:creator>
		<pubDate>Tue, 16 Feb 2010 09:22:40 +0000</pubDate>
		<guid isPermaLink="false">http://colin.guthr.ie/?p=206#comment-537</guid>
		<description>I&#039;m not sure I would justify the CPU usage, but there are several factors at play here: 1) Resampling is now done in PA not the app, so a CPU usage shift will be apparent. 2) PA uses a reasonably good resampler by default (which has the trade-off of higher CPU), 3) Driver bugs may result in causing PA to enter it&#039;s busy loop much more often than it should thus driving up CPU usage. 4) Connecting clients (like pavucontrol) which put a latency requirement on streams for visualisation (e.g. vu meters) will cause PA to wake up more often than it needs to and use more CPU (tho&#039; this should be pretty minimal), 5) Some rogue PA clients may be requesting information constantly and keep PA&#039;s usage higher.

What I can tell you is that on my hardware (a 4 year old Intel C2D 64-bit with HDA h/w) the CPU is never more than 2% from what I can tell, with the typical case being 0%, sometimes creeping towards 1%, so I suspect that your higher CPU usage is indicative of something specific rather than some endemic. Find the problematic part and fix it. That is the right way to work with Open Source, not saying &quot;this sucks because it doesn&#039;t work for me right now&quot;, but saying, &quot;OK this is neat but this bit isn&#039;t idea, what can I do to make it better&quot;. If you don&#039;t like it, fine, don&#039;t use it, but if you don&#039;t want to play the game, don&#039;t be surprised if you don&#039;t get much respect from the players when shouting from the sidelines.

With regards to Phonon, I&#039;m sure you&#039;re right that there are more applications than that overall, but I did say &quot;mainstream&quot; usage. Maybe my definition of &quot;mainstream&quot; is a bit harsh, but regardless of the numbers I don&#039;t think there is any disagreement that Phonon covers a tiny minority of sound producing applications on Linux. That is/was the crux of my point.

The fact that you mention phonon vs. pulseaudio is really quite funny. I know both code bases pretty well (look for me in the commits of both) and they are so completely different and target such completely different areas of the audio stack that to compare them is really quite ludicrous which is why I never do! Also while I agree it is a Qt technology, there has also been very little by way of integration work done by Qt people on this. I&#039;ve personally worked rather hard to get good integration with PA and this is done in the KDE version of libphonon. It&#039;s not been taken on by the Qt version yet despite it being available for 6+ months. So it can&#039;t really be called a Qt- technology if all the KDE distros out there basically reply on a KDE fork of phonon. In short, it&#039;s a bit of a mess. It&#039;s fine if you know the rules and where to get package xyz from, but for a general user it&#039;s pretty tricky. I suspect the lack of impetus from Qt on Phonon is that they are already planning the QtMultimedia stuff which will ultimately replace it. With the join up of Maemo and Moblin announced recently I hope that there will be more direct engagement with PulseAudio from Qt directly. Intel is alreay committed to PA on their embedded platforms and this tie-up will hopefully help cement this and provide better Qt support.

Back to your point about alsa being enough on it&#039;s own, I strongly disagree. I thoroughly believe that some form of userspace component is needed to drive desktop audio. From dealing with multi-user and multi-seat issues to dealing with sound from remote X11 applications; from interfacing with bluetooth headphones, amplifiers and headsets to hot-moves of streams; from dealing with device hotplug in a sane way to powersavings from the timer-based model, there are numerous things that are simply not possible with alsa on it&#039;s own and are enabled by PulseAudio.

This blog post is not about discussing that and, as I asked in an earlier comment, I&#039;d like to keep the posts on topic. If you want to talk more about alsa vs. PA then please comment on my earlier article that is much more relevant and contains much more detailed reasoning: http://colin.guthr.ie/2009/08/sound-on-linux-anti-fud-calm-certainty-and-confidence/</description>
		<content:encoded><![CDATA[<p>I&#8217;m not sure I would justify the CPU usage, but there are several factors at play here: 1) Resampling is now done in PA not the app, so a CPU usage shift will be apparent. 2) PA uses a reasonably good resampler by default (which has the trade-off of higher CPU), 3) Driver bugs may result in causing PA to enter it&#8217;s busy loop much more often than it should thus driving up CPU usage. 4) Connecting clients (like pavucontrol) which put a latency requirement on streams for visualisation (e.g. vu meters) will cause PA to wake up more often than it needs to and use more CPU (tho&#8217; this should be pretty minimal), 5) Some rogue PA clients may be requesting information constantly and keep PA&#8217;s usage higher.</p>
<p>What I can tell you is that on my hardware (a 4 year old Intel C2D 64-bit with HDA h/w) the CPU is never more than 2% from what I can tell, with the typical case being 0%, sometimes creeping towards 1%, so I suspect that your higher CPU usage is indicative of something specific rather than some endemic. Find the problematic part and fix it. That is the right way to work with Open Source, not saying &#8220;this sucks because it doesn&#8217;t work for me right now&#8221;, but saying, &#8220;OK this is neat but this bit isn&#8217;t idea, what can I do to make it better&#8221;. If you don&#8217;t like it, fine, don&#8217;t use it, but if you don&#8217;t want to play the game, don&#8217;t be surprised if you don&#8217;t get much respect from the players when shouting from the sidelines.</p>
<p>With regards to Phonon, I&#8217;m sure you&#8217;re right that there are more applications than that overall, but I did say &#8220;mainstream&#8221; usage. Maybe my definition of &#8220;mainstream&#8221; is a bit harsh, but regardless of the numbers I don&#8217;t think there is any disagreement that Phonon covers a tiny minority of sound producing applications on Linux. That is/was the crux of my point.</p>
<p>The fact that you mention phonon vs. pulseaudio is really quite funny. I know both code bases pretty well (look for me in the commits of both) and they are so completely different and target such completely different areas of the audio stack that to compare them is really quite ludicrous which is why I never do! Also while I agree it is a Qt technology, there has also been very little by way of integration work done by Qt people on this. I&#8217;ve personally worked rather hard to get good integration with PA and this is done in the KDE version of libphonon. It&#8217;s not been taken on by the Qt version yet despite it being available for 6+ months. So it can&#8217;t really be called a Qt- technology if all the KDE distros out there basically reply on a KDE fork of phonon. In short, it&#8217;s a bit of a mess. It&#8217;s fine if you know the rules and where to get package xyz from, but for a general user it&#8217;s pretty tricky. I suspect the lack of impetus from Qt on Phonon is that they are already planning the QtMultimedia stuff which will ultimately replace it. With the join up of Maemo and Moblin announced recently I hope that there will be more direct engagement with PulseAudio from Qt directly. Intel is alreay committed to PA on their embedded platforms and this tie-up will hopefully help cement this and provide better Qt support.</p>
<p>Back to your point about alsa being enough on it&#8217;s own, I strongly disagree. I thoroughly believe that some form of userspace component is needed to drive desktop audio. From dealing with multi-user and multi-seat issues to dealing with sound from remote X11 applications; from interfacing with bluetooth headphones, amplifiers and headsets to hot-moves of streams; from dealing with device hotplug in a sane way to powersavings from the timer-based model, there are numerous things that are simply not possible with alsa on it&#8217;s own and are enabled by PulseAudio.</p>
<p>This blog post is not about discussing that and, as I asked in an earlier comment, I&#8217;d like to keep the posts on topic. If you want to talk more about alsa vs. PA then please comment on my earlier article that is much more relevant and contains much more detailed reasoning: <a href="http://colin.guthr.ie/2009/08/sound-on-linux-anti-fud-calm-certainty-and-confidence/" rel="nofollow">http://colin.guthr.ie/2009/08/sound-on-linux-anti-fud-calm-certainty-and-confidence/</a></p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Thomas</title>
		<link>http://colin.guthr.ie/2010/02/this-is-the-route-to-hell/comment-page-1/#comment-536</link>
		<dc:creator>Thomas</dc:creator>
		<pubDate>Mon, 15 Feb 2010 20:44:31 +0000</pubDate>
		<guid isPermaLink="false">http://colin.guthr.ie/?p=206#comment-536</guid>
		<description>5 or 6 in mainstream usage? Hmm, I think you are seriously selling this short.
Phonon is a Qt technology, not a KDE technology, so that point is also not true.

But lets not make this a phonon vs pulseaudio. The question was why use pulseaudio on top of Alsa while Alsa alone works just fine.
Your answer is that it then works for apps like ogg123 too, and thats a sane answer.
But that doesn&#039;t actually answer my question of why not stick to Alsa. What does pulseaudio bring that Alsa doesn&#039;t.
Again, the PA may look nice on the drawingboard (well, your blog puts some doubts there too) but in real life it doesn&#039;t seem to actually add any benefits. Just headaces.</description>
		<content:encoded><![CDATA[<p>5 or 6 in mainstream usage? Hmm, I think you are seriously selling this short.<br />
Phonon is a Qt technology, not a KDE technology, so that point is also not true.</p>
<p>But lets not make this a phonon vs pulseaudio. The question was why use pulseaudio on top of Alsa while Alsa alone works just fine.<br />
Your answer is that it then works for apps like ogg123 too, and thats a sane answer.<br />
But that doesn&#8217;t actually answer my question of why not stick to Alsa. What does pulseaudio bring that Alsa doesn&#8217;t.<br />
Again, the PA may look nice on the drawingboard (well, your blog puts some doubts there too) but in real life it doesn&#8217;t seem to actually add any benefits. Just headaces.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Ridgeland</title>
		<link>http://colin.guthr.ie/2010/02/this-is-the-route-to-hell/comment-page-1/#comment-535</link>
		<dc:creator>Ridgeland</dc:creator>
		<pubDate>Mon, 15 Feb 2010 19:23:19 +0000</pubDate>
		<guid isPermaLink="false">http://colin.guthr.ie/?p=206#comment-535</guid>
		<description>I have a new PC, Gigabyte board with on-board audio, and a Phenom II x3 CPU.  Top shows pulse-audio using 5-8%, system monitor shows it as just 1 or 2%.  Top shows pulse-audio as second only to Xorg in total CPU time used.  The PC has been running for 13 hours, but I only just launched Audacious to play a folder of music.  PA quickly came from nowhere to be second in CPU usage.  I have not changed any settings, this is the default.  Same as many others see and scream about.
Colin, your article was informative.  But I still don&#039;t see how PA justifies it&#039;s drain on the CPU.</description>
		<content:encoded><![CDATA[<p>I have a new PC, Gigabyte board with on-board audio, and a Phenom II x3 CPU.  Top shows pulse-audio using 5-8%, system monitor shows it as just 1 or 2%.  Top shows pulse-audio as second only to Xorg in total CPU time used.  The PC has been running for 13 hours, but I only just launched Audacious to play a folder of music.  PA quickly came from nowhere to be second in CPU usage.  I have not changed any settings, this is the default.  Same as many others see and scream about.<br />
Colin, your article was informative.  But I still don&#8217;t see how PA justifies it&#8217;s drain on the CPU.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Colin</title>
		<link>http://colin.guthr.ie/2010/02/this-is-the-route-to-hell/comment-page-1/#comment-534</link>
		<dc:creator>Colin</dc:creator>
		<pubDate>Mon, 15 Feb 2010 19:09:31 +0000</pubDate>
		<guid isPermaLink="false">http://colin.guthr.ie/?p=206#comment-534</guid>
		<description>That is almost certainly &quot;my bad&quot; with module-device-manager. I think I probably add all the sinks into an empty list in the order they are kept internally (which is random) rather than their internal computed priority (which is a set of hard coded rules as to which one is &quot;best&quot;, but will typically do a pretty good job and thus avoid the need for any manual tweakage) which should provide sensible defaults. I&#039;ll make sure I look at this. Thanks for bringing it to my attention :)

(Of course you could still include the database file for module-device-manager in your /etc/skel if you really wanted a custom default, but it&#039;s probably not worth it!)</description>
		<content:encoded><![CDATA[<p>That is almost certainly &#8220;my bad&#8221; with module-device-manager. I think I probably add all the sinks into an empty list in the order they are kept internally (which is random) rather than their internal computed priority (which is a set of hard coded rules as to which one is &#8220;best&#8221;, but will typically do a pretty good job and thus avoid the need for any manual tweakage) which should provide sensible defaults. I&#8217;ll make sure I look at this. Thanks for bringing it to my attention <img src='http://colin.guthr.ie/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>(Of course you could still include the database file for module-device-manager in your /etc/skel if you really wanted a custom default, but it&#8217;s probably not worth it!)</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Kalvy</title>
		<link>http://colin.guthr.ie/2010/02/this-is-the-route-to-hell/comment-page-1/#comment-533</link>
		<dc:creator>Kalvy</dc:creator>
		<pubDate>Mon, 15 Feb 2010 18:57:59 +0000</pubDate>
		<guid isPermaLink="false">http://colin.guthr.ie/?p=206#comment-533</guid>
		<description>You are doing an impressive work in PulseAudio, thanks!

I have a little question about module-device-manager. Is there any way to set the priority of each device in the startup script, or in a system wide configuration? Maybe I missed something, but I looked for it a few months ago when I installed Mandriva 2010.0 and found nothing.

This is my scenario, using Mandriva 2010.0 and KDE: I have two sinks, one for the soundcard in the motherboard, and another for the HDMI output in my graphic card. The highest priority device should be the soundcard. However, when I create a new user account and check the device list in Phonon settings GUI I see that the HDMI output is at the top. I have to explicitly move the soundcard device over the HDMI device to get sound.

Of course I don&#039;t create users too often and doing that initial configuration isn&#039;t a big deal, but when using xguest session (which uses a fresh user account every time it is started) it becomes a bit annoying. So, can the priority for each device be set in somewhere like /etc/pulse/default.pa? Thanks for the information.</description>
		<content:encoded><![CDATA[<p>You are doing an impressive work in PulseAudio, thanks!</p>
<p>I have a little question about module-device-manager. Is there any way to set the priority of each device in the startup script, or in a system wide configuration? Maybe I missed something, but I looked for it a few months ago when I installed Mandriva 2010.0 and found nothing.</p>
<p>This is my scenario, using Mandriva 2010.0 and KDE: I have two sinks, one for the soundcard in the motherboard, and another for the HDMI output in my graphic card. The highest priority device should be the soundcard. However, when I create a new user account and check the device list in Phonon settings GUI I see that the HDMI output is at the top. I have to explicitly move the soundcard device over the HDMI device to get sound.</p>
<p>Of course I don&#8217;t create users too often and doing that initial configuration isn&#8217;t a big deal, but when using xguest session (which uses a fresh user account every time it is started) it becomes a bit annoying. So, can the priority for each device be set in somewhere like /etc/pulse/default.pa? Thanks for the information.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Colin</title>
		<link>http://colin.guthr.ie/2010/02/this-is-the-route-to-hell/comment-page-1/#comment-532</link>
		<dc:creator>Colin</dc:creator>
		<pubDate>Mon, 15 Feb 2010 18:54:19 +0000</pubDate>
		<guid isPermaLink="false">http://colin.guthr.ie/?p=206#comment-532</guid>
		<description>Well I was reckoning on including the equiv of the Configuration tab in a KCM that would be available as an extra tab in the System Settings -&gt; Multimedia. It&#039;s more of a config thing than an every day thing so would prefer to keep it away from kmix for that reason. pavucontrol is kinda the down and dirty, big bulky do it all client and the Desktop Envs should really do a bit of pick and chose to provide users with the appropriate level of UI IMO. Comments welcome on this topic but I think it&#039;s the right way to go :)</description>
		<content:encoded><![CDATA[<p>Well I was reckoning on including the equiv of the Configuration tab in a KCM that would be available as an extra tab in the System Settings -&gt; Multimedia. It&#8217;s more of a config thing than an every day thing so would prefer to keep it away from kmix for that reason. pavucontrol is kinda the down and dirty, big bulky do it all client and the Desktop Envs should really do a bit of pick and chose to provide users with the appropriate level of UI IMO. Comments welcome on this topic but I think it&#8217;s the right way to go <img src='http://colin.guthr.ie/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Olov McKie</title>
		<link>http://colin.guthr.ie/2010/02/this-is-the-route-to-hell/comment-page-1/#comment-531</link>
		<dc:creator>Olov McKie</dc:creator>
		<pubDate>Mon, 15 Feb 2010 18:22:47 +0000</pubDate>
		<guid isPermaLink="false">http://colin.guthr.ie/?p=206#comment-531</guid>
		<description>Yes that does what I am looking for. Do you have any plans to implement a similar configuration tab in kmix?</description>
		<content:encoded><![CDATA[<p>Yes that does what I am looking for. Do you have any plans to implement a similar configuration tab in kmix?</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Colin</title>
		<link>http://colin.guthr.ie/2010/02/this-is-the-route-to-hell/comment-page-1/#comment-530</link>
		<dc:creator>Colin</dc:creator>
		<pubDate>Mon, 15 Feb 2010 13:40:22 +0000</pubDate>
		<guid isPermaLink="false">http://colin.guthr.ie/?p=206#comment-530</guid>
		<description>Pretty much all I described will also be available for Sources too (I tend to just &quot;say&quot; things about playback as it&#039;s easier to grasp it as a concept but I&#039;m very much thinking about sources too. It does get a little more complicated as for a lot of sound cards, Line in and Mic in are mutualy exclusive - i.e. you cannot sample the mic and record from line in at the same time. We solve this currently by the use of profiles and ports. A given card profile will ultimately make a set of sinks and sources available for a card. In theory a card can provide two independent sources for Line in and Mic and thus they would appear in the priority lists independently. If the card does not allow mutual configuration, then a single sink will be created but a list of &quot;ports&quot; can be provided so that the user can pick which one they want. to use. Currently the priority lists idea does not take into consideration the port of a sink or source. This means that Line in would always have the same priority as Mic in and likewise Speakers output would always have the same priority as Headphones out. This may be a problem, but in practice can be solved by storing the device name+port as a pair in the priority lists if this is deemed necessary.</description>
		<content:encoded><![CDATA[<p>Pretty much all I described will also be available for Sources too (I tend to just &#8220;say&#8221; things about playback as it&#8217;s easier to grasp it as a concept but I&#8217;m very much thinking about sources too. It does get a little more complicated as for a lot of sound cards, Line in and Mic in are mutualy exclusive &#8211; i.e. you cannot sample the mic and record from line in at the same time. We solve this currently by the use of profiles and ports. A given card profile will ultimately make a set of sinks and sources available for a card. In theory a card can provide two independent sources for Line in and Mic and thus they would appear in the priority lists independently. If the card does not allow mutual configuration, then a single sink will be created but a list of &#8220;ports&#8221; can be provided so that the user can pick which one they want. to use. Currently the priority lists idea does not take into consideration the port of a sink or source. This means that Line in would always have the same priority as Mic in and likewise Speakers output would always have the same priority as Headphones out. This may be a problem, but in practice can be solved by storing the device name+port as a pair in the priority lists if this is deemed necessary.</p>
]]></content:encoded>
	</item>
</channel>
</rss>
