<?xml version="1.0"?>
<rss version="2.0">

<channel>
	<title>Pulsar</title>
	<link>http://freedesktop.org/software/pulseaudio/planet/</link>
	<language>en</language>
	<description>Pulsar - http://freedesktop.org/software/pulseaudio/planet/</description>

<item>
	<title>Arun Raghavan: PulseAudio 2.0: Twice The Goodness!</title>
	<guid>http://arunraghavan.net/?p=1333</guid>
	<link>http://arunraghavan.net/2012/05/pulseaudio-2-0-twice-the-goodness/</link>
	<description>&lt;p&gt;That&amp;#8217;s right, it&amp;#8217;s finally out! Thanks go out to all our contributors for the great work (there&amp;#8217;s too many &amp;#8212; see the shortlog!). The highlights of the release follow. Head over to the &lt;a href=&quot;http://lists.freedesktop.org/archives/pulseaudio-discuss/2012-May/013538.html&quot;&gt;announcement&lt;/a&gt; or &lt;a href=&quot;http://www.freedesktop.org/wiki/Software/PulseAudio/Notes/2.0&quot;&gt;release notes&lt;/a&gt; for more details.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Dynamic sample rate switching by Pierre-Louis Bossart: This makes PulseAudio even more power efficient.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Jack detection by David Henningsson: Separate volumes for your laptop speakers and headphones, and more stuff coming soon.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Major echo canceller improvements by me: Based on the &lt;tt&gt;WebRTC.org&lt;/tt&gt; audio processing library, we now do better echo cancellation, remove the need to fiddle with the mic volume knob and have fixed &lt;acronym title=&quot;Acoustic Echo Cancellation&quot;&gt;AEC&lt;/acronym&gt; between laptop speakers and a USB webcam mic.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;A virtual surround module by Niels Ole Salscheider: Try it out for some virtual surround sound shininess!&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Support for Xen guests by Giorgos Boutsiouki: Should make audio virtualisation in guests more efficient.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href=&quot;http://arunraghavan.net/wp-content/uploads/pa-releases.jpg&quot;&gt;&lt;img src=&quot;http://arunraghavan.net/wp-content/uploads/pa-releases-239x300.jpg&quot; alt=&quot;We don't always make a release, but when we do, it's awesome&quot; title=&quot;pa-releases&quot; width=&quot;239&quot; height=&quot;300&quot; class=&quot;aligncenter size-medium wp-image-1334&quot; /&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Special thanks from me to &lt;a href=&quot;http://www.collabora.com/projects/pulseaudio/&quot;&gt;Collabora&lt;/a&gt; for giving me some time for upstream work.&lt;/p&gt;

&lt;p&gt;Packages are available on Gentoo, Arch, and probably soon on other distributions if they&amp;#8217;re not already there.&lt;/p&gt;</description>
	<pubDate>Sat, 12 May 2012 10:50:34 +0000</pubDate>
</item>
<item>
	<title>Twitter: pulseaudio: PulseAudio 2.0 is out! Our tweets sound even better now! http://t.co/S5DwpkIS (by Arun)</title>
	<guid>http://twitter.com/pulseaudio/statuses/200969004632911872</guid>
	<link>http://twitter.com/pulseaudio/statuses/200969004632911872</link>
	<description>pulseaudio: PulseAudio 2.0 is out! Our tweets sound even better now! http://t.co/S5DwpkIS (by Arun)</description>
	<pubDate>Fri, 11 May 2012 15:21:59 +0000</pubDate>
</item>
<item>
	<title>Arun Raghavan: Androidifying your autotools build the easy way</title>
	<guid>http://arunraghavan.net/?p=1329</guid>
	<link>http://arunraghavan.net/2012/05/androidifying-your-autotools-build-the-easy-way/</link>
	<description>&lt;p&gt;&lt;a href=&quot;http://derekforeman.blogspot.ca/&quot;&gt;Derek Foreman&lt;/a&gt; has finally written up a nice blog post about his &lt;a href=&quot;http://cgit.collabora.com/git/android/androgenizer.git/tree/README.txt&quot;&gt;Androgenizer&lt;/a&gt; tool, which we&amp;#8217;ve used for porting PulseAudio, GStreamer, Wayland, Telepathy and most of their dependencies to Android.&lt;/p&gt;

&lt;p&gt;If you&amp;#8217;ve got an autotools-based project that you&amp;#8217;d like to build on Android, whether on the NDK or system-wide this is &lt;em&gt;really&lt;/em&gt; useful.&lt;/p&gt;</description>
	<pubDate>Tue, 01 May 2012 19:48:15 +0000</pubDate>
</item>
<item>
	<title>Arun Raghavan: PulseAudio on Android: Part 2</title>
	<guid>http://arunraghavan.net/?p=1300</guid>
	<link>http://arunraghavan.net/2012/04/pulseaudio-on-android-part-2/</link>
	<description>&lt;p&gt;Some of you might&amp;#8217;ve noticed that there has been a bunch of work happening here at &lt;a href=&quot;http://www.collabora.com/services/android/&quot;&gt;Collabora&lt;/a&gt; on making cool open source technologies such as &lt;a href=&quot;http://gstreamer.freedesktop.org/modules/gst-android.html&quot;&gt;GStreamer&lt;/a&gt;, Telepathy, &lt;a href=&quot;http://ppaalanen.blogspot.in/2012/04/first-light-from-weston-on-android.html&quot;&gt;Wayland&lt;/a&gt; and of course, &lt;a href=&quot;http://arunraghavan.net/2012/01/pulseaudio-vs-audioflinger-fight/&quot;&gt;PulseAudio&lt;/a&gt; available on Android.&lt;/p&gt;

&lt;p&gt;Since my last blog post on this subject, I got some time to start looking at replacing AudioFlinger (recap: that&amp;#8217;s Android&amp;#8217;s native audio subsystem) with PulseAudio (recap: that&amp;#8217;s the awesome Linux audio subsystem). This work can be broken up into 3 parts: playback, capture, and policy. The roles of playback and capture are obvious. For those who aren&amp;#8217;t aware of system internals, the policy bits take care of audio routing, volumes, and other such things. For example, audio should play out of your headphones if they&amp;#8217;re plugged in, off Bluetooth if you&amp;#8217;ve got a headset paired, or the speakers if nothing&amp;#8217;s plugged in. Also, depending on the device, the output volume might change based on the current output path.&lt;/p&gt;

&lt;p&gt;I started by looking at solving the playback problem first. I&amp;#8217;ve got the first 80% of this done (as we all know, the second 80% takes at least as long ;) ). This is done by replacing the native &lt;tt&gt;AudioTrack&lt;/tt&gt; playback API with a simple wrapper that translates into the &lt;tt&gt;libpulse&lt;/tt&gt; PulseAudio client API. There&amp;#8217;s bits of the API that seem to be rarely used(loops and markers, primarily), and I&amp;#8217;ve not gotten around to those yet. Basic playback works quite well, and here&amp;#8217;s a video showing this. (&lt;em&gt;Note: this and the next video will be served with yummy HTML5 goodness if you enabled the &lt;a href=&quot;http://youtube.com/html5&quot;&gt;YouTube HTML5 beta&lt;/a&gt;&lt;/em&gt;).&lt;/p&gt;



&lt;p&gt;(if the video doesn&amp;#8217;t appear, you can &lt;a href=&quot;http://www.youtube.com/watch?v=h9fxmOaW2Bw&quot;&gt;watch it on YouTube&lt;/a&gt;)&lt;/p&gt;

&lt;p&gt;Users of PulseAudio might have spotted that this now frees us up to do some fairly nifty things. One such thing is getting remote playback for free. For a long time now, there has been support for streaming audio between devices running PulseAudio. I wrote up a quick app to show this working on the Galaxy Nexus as well. Again, seeing this working is a lot more impressive than me describing it here, so here&amp;#8217;s another video:&lt;/p&gt;



&lt;p&gt;(if the video doesn&amp;#8217;t appear, you can &lt;a href=&quot;http://www.youtube.com/watch?v=o5-phFVfZnQ&quot;&gt;watch it on YouTube&lt;/a&gt;)&lt;/p&gt;

&lt;p&gt;This is all clearly work in progress, but you can find the code for the AudioTrack wrapper as &lt;a href=&quot;http://people.collabora.com/~arun/android/frameworks-base-0001-First-stab-at-a-libpulse-based-AudioTrack-API.patch&quot;&gt;a patch&lt;/a&gt; for now. This will be a properly integrated tree that you can just pull and easily integrate into your Android build when it&amp;#8217;s done. The PA Output Switcher app code is also available in &lt;a href=&quot;http://cgit.collabora.com/git/user/arun/pa-output-switcher.git&quot;&gt;a git repository&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;I&amp;#8217;m hoping to be able to continue hacking on the capture and policy bits. The latter, especially, promises to be involved, since there isn&amp;#8217;t always a 1:1 mapping between AudioFlinger and PulseAudio concepts. Nothing insurmountable, though. :) Watch this space for more updates as I wade through the next bit.&lt;/p&gt;</description>
	<pubDate>Mon, 30 Apr 2012 10:35:27 +0000</pubDate>
</item>
<item>
	<title>David Henningsson: Audio over HDMI and DisplayPort in Ubuntu 12.04</title>
	<guid>http://voices.canonical.com/david.henningsson/?p=106</guid>
	<link>http://voices.canonical.com/david.henningsson/2012/04/14/audio-over-hdmi-and-displayport-in-ubuntu-12-04/</link>
	<description>&lt;p&gt;Ok, for those of you who just want it up and working, I&amp;#8217;m including a quickstart section before we dive into the details:&lt;/p&gt;
&lt;h3&gt;Quickstart&lt;/h3&gt;
&lt;p&gt;1) If you have an ATI/AMD or NVidia card, you need &lt;a href=&quot;https://help.ubuntu.com/11.10/ubuntu-help/hardware-driver-proprietary.html&quot;&gt;proprietary drivers&lt;/a&gt;.&lt;br /&gt;
2) You need to activate your secondary screen. For Intel, this is done in the regular &amp;#8220;Screens&amp;#8221; dialog, and on NVidia this is done in the nvidia-settings dialog. (I haven&amp;#8217;t tested fglrx.)&lt;br /&gt;
3) You need to select the HDMI/DisplayPort output in the sound settings dialog, which is quickest reachable from the sound indicator.&lt;/p&gt;
&lt;h3&gt;Can&amp;#8217;t we switch audio output automatically?&lt;/h3&gt;
&lt;p&gt;Choosing whether to automatically switch to HDMI/DisplayPort &amp;#8211; essentially, switching sound to use the HDMI/DisplayPort whenever that screen is activated &amp;#8211; is not trivial. It is not obvious to me whether the user wants to do that, or not. And in fact, in Ubuntu 11.10, we did switch, but only for some cards. And we did not switch back when the screen was deactivated. After a &lt;a href=&quot;http://lists.freedesktop.org/archives/pulseaudio-discuss/2012-March/012991.html&quot;&gt;discussion&lt;/a&gt; where &lt;a href=&quot;http://lists.freedesktop.org/archives/pulseaudio-discuss/2012-March/013006.html&quot;&gt;different&lt;/a&gt; &lt;a href=&quot;http://lists.freedesktop.org/archives/pulseaudio-discuss/2012-March/013009.html&quot;&gt;opinions&lt;/a&gt; were voiced, I reached the &lt;a href=&quot;http://lists.freedesktop.org/archives/pulseaudio-discuss/2012-March/013018.html&quot;&gt;conclusion&lt;/a&gt; that given the current pieces of infrastructure in place, the best option would be to &lt;b&gt;disable automatic HDMI/DisplayPort switching&lt;/b&gt; for Ubuntu 12.04.&lt;/p&gt;
&lt;h3&gt;The problem of four devices&lt;/h3&gt;
&lt;p&gt;As mentioned in an &lt;a href=&quot;http://voices.canonical.com/david.henningsson/2011/09/06/pulseaudio-with-jack-detection/&quot; title=&quot;PulseAudio with jack detection&quot;&gt;earlier post&lt;/a&gt;, much HDMI/DisplayPort hardware have phantom outputs, and there is no way we know what outputs are real until something is plugged in. With the new sound settings UI in Ubuntu 12.04, we finally have a good user experience in this scenario: Only the outputs that are actually plugged in and possible to activate will be shown.&lt;br /&gt;
&lt;img src=&quot;http://voices.canonical.com/david.henningsson/files/2012/04/sound-settings-ui2.png&quot; alt=&quot;Sound settings in Ubuntu 12.04&quot; width=&quot;75%&quot; /&gt;&lt;br /&gt;
&lt;font size=&quot;-1&quot;&gt;Sound settings in Ubuntu 12.04&lt;/font&gt;&lt;/p&gt;
&lt;h3&gt;Video drivers&lt;/h3&gt;
&lt;p&gt;Most of the code to activate HDMI/DisplayPort audio is in the video driver, rather than the audio driver. Therefore, if this is not working, it is more likely that the problem is within the video driver.&lt;br /&gt;
It is also notable that the open source driver for ATI/AMD (called radeon), has experimental support for HDMI/DisplayPort audio, at least for some cards. It is &lt;a href=&quot;https://lists.ubuntu.com/archives/kernel-team/2012-February/018898.html&quot;&gt;disabled by default&lt;/a&gt;, but you can activate it by adding radeon.audio=1 as a &lt;a href=&quot;https://help.ubuntu.com/community/BootOptions#Changing_boot_options_Permanently_for_an_Existing_Installation&quot;&gt;kernel boot parameter&lt;/a&gt;.&lt;/p&gt;
&lt;h3&gt;Upstreaming notes&lt;/h3&gt;
&lt;p&gt;PulseAudio 2.0 is soon to be released (hopefully). PulseAudio 2.0 and Ubuntu 12.04 have the same feature set when it comes to HDMI/DisplayPort audio support.&lt;br /&gt;
The new sound settings UI in Ubuntu 12.04 has not yet been upstreamed.&lt;/p&gt;</description>
	<pubDate>Sat, 14 Apr 2012 01:05:14 +0000</pubDate>
</item>
<item>
	<title>Arun Raghavan: PulseAudio in Google Summer of Code 2012</title>
	<guid>http://arunraghavan.net/?p=1297</guid>
	<link>http://arunraghavan.net/2012/04/pulseaudio-in-google-summer-of-code-2012/</link>
	<description>&lt;p&gt;If you&amp;#8217;re a student participating in this year&amp;#8217;s edition of Google Summer of Code and want to get your hands dirty with some fun low-level hacking, here&amp;#8217;s a quick reminder that PulseAudio is a participating organisation for the first time, and we have some &lt;a href=&quot;http://www.freedesktop.org/wiki/Software/PulseAudio/GSoC2012&quot;&gt;nice ideas&lt;/a&gt; for you to hack on.&lt;/p&gt;

&lt;p&gt;The deadline for applications is 2 days away, so get those applications in soon! If you&amp;#8217;ve got questions, feel free to drop by #pulseaudio on the Freenode IRC network and ping us. (I&amp;#8217;m &lt;tt&gt;Ford_Prefect&lt;/tt&gt; there for those who don&amp;#8217;t know)&lt;/p&gt;</description>
	<pubDate>Wed, 04 Apr 2012 12:27:43 +0000</pubDate>
</item>
<item>
	<title>Twitter: pulseaudio: PulseAudio 1.99.2 (a.k.a. 2.0 RC2) is out -- be the first to try it and win free virtual brownies! (by Arun)</title>
	<guid>http://twitter.com/pulseaudio/statuses/185037359161675776</guid>
	<link>http://twitter.com/pulseaudio/statuses/185037359161675776</link>
	<description>pulseaudio: PulseAudio 1.99.2 (a.k.a. 2.0 RC2) is out -- be the first to try it and win free virtual brownies! (by Arun)</description>
	<pubDate>Wed, 28 Mar 2012 16:15:18 +0000</pubDate>
</item>
<item>
	<title>Twitter: pulseaudio: PulseAudio will be participating in this year's Google Summer of Code! Check out our wiki for more details: http://t.co/eIoWoKrC (by Arun)</title>
	<guid>http://twitter.com/pulseaudio/statuses/180721354180526080</guid>
	<link>http://twitter.com/pulseaudio/statuses/180721354180526080</link>
	<description>pulseaudio: PulseAudio will be participating in this year's Google Summer of Code! Check out our wiki for more details: http://t.co/eIoWoKrC (by Arun)</description>
	<pubDate>Fri, 16 Mar 2012 18:25:03 +0000</pubDate>
</item>
<item>
	<title>Twitter: pulseaudio: PulseAudio 1.99.1 (2.0 RC1) is out -- get it while it's hot! http://t.co/0VQHvCCR (by Arun)</title>
	<guid>http://twitter.com/pulseaudio/statuses/180282688907907072</guid>
	<link>http://twitter.com/pulseaudio/statuses/180282688907907072</link>
	<description>pulseaudio: PulseAudio 1.99.1 (2.0 RC1) is out -- get it while it's hot! http://t.co/0VQHvCCR (by Arun)</description>
	<pubDate>Thu, 15 Mar 2012 13:21:57 +0000</pubDate>
</item>
<item>
	<title>Twitter: pulseaudio: Just submitted #PulseAudio's org application for this year's #GSoC! (by Arun)</title>
	<guid>http://twitter.com/pulseaudio/statuses/178100427672387584</guid>
	<link>http://twitter.com/pulseaudio/statuses/178100427672387584</link>
	<description>pulseaudio: Just submitted #PulseAudio's org application for this year's #GSoC! (by Arun)</description>
	<pubDate>Fri, 09 Mar 2012 12:50:25 +0000</pubDate>
</item>
<item>
	<title>Twitter: pulseaudio: Wiki has moved: http://t.co/aVZbRego Help us fill it!! (by Colin)</title>
	<guid>http://twitter.com/pulseaudio/statuses/177483749762678784</guid>
	<link>http://twitter.com/pulseaudio/statuses/177483749762678784</link>
	<description>pulseaudio: Wiki has moved: http://t.co/aVZbRego Help us fill it!! (by Colin)</description>
	<pubDate>Wed, 07 Mar 2012 19:59:58 +0000</pubDate>
</item>
<item>
	<title>Colin Guthrie: What sound does a wiki make?</title>
	<guid>http://colin.guthr.ie/?p=477</guid>
	<link>http://colin.guthr.ie/2012/03/what-sound-does-a-wiki-make/</link>
	<description>&lt;p&gt;So as many followers may know already, most of the technical infrastructure we use for PulseAudio has been moved over to &lt;a href=&quot;http://www.freedesktop.org/wiki/&quot;&gt;FreeDesktop.org&lt;/a&gt;. We already moved the &lt;a href=&quot;http://lists.freedesktop.org/mailman/listinfo/pulseaudio-discuss&quot;&gt;mailing lists&lt;/a&gt; and &lt;a href=&quot;http://cgit.freedesktop.org/pulseaudio/&quot;&gt;git&lt;/a&gt; hosting some time ago, and one of the main bits left was the &lt;a href=&quot;http://www.freedesktop.org/wiki/Software/PulseAudio&quot;&gt;wiki&lt;/a&gt;.&lt;span id=&quot;more-477&quot;&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;We had previously used the FreeDesktop wiki for a couple, isolated pages (mainly because the pulseaudio.org wiki was just too frustrating to use), but the vast majority of content was still on the old servers.&lt;/p&gt;
&lt;p&gt;So I finally got around to looking at migrating the content. Now a lot of it is out of date (again see the &quot;too frustrating to use&quot; comment above!), but there is still a lot of data and history there that we'd like to preserve.&lt;/p&gt;
&lt;p&gt;Fortunately, FreeDesktop use &lt;a href=&quot;http://moinmo.in/&quot;&gt;MoinMoin&lt;/a&gt; which is very easy to manipulate, squeeze and mould into the right shape. No complicated databases, just a relatively isolated file system layout. This very much eased the migration process.&lt;/p&gt;
&lt;p&gt;We used &lt;a href=&quot;http://trac.edgewall.org/&quot;&gt;Trac&lt;/a&gt; over at pulseaudio.org and I've done a fair bit of hacking on Trac before so this was also quite convenient as the only &lt;a href=&quot;http://moinmo.in/ScriptMarket/trac2moin&quot;&gt;two&lt;/a&gt; &lt;a href=&quot;http://moinmo.in/Trac2Moin&quot;&gt;scripts&lt;/a&gt; I found for migrating wiki content from Trac to Moin were very basic and limited in their features.&lt;/p&gt;
&lt;p&gt;So I set about writing a script to do the conversion. &lt;a href=&quot;http://colin.guthr.ie/git/trac2moin&quot;&gt;trac2moin&lt;/a&gt; supports full wiki conversion including history and attachments. It can rename pages (and fix up links) with a simple map file and also rename users with another map file. It can even fixup some of the syntax differences and even translate a few basic macros. All in all, the conversion process was pretty good.&lt;/p&gt;
&lt;p&gt;There will, of course, still be a requirement for a big refresh of the data and content, but now that the bulk of the heavy lifting is done that task can be planned, organised and undertaken without any barriers!&lt;/p&gt;
&lt;p&gt;Many thanks to Arun Raghavan and to Tollef Fog Heen for their help in this conversion process.&lt;/p&gt;
&lt;p&gt;So get updating!&lt;/p&gt;
&lt;div class=&quot;sociable&quot;&gt;&lt;div&gt;&lt;span class=&quot;sociable-tagline&quot;&gt;Share and Enjoy:&lt;/span&gt;&lt;/div&gt;&lt;ul&gt;&lt;li&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;http://digg.com/submit?phase=2&amp;url=http%3A%2F%2Fcolin.guthr.ie%2F2012%2F03%2Fwhat-sound-does-a-wiki-make%2F&amp;title=What%20sound%20does%20a%20wiki%20make%3F&amp;bodytext=So%20as%20many%20followers%20may%20know%20already%2C%20most%20of%20the%20technical%20infrastructure%20we%20use%20for%20PulseAudio%20has%20been%20moved%20over%20to%20FreeDesktop.org.%20We%20already%20moved%20the%20mailing%20lists%20and%20git%20hosting%20some%20time%20ago%2C%20and%20one%20of%20the%20main%20bits%20left%20was%20the%20wiki.%0D%0A%0D&quot;&gt;&lt;img src=&quot;http://colin.guthr.ie/wp-content/plugins/sociable-30/images/default/16/digg.png&quot; class=&quot;sociable-img sociable-hovers&quot; title=&quot;Digg&quot; alt=&quot;Digg&quot; /&gt;&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;http://www.stumbleupon.com/submit?url=http%3A%2F%2Fcolin.guthr.ie%2F2012%2F03%2Fwhat-sound-does-a-wiki-make%2F&amp;title=What%20sound%20does%20a%20wiki%20make%3F&quot;&gt;&lt;img src=&quot;http://colin.guthr.ie/wp-content/plugins/sociable-30/images/default/16/stumbleupon.png&quot; class=&quot;sociable-img sociable-hovers&quot; title=&quot;StumbleUpon&quot; alt=&quot;StumbleUpon&quot; /&gt;&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;http://delicious.com/post?url=http%3A%2F%2Fcolin.guthr.ie%2F2012%2F03%2Fwhat-sound-does-a-wiki-make%2F&amp;title=What%20sound%20does%20a%20wiki%20make%3F&amp;notes=So%20as%20many%20followers%20may%20know%20already%2C%20most%20of%20the%20technical%20infrastructure%20we%20use%20for%20PulseAudio%20has%20been%20moved%20over%20to%20FreeDesktop.org.%20We%20already%20moved%20the%20mailing%20lists%20and%20git%20hosting%20some%20time%20ago%2C%20and%20one%20of%20the%20main%20bits%20left%20was%20the%20wiki.%0D%0A%0D&quot;&gt;&lt;img src=&quot;http://colin.guthr.ie/wp-content/plugins/sociable-30/images/default/16/delicious.png&quot; class=&quot;sociable-img sociable-hovers&quot; title=&quot;del.icio.us&quot; alt=&quot;del.icio.us&quot; /&gt;&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;http://www.facebook.com/share.php?u=http%3A%2F%2Fcolin.guthr.ie%2F2012%2F03%2Fwhat-sound-does-a-wiki-make%2F&amp;t=What%20sound%20does%20a%20wiki%20make%3F&quot;&gt;&lt;img src=&quot;http://colin.guthr.ie/wp-content/plugins/sociable-30/images/default/16/facebook.png&quot; class=&quot;sociable-img sociable-hovers&quot; title=&quot;Facebook&quot; alt=&quot;Facebook&quot; /&gt;&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;http://buzz.yahoo.com/submit/?submitUrl=http%3A%2F%2Fcolin.guthr.ie%2F2012%2F03%2Fwhat-sound-does-a-wiki-make%2F&amp;submitHeadline=What%20sound%20does%20a%20wiki%20make%3F&amp;submitSummary=So%20as%20many%20followers%20may%20know%20already%2C%20most%20of%20the%20technical%20infrastructure%20we%20use%20for%20PulseAudio%20has%20been%20moved%20over%20to%20FreeDesktop.org.%20We%20already%20moved%20the%20mailing%20lists%20and%20git%20hosting%20some%20time%20ago%2C%20and%20one%20of%20the%20main%20bits%20left%20was%20the%20wiki.%0D%0A%0D&amp;submitCategory=science&amp;submitAssetType=text&quot;&gt;&lt;img src=&quot;http://colin.guthr.ie/wp-content/plugins/sociable-30/images/default/16/yahoobuzz.png&quot; class=&quot;sociable-img sociable-hovers&quot; title=&quot;Yahoo! Buzz&quot; alt=&quot;Yahoo! Buzz&quot; /&gt;&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;http://twitter.com/home?status=What%20sound%20does%20a%20wiki%20make%3F%20-%20http%3A%2F%2Fcolin.guthr.ie%2F2012%2F03%2Fwhat-sound-does-a-wiki-make%2F&quot;&gt;&lt;img src=&quot;http://colin.guthr.ie/wp-content/plugins/sociable-30/images/default/16/twitter.png&quot; class=&quot;sociable-img sociable-hovers&quot; title=&quot;Twitter&quot; alt=&quot;Twitter&quot; /&gt;&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;http://www.google.com/bookmarks/mark?op=edit&amp;bkmk=http%3A%2F%2Fcolin.guthr.ie%2F2012%2F03%2Fwhat-sound-does-a-wiki-make%2F&amp;title=What%20sound%20does%20a%20wiki%20make%3F&amp;annotation=So%20as%20many%20followers%20may%20know%20already%2C%20most%20of%20the%20technical%20infrastructure%20we%20use%20for%20PulseAudio%20has%20been%20moved%20over%20to%20FreeDesktop.org.%20We%20already%20moved%20the%20mailing%20lists%20and%20git%20hosting%20some%20time%20ago%2C%20and%20one%20of%20the%20main%20bits%20left%20was%20the%20wiki.%0D%0A%0D&quot;&gt;&lt;img src=&quot;http://colin.guthr.ie/wp-content/plugins/sociable-30/images/default/16/googlebookmark.png&quot; class=&quot;sociable-img sociable-hovers&quot; title=&quot;Google Bookmarks&quot; alt=&quot;Google Bookmarks&quot; /&gt;&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;http://identi.ca/notice/new?status_textarea=http%3A%2F%2Fcolin.guthr.ie%2F2012%2F03%2Fwhat-sound-does-a-wiki-make%2F&quot;&gt;&lt;img src=&quot;http://colin.guthr.ie/wp-content/plugins/sociable-30/images/default/16/identica.png&quot; class=&quot;sociable-img sociable-hovers&quot; title=&quot;Identi.ca&quot; alt=&quot;Identi.ca&quot; /&gt;&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;http://slashdot.org/bookmark.pl?title=What%20sound%20does%20a%20wiki%20make%3F&amp;url=http%3A%2F%2Fcolin.guthr.ie%2F2012%2F03%2Fwhat-sound-does-a-wiki-make%2F&quot;&gt;&lt;img src=&quot;http://colin.guthr.ie/wp-content/plugins/sociable-30/images/default/16/slashdot.png&quot; class=&quot;sociable-img sociable-hovers&quot; title=&quot;Slashdot&quot; alt=&quot;Slashdot&quot; /&gt;&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;</description>
	<pubDate>Wed, 07 Mar 2012 19:51:14 +0000</pubDate>
</item>
<item>
	<title>Arun Raghavan: Gentoo: PulseAudio + ALSA update</title>
	<guid>http://arunraghavan.net/?p=1274</guid>
	<link>http://arunraghavan.net/2012/02/gentoo-pulseaudio-alsa-update/</link>
	<description>&lt;p&gt;For a long time now, fellow-Gentoo&amp;#8217;ers have had to edit &lt;tt&gt;/etc/asound.conf&lt;/tt&gt; or &lt;tt&gt;~/.asoundrc&lt;/tt&gt; to make programs that talk directly to ALSA go through PulseAudio. Most other distributions ship configuration that automatically probes to see if PulseAudio is running and use that if avaialble, else fall back to the actual hardware. We did that too, but the configuration wasn&amp;#8217;t used, and when you did try to use it, broke in mysterious ways.&lt;/p&gt;

&lt;p&gt;I finally got around to actually figuring out the problem and fixing it, so if you have custom configuration to do all this, you should now be able to remove it after emerge&amp;#8217;ing &lt;tt&gt;media-plugins/alsa-plugins-1.0.25-r1&lt;/tt&gt; or later with the &lt;tt&gt;pulseaudio&lt;/tt&gt; USE flag. With the next PulseAudio bump, we&amp;#8217;ll be depending on this to make the out-of-the-box experience a lot more seamless.&lt;/p&gt;

&lt;p&gt;This took much longer to get done than it should have, but we&amp;#8217;ve finally caught up. :)&lt;/p&gt;

&lt;p&gt;&lt;em&gt;[Props to Mart Raudsepp (leio) for prodding me into doing this.]&lt;/em&gt;&lt;/p&gt;</description>
	<pubDate>Tue, 14 Feb 2012 05:01:27 +0000</pubDate>
</item>
<item>
	<title>Lennart Poettering: PulseAudio vs. AudioFlinger</title>
	<guid>http://0pointer.de/blog/projects/aruns-numbers.html</guid>
	<link>http://0pointer.de/blog/projects/aruns-numbers.html</link>
	<description>&lt;p&gt;&lt;a href=&quot;http://arunraghavan.net/2012/01/pulseaudio-vs-audioflinger-fight/&quot;&gt;Arun
put an awesome article up&lt;/a&gt;, detailing how PulseAudio compares to Android's
AudioFlinger in terms of power consumption and suchlike. Suffice to say,
PulseAudio rocks, but go and read the whole thing, it's worth it.&lt;/p&gt;

&lt;p&gt;Apparently, AudioFlinger is a great choice if you want to shorten your
battery life.&lt;/p&gt;</description>
	<pubDate>Mon, 16 Jan 2012 15:31:00 +0000</pubDate>
</item>
<item>
	<title>Arun Raghavan: PulseAudio vs. AudioFlinger: Fight!</title>
	<guid>http://arunraghavan.net/?p=1189</guid>
	<link>http://arunraghavan.net/2012/01/pulseaudio-vs-audioflinger-fight/</link>
	<description>&lt;p&gt;I&amp;#8217;ve been meaning to try this for a while, and we&amp;#8217;ve heard a number of requests from the community as well. Recently, I got some time here at &lt;a href=&quot;http://www.collabora.com/projects/pulseaudio&quot;&gt;Collabora&lt;/a&gt; to give it a go &amp;#8212; that is, to get PulseAudio running on an Android device and see how it compares with Android&amp;#8217;s AudioFlinger.&lt;/p&gt;

&lt;h2&gt;The Contenders&lt;/h2&gt;

&lt;p&gt;Let&amp;#8217;s introduce our contenders first. For those who don&amp;#8217;t know, &lt;a href=&quot;http://pulseaudio.org/&quot;&gt;PulseAudio&lt;/a&gt; is pretty much a de-facto standard part of the Linux audio stack. It sits on top of &lt;acronym title=&quot;Advanced Linux Sound Architecture&quot;&gt;ALSA&lt;/acronym&gt; which provides a unified way to talk to the audio hardware and provides a number of handy features that are useful on desktops and embedded devices. I won&amp;#8217;t rehash all of these, but this includes a nice modular framework, a bunch of power saving features, flexible routing, and lots more. PulseAudio runs as a daemon, and clients usually use the &lt;tt&gt;libpulse&lt;/tt&gt; library to communicate with it.&lt;/p&gt;

&lt;p&gt;In the other corner, we have Android&amp;#8217;s native audio system &amp;#8212; AudioFlinger. AudioFlinger was written from scratch for Android. It provides an API for playback/recording as well as a control mechanism for implementing policy. It does not depend on ALSA, but instead allows for a sort of &lt;acronym title=&quot;Hardware Abstraction Layer&quot;&gt;HAL&lt;/acronym&gt; that vendors can implement any way they choose. Applications generally play audio via layers built on top of AudioFlinger. Even if you write a native application, it would use &lt;a href=&quot;http://www.khronos.org/opensles/&quot;&gt;OpenSL ES&lt;/a&gt; implementation which goes through AudioFlinger. The actual service runs as a thread of the &lt;tt&gt;mediaserver&lt;/tt&gt; daemon, but this is merely an implementation detail.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Note: all my comments about AudioFlinger and Android in general are based on documentation and code for Android 4.0 (Ice Cream Sandwich).&lt;/em&gt;&lt;/p&gt;

&lt;h2&gt;The Arena&lt;/h2&gt;

&lt;p&gt;My test-bed for the tests was the &lt;a href=&quot;http://en.wikipedia.org/wiki/Galaxy_Nexus&quot;&gt;Galaxy Nexus&lt;/a&gt; running Android 4.0 which we shall just abbreviate to ICS. I picked ICS since it is the current platform on which Google is building, and hopefully represents the latest and greatest in AudioFlinger development. The Galaxy Nexus runs a Texas Instruments OMAP4 processor, which is also really convenient since this chip has pretty good support for running stock Linux (read on to see how useful this was).&lt;/p&gt;

&lt;h2&gt;Preparations&lt;/h2&gt;

&lt;p&gt;The first step in getting PulseAudio on Android was deciding between using the Android &lt;acronym title=&quot;Native Development Kit&quot;&gt;NDK&lt;/acronym&gt; like a regular application or integrate into the base Android system. I chose the latter &amp;#8212; even though this was a little more work initially, it made more sense in the long run since PulseAudio really belongs to the base-system.&lt;/p&gt;

&lt;p&gt;The next task was to get the required dependencies ported to Android. Fortunately, a lot of the ground work for this was already done by some of the awesome folks at Collabora. Derek Foreman&amp;#8217;s &lt;a href=&quot;http://cgit.collabora.com/git/user/derek/androgenizer.git/&quot;&gt;&lt;tt&gt;androgenizer&lt;/tt&gt;&lt;/a&gt; tool is incredibly handy for converting an &lt;tt&gt;autotools&lt;/tt&gt;-based build to Android&amp;#8211;friendly makefiles. With Reynaldo Verdejo and Alessandro Decina&amp;#8217;s prior work on &lt;a href=&quot;http://gstreamer.freedesktop.org/modules/gst-android.html&quot;&gt;GStreamer for Android&lt;/a&gt; as a reference, things got even easier.&lt;/p&gt;

&lt;p&gt;The most painful bit was &lt;tt&gt;libltdl&lt;/tt&gt;, which we use for dynamically loading modules. Once this was done, the other dependencies were quite straightforward to port over. As a bonus, the Android source already ships an optimised version of Speex which we use for resampling, and it was easy to reuse this as well.&lt;/p&gt;

&lt;p&gt;As I mentioned earlier, vendors can choose how they implement their audio abstraction layer. On the Galaxy Nexus, this is built on top of standard ALSA drivers, and the HAL talks to the drivers via a minimalist &lt;a href=&quot;https://github.com/tinyalsa&quot;&gt;tinyalsa&lt;/a&gt; library. My first hope was to use this, but there was a whole bunch of functions missing that PulseAudio needed. The next approach was to use &lt;a href=&quot;http://www.alsa-project.org/main/index.php/SALSA-Library&quot;&gt;salsa-lib&lt;/a&gt;, which is a stripped down version of the ALSA library written for embedded devices. This too had some missing functions, but these were fewer and easy to implement (and are now &lt;a href=&quot;http://git.kernel.org/?p=linux/kernel/git/tiwai/salsa-lib.git;a=commit;h=8485a2bdc725b531794f277cd3e37973a8524830&quot;&gt;upstream&lt;/a&gt;).&lt;/p&gt;

&lt;p&gt;Now if only life were that simple. :) I got PulseAudio running on the Galaxy Nexus with &lt;tt&gt;salsa-lib&lt;/tt&gt;, and even got sound out of the HDMI port. Nothing from the speakers though (they&amp;#8217;re driven by a TI &lt;a href=&quot;http://www.ti.com/product/twl6040&quot;&gt;twl6040&lt;/a&gt; codec). Just to verify, I decided to port the full &lt;tt&gt;alsa-lib&lt;/tt&gt; and &lt;tt&gt;alsa-utils&lt;/tt&gt; packages to debug what&amp;#8217;s happening (by this time, I&amp;#8217;m familiar enough with &lt;tt&gt;androgenizer&lt;/tt&gt; for all this to be a breeze). Still no luck. Finally, with some pointers from the kind folks at TI (thanks Liam!), I got current &lt;acronym title=&quot;Use Case Manager&quot;&gt;UCM&lt;/acronym&gt; configuration files for OMAP4 boards, and some work-in-progress patches to add UCM support to PulseAudio, and after a couple of minor fixes, wham! We have output. :)&lt;/p&gt;

&lt;p&gt;&lt;em&gt;(For those who don&amp;#8217;t know about UCM &amp;#8212; embedded chips are quite different from desktops and expose a huge amount of functionality via ALSA mixer controls. UCM is an effort to have a standard, meaningful way for applications and users to use these.)&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;In production, it might be handy to write light-weight UCM support for &lt;tt&gt;salsa-lib&lt;/tt&gt; or just convert the UCM configuration into PulseAudio path/profile configuration (bonus points if it&amp;#8217;s an automated tool). For our purposes, though, just using &lt;tt&gt;alsa-lib&lt;/tt&gt; is good enough.&lt;/p&gt;

&lt;p&gt;To make the comparison fair, I wrote a simple test program that reads raw PCM S16LE data from a file and plays it via the &lt;tt&gt;AudioTrack&lt;/tt&gt; interface provided by AudioFlinger or the PulseAudio &lt;a href=&quot;http://freedesktop.org/software/pulseaudio/doxygen/async.html&quot;&gt;Asynchronous API&lt;/a&gt;. Tests were run with the brightness fixed, wifi off, and USB port connected to my laptop (for adb shell access).&lt;/p&gt;

&lt;p&gt;All tests were run with the CPU frequency pegged at 350 MHz and with 44.1 and 48 kHz samples. Five readings were recorded, and the median value was finally taken.&lt;/p&gt;

&lt;h2&gt;Round 1: CPU&lt;/h2&gt;

&lt;p&gt;First, let&amp;#8217;s take a look at how the two compare in terms of CPU usage. The numbers below are the percentage CPU usage taken as the sum of all threads of the audio server process and the audio thread in the client application using &lt;tt&gt;top&lt;/tt&gt; (which is why the granularity is limited to an integer percentage).&lt;/p&gt;

&lt;table&gt;
&lt;colgroup span=&quot;2&quot;&gt;
&lt;colgroup span=&quot;2&quot;&gt;
&lt;tr&gt; &lt;th colspan=&quot;2&quot;&gt;44.1 kHz&lt;/th&gt; &lt;th colspan=&quot;2&quot;&gt;48 kHz&lt;/th&gt; &lt;/tr&gt;
&lt;tr&gt; &lt;th&gt;AF&lt;/th&gt; &lt;th&gt;PA&lt;/th&gt; &lt;th&gt;AF&lt;/th&gt; &lt;th&gt;PA&lt;/th&gt; &lt;/tr&gt;
&lt;tr&gt; &lt;td&gt;1%&lt;/td&gt; &lt;td&gt;1%&lt;/td&gt; &lt;td&gt;2%&lt;/td&gt; &lt;td&gt;0%&lt;/td&gt; &lt;/tr&gt;
&lt;/colgroup&gt;&lt;/colgroup&gt;&lt;/table&gt;

&lt;p&gt;At 44.1 kHz, the two are essentially the same. Both cases are causing resampling to occur (the native sample rate for the device is 48 kHz). Resampling is done using the Speex library, and we&amp;#8217;re seeing minuscule amounts of CPU usage even at 350 MHz, so it&amp;#8217;s clear that the NEON optimisations are really paying off here.&lt;/p&gt;

&lt;p&gt;The astute reader would have noticed that since the device&amp;#8217; native sample rate is 48 kHz, the CPU usage for 48 kHz playback should be less than for 44.1 kHz. This is true with PulseAudio, but not with AudioFlinger! The reason for this little quirk is that AudioFlinger provides 44.1 kHz samples to the HAL (which means the stream is resampled there), and then the HAL needs to resample it again to 48 kHz to bring it to the device&amp;#8217; native rate. From what I can tell, this is a matter of convention with regards to what audio HALs should expect from AudioFlinger (do correct me if I&amp;#8217;m mistaken about the rationale).&lt;/p&gt;

&lt;p&gt;So round 1 leans slightly in favour of PulseAudio.&lt;/p&gt;

&lt;h2&gt;Round 2: Memory&lt;/h2&gt;

&lt;p&gt;Comparing the memory consumption of the server process is a bit meaningless, because the AudioFlinger daemon thread shares an address space with the rest of the &lt;tt&gt;mediaserver&lt;/tt&gt; process. For the curious, the resident set size was: AudioFlinger &amp;#8212; 6,796 KB, PulseAudio &amp;#8212; 3,024 KB. Again, this doesn&amp;#8217;t really mean much.&lt;/p&gt;

&lt;p&gt;We can, however, compare the client process&amp;#8217; memory consumption. This is &lt;acronym title=&quot;Resident Set Size&quot;&gt;RSS&lt;/acronym&gt; in kilobytes, measured using &lt;tt&gt;top&lt;/tt&gt;.&lt;/p&gt;

&lt;table&gt;
&lt;colgroup span=&quot;2&quot;&gt;
&lt;colgroup span=&quot;2&quot;&gt;
&lt;tr&gt; &lt;th colspan=&quot;2&quot;&gt;44.1 kHz&lt;/th&gt; &lt;th colspan=&quot;2&quot;&gt;48 kHz&lt;/th&gt; &lt;/tr&gt;
&lt;tr&gt; &lt;th&gt;AF&lt;/th&gt; &lt;th&gt;PA&lt;/th&gt; &lt;th&gt;AF&lt;/th&gt; &lt;th&gt;PA&lt;/th&gt; &lt;/tr&gt;
&lt;tr&gt; &lt;td&gt;2600 kB&lt;/td&gt; &lt;td&gt;3020 kB&lt;/td&gt; &lt;td&gt;2604 kB&lt;/td&gt; &lt;td&gt;3020 kB&lt;/td&gt; &lt;/tr&gt;
&lt;/colgroup&gt;&lt;/colgroup&gt;&lt;/table&gt;

&lt;p&gt;The memory consumption is comparable between the two, but leans in favour of AudioFlinger.&lt;/p&gt;

&lt;h2&gt;Round 3: Power&lt;/h2&gt;

&lt;p&gt;I didn&amp;#8217;t have access to a power monitor, so I decided to use a couple of indirect metrics to compare power utilisation. The first of these is &lt;a href=&quot;http://www.lesswatts.org/projects/powertop/&quot;&gt;PowerTOP&lt;/a&gt;, which is actually a Linux desktop tool for monitoring various power metrics. Happily, someone had already &lt;a href=&quot;https://gitorious.org/android/powertop&quot;&gt;ported PowerTOP to Android&lt;/a&gt;. The tool reports, among other things, the number of wakeups-from-idle per second for the processor as a whole, and on a per-process basis. Since there are multiple threads involved, and PowerTOP&amp;#8217;s per-process measurements are somewhat cryptic to add up, I used the global wakeups-from-idle per second. The &amp;#8220;Idle&amp;#8221; value counts the number of wakeups when nothing is happening. The actual value is very likely so high because the device is connected to my laptop in USB debugging mode (lots of wakeups from USB, and the device is prevented from going into a full sleep).&lt;/p&gt;

&lt;table&gt;
&lt;colgroup span=&quot;1&quot;&gt;
&lt;colgroup span=&quot;2&quot;&gt;
&lt;colgroup span=&quot;2&quot;&gt;
&lt;tr&gt; &lt;th&gt;&lt;/th&gt; &lt;th colspan=&quot;2&quot;&gt;44.1 kHz&lt;/th&gt; &lt;th colspan=&quot;2&quot;&gt;48 kHz&lt;/th&gt; &lt;/tr&gt;
&lt;tr&gt; &lt;th&gt;Idle&lt;/th&gt; &lt;th&gt;AF&lt;/th&gt; &lt;th&gt;PA&lt;/th&gt; &lt;th&gt;AF&lt;/th&gt; &lt;th&gt;PA&lt;/th&gt; &lt;/tr&gt;
&lt;tr&gt; &lt;td&gt;79.6&lt;/td&gt; &lt;td&gt;107.8&lt;/td&gt; &lt;td&gt;87.3&lt;/td&gt; &lt;td&gt;108.5&lt;/td&gt; &lt;td&gt;85.7&lt;/td&gt; &lt;/tr&gt;
&lt;/colgroup&gt;&lt;/colgroup&gt;&lt;/colgroup&gt;&lt;/table&gt;

&lt;p&gt;The second, similar, data point is the number of interrupts per second reported by &lt;tt&gt;vmstat&lt;/tt&gt;. These corroborate the numbers above:&lt;/p&gt;

&lt;table&gt;
&lt;colgroup span=&quot;1&quot;&gt;
&lt;colgroup span=&quot;2&quot;&gt;
&lt;colgroup span=&quot;2&quot;&gt;
&lt;tr&gt; &lt;th&gt;&lt;/th&gt; &lt;th colspan=&quot;2&quot;&gt;44.1 kHz&lt;/th&gt; &lt;th colspan=&quot;2&quot;&gt;48 kHz&lt;/th&gt; &lt;/tr&gt;
&lt;tr&gt; &lt;th&gt;Idle&lt;/th&gt; &lt;th&gt;AF&lt;/th&gt; &lt;th&gt;PA&lt;/th&gt; &lt;th&gt;AF&lt;/th&gt; &lt;th&gt;PA&lt;/th&gt; &lt;/tr&gt;
&lt;tr&gt; &lt;td&gt;190&lt;/td&gt; &lt;td&gt;266&lt;/td&gt; &lt;td&gt;215&lt;/td&gt; &lt;td&gt;284&lt;/td&gt; &lt;td&gt;207&lt;/td&gt; &lt;/tr&gt;
&lt;/colgroup&gt;&lt;/colgroup&gt;&lt;/colgroup&gt;&lt;/table&gt;

&lt;p&gt;PulseAudio&amp;#8217;s power-saving features are clearly highlighted in this comparison. AudioFlinger causes &lt;em&gt;about three times the number of wakeups per second&lt;/em&gt; that PulseAudio does. Things might actually be worse on older hardware with less optimised drivers than the Galaxy Nexus (I&amp;#8217;d appreciate reports from running similar tests on a Nexus S or any other device with ALSA support to confirm this).&lt;/p&gt;

&lt;p&gt;For those of you who aren&amp;#8217;t familiar with PulseAudio, the reason we manage to get these savings is our timer-based scheduling mode. In this mode, we fill up the hardware buffer as much as possible and go to sleep (disabling ALSA interrupts while we&amp;#8217;re at it, if possibe). We only wake up when the buffer is nearing empty, and fill it up again. More details can be found in this old &lt;a href=&quot;http://0pointer.de/blog/projects/pulse-glitch-free.html&quot;&gt;blog post by Lennart&lt;/a&gt;.&lt;/p&gt;

&lt;h2&gt;Round 4: Latency&lt;/h2&gt;

&lt;p&gt;I&amp;#8217;ve only had the Galaxy Nexus to actually try this out with, but I&amp;#8217;m pretty certain I&amp;#8217;m not the only person seeing &lt;a href=&quot;http://code.google.com/p/android/issues/detail?id=3434&quot;&gt;latency issues on Android&lt;/a&gt;. On the Galaxy Nexus, for example, the best latency I can get appears to be 176 ms. This is pretty high for certain types of applications, particularly ones that generate tones based on user input.&lt;/p&gt;

&lt;p&gt;With PulseAudio, where we dynamically adjust buffering based on what clients request, I was able to drive down the total buffering to approximately 20 ms (too much lower, and we started getting dropouts). There is likely room for improvement here, and it is something on my todo list, but even out-of-the-box, we&amp;#8217;re doing quite well.&lt;/p&gt;

&lt;h2&gt;Round 5: Features&lt;/h2&gt;

&lt;p&gt;With the hard numbers out of the way, I&amp;#8217;d like to talk a little bit about what else PulseAudio brings to the table. In addition to a playback/record API, AudioFlinger provides mechanism for enforcing various bits of policy such as volumes and setting the &amp;#8220;active&amp;#8221; device amongst others. PulseAudio exposes similar functionality, some as part of the client API and the rest via the core API exposed to modules.&lt;/p&gt;

&lt;p&gt;From &lt;acronym title=&quot;System-on-Chip&quot;&gt;SoC&lt;/acronym&gt; vendors&amp;#8217; perspective, it is often necessary to support both Android and standard Linux on the same chip. Being able to focus only on good quality ALSA drivers and knowing that this will ensure quality on both these systems would be a definite advantage in this case.&lt;/p&gt;

&lt;p&gt;The current Android system leaves power management to the audio HAL. This means that each vendor needs to implement this themselves. Letting PulseAudio manage the hardware based on requested latencies and policy gives us a single point of control, greatly simplifying the task of power-management and avoiding code duplication.&lt;/p&gt;

&lt;p&gt;There are a number of features that PulseAudio provides that can be useful in the various scenarios where Android is used. For example, we support transparently streaming audio over the network, which could be a handy way of supporting playing audio from your phone on your TV completely transparently and out-of-the-box. We also support compressed formats (AC3, DTS, etc.) which the ongoing Android-on-your-TV efforts could likely take advantage of.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Edit: As someone pointed out on LWN, I missed one thing &amp;#8212; AudioFlinger has an effect API that we do not yet have in PulseAudio. It&amp;#8217;s something I&amp;#8217;d definitely like to see added to PulseAudio in the future.&lt;/em&gt;&lt;/p&gt;

&lt;h2&gt;Ding! Ding! Ding!&lt;/h2&gt;

&lt;p&gt;That pretty much concludes the comparison of these two audio daemons. Since the Android-side code is somewhat under-documented, I&amp;#8217;d welcome comments from readers who are familiar with the code and history of AudioFlinger.&lt;/p&gt;

&lt;p&gt;I&amp;#8217;m in the process of pushing all the patches I&amp;#8217;ve had to write to the various upstream projects. A number of these are merely build system patches to integrate with the Android build system, and I&amp;#8217;m hoping projects are open to these. Instructions on building this code will be available on the &lt;a href=&quot;http://www.pulseaudio.org/wiki/Android&quot;&gt;PulseAudio Android wiki page&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;For future work, it would be interesting to write a wrapper on top of PulseAudio that exposes the AudioFlinger audio and policy APIs &amp;#8212; this would basically let us run PulseAudio as a drop-in AudioFlinger replacement. In addition, there are potential performance benefits that can be derived from using Android-specific infrastructure such as Binder (for &lt;acronym title=&quot;Inter-Process Communication&quot;&gt;IPC&lt;/acronym&gt;) and &lt;tt&gt;ashmem&lt;/tt&gt; (for transferring audio blocks as shared memory segments, something we support on desktops using the standard Linux SHM mechanism which is not available on Android).&lt;/p&gt;

&lt;p&gt;If you&amp;#8217;re an OEM who is interested in this work, you can get in touch with us &amp;#8212; details are on the &lt;a href=&quot;http://www.collabora.com/contact/&quot;&gt;Collabora website&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;I hope this is useful to some of you out there!&lt;/p&gt;</description>
	<pubDate>Mon, 16 Jan 2012 12:22:30 +0000</pubDate>
</item>
<item>
	<title>David Henningsson: Audio debugging techniques</title>
	<guid>http://voices.canonical.com/david.henningsson/?p=49</guid>
	<link>http://voices.canonical.com/david.henningsson/2011/12/08/audio-debugging-techniques/</link>
	<description>&lt;p&gt;As a part of the Ubuntu Hardware Summit, I held a presentation on the topic &amp;#8220;audio debugging techniques&amp;#8221;, focused on HDA Intel cards. I also wrote down some notes for some of those slides. I share the slides and the notes with the hope that you will find the information useful if you run into troubles with your audio hardware.&lt;/p&gt;
&lt;h3&gt;Audio stack overview&lt;/h3&gt;
&lt;p&gt;&lt;img src=&quot;http://voices.canonical.com/david.henningsson/files/2011/12/UHS2011_Audio-03.png&quot; alt=&quot;&quot; /&gt;&lt;br /&gt;
The audio stack can seem a bit complex, but first look at the line all the way from the applications to the hardware. This is the optimal audio path. If the audio path is different, complexity will increase and you might run into undesired behaviour, such as one application blocking another from playing audio. There are valid exceptions though &amp;#8211; we have a &lt;a href=&quot;http://jackaudio.org&quot; target=&quot;_blank&quot; title=&quot;Jack&quot;&gt;separate sound server for professional, low-latency audio&lt;/a&gt;. But that&amp;#8217;s outside the scope of this presentation.&lt;/p&gt;
&lt;p&gt;Let&amp;#8217;s start from the top. On the top we have different kinds of audio applications, which talk to &lt;a href=&quot;http://pulseaudio.org&quot; target=&quot;_blank&quot;&gt;PulseAudio&lt;/a&gt;. &lt;a href=&quot;http://www.gstreamer.net&quot; target=&quot;_blank&quot;&gt;GStreamer&lt;/a&gt; is a library to help media playback, it can for example decode ogg and mp3 files. PulseAudio mixes these audio streams and send them down to the kernel. The ALSA library and the ALSA kernel core do not do much here but send the audio pointers through. The HDA controller driver is responsible for talking directly to the hardware, and so it sets up all necessary DMA streams between the HDA controller and memory. The HDA controller driver also talks to the HDA codec driver, which is different for every codec vendor. &lt;/p&gt;
&lt;p&gt;As some of you probably know, between the HDA controller &amp;#8211; which is a part of the southbridge in most computers &amp;#8211; and the HDA codec, a special HDA bus is used. This means that the only way we can talk to the codec is through the controller. &lt;/p&gt;
&lt;p&gt;Controlling audio volume goes the same path. When you use your volume control application, it controls PulseAudio&amp;#8217;s volume. PulseAudio in turn modifies the volume controls being exposed by the kernel, and the kernel in turn talks to the hardware to set volume control registers on the codec. There are two levels of abstraction here: first, the kernel might choose not to expose all of the hardware&amp;#8217;s volume controls, and second, PulseAudio exposes only one big volume control which is the sum of some of the volume controls the kernel exposes. So there is filtering on two levels.&lt;/p&gt;
&lt;h3&gt;Audio stack overview &amp;#8211; codec&lt;/h3&gt;
&lt;p&gt;&lt;img src=&quot;http://voices.canonical.com/david.henningsson/files/2011/12/UHS2011_Audio-04.png&quot; alt=&quot;&quot; /&gt;&lt;br /&gt;
Let us have a look at the HDA codec chip and how its internals are represented to the driver. The codec is constructed as a graph, and on this slide one of the more simple HDA codec graphs is shown (just because it would fit the screen). A while ago upstream made a small program to extract this graph from the codec and make a picture of it. Thanks to Keng-Yü, who works for Canonical in Taipei, this tool is available as a package in Ubuntu 11.10. Just install the &amp;#8220;codecgraph&amp;#8221; package.&lt;/p&gt;
&lt;p&gt;In this graph we have nodes correspondings to DACs, ADCs, mixers, and pins. In this example we can see what pins are connected to which DACs by following the solid line. The dotted line shows a connection that is possible but not currently active.&lt;/p&gt;
&lt;p&gt;As the Linux codec driver code grows more intelligent, we depend more and more on this information to be accurate. This way we do not hard code as much in the driver, so we can adapt to future codecs without having to rewrite much code.&lt;br /&gt;
The information coming from the codec is usually correct. One problem we have from time to time is though, is that sometimes chip vendors add features which they choose not to document in this graph (and not in any other way either). There is a mechanism called &amp;#8220;processing coefficients&amp;#8221; in the specification, where the vendor can add its own functionality without telling anyone. When that happens, and it is required to use these undocumented &amp;#8220;processing coefficients&amp;#8221; to enable all inputs and outputs, we usually run into difficult problems that require vendor support to resolve. &lt;/p&gt;
&lt;p&gt;Also, in some cases the graph cannot describe the functionality needed, e g if some hardware is depending on special pins on the codec. We need to know about this when it happens, so we can support it in the driver. So if you are a hardware designer, my message is: Try to use the standard way of doing things as much as possible. Do this and it will work out of the box on Linux, and likely other operating systems as well. If you do anything special, you&amp;#8217;re causing headache for driver writers, possibly causing a slower time to market.&lt;br /&gt;
An example of this would be how you control external amplifiers: you can use the EAPD pins, which is the standard way, and you can use GPIO pins, ACPI, or anything else, that will be more problematic and require special driver support.&lt;/p&gt;
&lt;h3&gt;Pin configuration default&lt;/h3&gt;
&lt;p&gt;&lt;img src=&quot;http://voices.canonical.com/david.henningsson/files/2011/12/UHS2011_Audio-05.png&quot; alt=&quot;&quot; /&gt;&lt;br /&gt;
We also depend on information from the writers of BIOS/UEFI, i e the computer&amp;#8217;s firmware. As a hardware designer, you have the freedom to choose which pins of the codec that go to what physical jack. You might decide that you want a digital out, or you decide that this machine should not have that functionality, and then you leave that pin unconnected.&lt;br /&gt;
Then the firmware engineer needs to know this, and program this into the codec when the computer boots. This is done by setting the &amp;#8220;Pin Configuration Default&amp;#8221; register. This register tells us not only the device type (headphone, mic, etc), but also the location (Internal, External, Docking Station), the color, and the channel mapping (to use for surround functionality).&lt;/p&gt;
&lt;p&gt;Several years ago, we did not read this register much, but these days, we depend on that for all new computers for setting up the codec correctly. So what do we do if this register is wrong? Well, if we work with hardware pre-release, there might be a chance we can feed this information back to the firmware writers so they can correct the problem. If the hardware is already released, we have to create a &amp;#8220;quirk&amp;#8221;. This means that the driver overrides the firmware&amp;#8217;s pin value(s) and instead uses its own value.&lt;/p&gt;
&lt;p&gt;Because this value is so important, I&amp;#8217;ve written &lt;a href=&quot;http://voices.canonical.com/david.henningsson/2011/11/29/turn-your-mic-jack-into-a-headphone-jack/&quot; title=&quot;Turn your mic jack into a headphone jack!&quot; target=&quot;_blank&quot;&gt;an application&lt;/a&gt; where you can try out different combinations of this register.&lt;/p&gt;
&lt;h3&gt;Mixer problems&lt;/h3&gt;
&lt;p&gt;&lt;img src=&quot;http://voices.canonical.com/david.henningsson/files/2011/12/UHS2011_Audio-06.png&quot; alt=&quot;&quot; /&gt;&lt;br /&gt;
One of the most common problems with getting audio up and running on Linux is to make sure the mixer is correct. Typical symptoms of this would be that some outputs are working where others are not, or that there is something wrong with the volume control. &lt;/p&gt;
&lt;p&gt;Here are some initial checks of these problems. We do this at the two levels of mixer abstraction. First, let&amp;#8217;s have a look at the PulseAudio volume control. You can do that in Gnome&amp;#8217;s volume control application.&lt;/p&gt;
&lt;p&gt;Also, PulseAudio controls the volume of mixers at the ALSA level. You can see how this works by starting the alsamixer program. In this program, you can also see additional sliders, which you can also use to verify that they are in the correct to enable sound. You start alsamixer from a terminal (in Ubuntu the quickest way to launch a terminal is the Ctrl-Alt-T shortcut).&lt;/p&gt;
&lt;h3&gt;Mixer control names&lt;/h3&gt;
&lt;p&gt;&lt;img src=&quot;http://voices.canonical.com/david.henningsson/files/2011/12/UHS2011_Audio-07.png&quot; alt=&quot;&quot; /&gt;&lt;br /&gt;
So let&amp;#8217;s look at these two abstraction levels in more detail and how you can inspect what is actually going on. First, let&amp;#8217;s look at the codec level. If you are familiar with the codec&amp;#8217;s nodes and how they are connected, e g by running &amp;#8220;codecgraph&amp;#8221;, you can also find out which ALSA level controls that are connected to which nodes on the codec. This is done by inspecting the &amp;#8220;codec proc&amp;#8221; file. Every codec in the system has this file, and its name is made up of the sound card name, and the codec&amp;#8217;s address on the HDA bus. In this file, you can also see a lot of other information about the codec. &lt;/p&gt;
&lt;p&gt;So next, we will also take a look at PulseAudio&amp;#8217;s abstraction of these controls. This is done by looking at the files in /usr/share/pulseaudio/alsa-mixer. In this case, if we look at /usr/share/pulseaudio/alsa-mixer/paths/analog-output-headphones.conf, you can e g find the sections [Element Master] and [Element Headphones]. That means that the ALSA-level controls &amp;#8220;Master&amp;#8221; and &amp;#8220;Headphones&amp;#8221; are being merged in PulseAudio&amp;#8217;s volume control when the &amp;#8220;Headphones&amp;#8221; port has been selected.&lt;/p&gt;
&lt;p&gt;So these two places are the keys to understanding what is going on when you have mixer problems.&lt;/p&gt;
&lt;h3&gt;PCM/Streaming problems&lt;/h3&gt;
&lt;p&gt;&lt;img src=&quot;http://voices.canonical.com/david.henningsson/files/2011/12/UHS2011_Audio-08.png&quot; alt=&quot;&quot; /&gt;&lt;br /&gt;
So up next is when you have problems with the streaming. That is usually shown as the audio is breaking up, crackling or glitching. Unfortunately these problems are typically quite hard to resolve. &lt;/p&gt;
&lt;p&gt;Sometimes this can be a bug in PulseAudio, or in the driver. But more often the problem is on either the application side or the hardware side. &lt;/p&gt;
&lt;p&gt;If an application is not submitting data to PulseAudio in time, the PulseAudio has no audio to play back, so therefore playback breaks up. Once some more data has reached PulseAudio, it starts playback again, and so playback is started and stopped repeatedly.&lt;/p&gt;
&lt;p&gt;The other problem could be with bad position reports from the hardware. PulseAudio depends on being able to ask the hardware for its current position at all times, and this should be sample accurate. You can test this by trying to run PulseAudio with timer scheduling disabled, in this case PulseAudio will rely more on DMA interrupts and less on position reports. However, this will also make PulseAudio draw more power than necessary from the machine, so please avoid this if you can.&lt;/p&gt;
&lt;p&gt;When I try to debug these problems I usually start with making a &lt;a href=&quot;http://wiki.ubuntu.com/PulseAudio/Log&quot; target=&quot;_blank&quot;&gt;PulseAudio verbose log&lt;/a&gt;. It often takes some knowledge and experience to be able to analyze this log though.&lt;/p&gt;
&lt;h3&gt;Jack sensing&lt;/h3&gt;
&lt;p&gt;&lt;img src=&quot;http://voices.canonical.com/david.henningsson/files/2011/12/UHS2011_Audio-09.png&quot; alt=&quot;&quot; /&gt;&lt;br /&gt;
Over the last six months or so, one of the things I&amp;#8217;ve been working with is trying to get better jack detection handling, throughout the audio stack.&lt;br /&gt;
&amp;#8220;Jack sensing&amp;#8221; in this context means what to do when something has been plugged in, or unplugged. &lt;/p&gt;
&lt;p&gt;When this happens, an interrupt (IRQ) is triggered and control is passed to the HDA codec driver. The driver takes the first action itself. Now, this is an area, unfortunately, when things differ a lot between different drivers, mostly between different vendors, but also between different chips of the same vendor, or even between configurations of the same chip.&lt;/p&gt;
&lt;p&gt;But as a general rule, and for the most common vendors &amp;#8211; that means Realtek, IDT and Conexant &amp;#8211; these rules are the ones that are followed:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;For headphones &amp;#8211; when you plug them in, the Internal Speakers are muted. Remember, this is still all at the kernel level. &lt;/li&gt;
&lt;li&gt;For what we&amp;#8217;re doing with Line Outs &amp;#8211; it&amp;#8217;s not completely standardised everywhere yet, but it seems upstream is leaning on having Headphones mute Line Outs and having Line Outs mute Internal Speakers by default. Some drivers also have a special control where the automute behaviour can be changed.&lt;/li&gt;
&lt;li&gt;For Microphones &amp;#8211; the only rule here is that if we have only one internal microphone and one external microphone, the external microphone takes over when you plug it in, and the internal microphone regains control when you unplug. Should there be any other inputs, e g two external mic jacks, or a line in jack, no autoswitching is done at the kernel level.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;After this has been done, a signal is sent to userspace. Hopefully &amp;#8211; this also varies between vendors. We&amp;#8217;ll get back to that. What&amp;#8217;s new in Ubuntu 11.10, is that this signal is &lt;a href=&quot;http://voices.canonical.com/david.henningsson/2011/09/06/pulseaudio-with-jack-detection/&quot; title=&quot;PulseAudio with jack detection&quot;&gt;being picked up by PulseAudio&lt;/a&gt;. This is important, because it enables PulseAudio, to switch port for volume control. So this means, when you press your media keys (or use the sound menu) to control your volume, you control your headphone&amp;#8217;s volume when you have headphones plugged in, and your speakers&amp;#8217; volume when your headphones are unplugged.&lt;/p&gt;
&lt;p&gt;So this not working properly, is one of the more common problems. I have written a small tool that helps you to debug whether this issue is in hardware or software. This tool is called &amp;#8220;hda-jack-sense-test&amp;#8221;. This program sends the &amp;#8220;get pin sense&amp;#8221; command to each codec and outputs the results. I actually had use for it earlier this week, and confirmed that it was a hardware issue: although the headphones were unplugged, the &amp;#8220;get pin sense&amp;#8221; command returned that the headphones were being plugged in and unplugged all the time.&lt;/p&gt;
&lt;p&gt;If you can confirm that things are working at this level, you can also look in &amp;#8220;Sound settings&amp;#8221; to see if the port (this is known as a &amp;#8220;connector&amp;#8221;) is automatically switched whenever headphones &amp;#8211; or microphone &amp;#8211; is plugged in. If it is not, the most common cause is that kernel driver does not notify userspace correctly about that change.&lt;/p&gt;
&lt;h3&gt;HDMI/DisplayPort Audio&lt;/h3&gt;
&lt;p&gt;&lt;img src=&quot;http://voices.canonical.com/david.henningsson/files/2011/12/UHS2011_Audio-10.png&quot; alt=&quot;&quot; /&gt;&lt;br /&gt;
One of the most common problem with HDMI these days are with newer chips supporting more than one output. These outputs could be HDMI, DisplayPort or DVI (with audio supported through a DVI to HDMI adapter). NVidia has supported four outputs for quite some time and Intel has supported three. But usually, not all of these are actually connected on the board.&lt;br /&gt;
Now, the problem is: How do we know what pin to output to? And the answer is, that there is no good way to figure that out until something is actually plugged in. &lt;/p&gt;
&lt;p&gt;If you remember me talking about the pin config default earlier, you would say that maybe the graphics chip could mark the pins not connected to anything. If this was done, it would be a great start (and if they are, we make use of it to hide the outputs that are marked as not connected), but unfortunately, more often than not, these pins are set up as all pins connected and present. So if you write firmware for internal or external graphics cards, please do set up these pins. &lt;/p&gt;
&lt;p&gt;So if we don&amp;#8217;t know, what do we do? Well, here&amp;#8217;s also work in progress at the userspace level. First, PulseAudio has to probe how many ports there are. Then we can use the new jack detection feature, to determine what has actually been plugged in. I&amp;#8217;m currently working on redesigning the sound settings dialog so that the ports that are not plugged in will be actually hidden from the dialog, and I hope this will land in Ubuntu 12.04 which will be released in April next year. &lt;/p&gt;
&lt;p&gt;And a final note, just so you don&amp;#8217;t forget it: For NVidia and ATI, they both require proprietary video drivers to enable HDMI and DisplayPort audio. The ATI driver used to have support for some of the cards in its open source driver, but this feature was recently removed because they had some problems with it.&lt;br /&gt;
Intel has no proprietary drivers at all, so there it works with the standard open source driver.&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;http://voices.canonical.com/david.henningsson/files/2011/12/UHS2011_Audio-11.png&quot; alt=&quot;&quot; /&gt;&lt;br /&gt;
&lt;img src=&quot;http://voices.canonical.com/david.henningsson/files/2011/12/UHS2011_Audio-12.png&quot; alt=&quot;&quot; /&gt;&lt;br /&gt;
&lt;img src=&quot;http://voices.canonical.com/david.henningsson/files/2011/12/UHS2011_Audio-13.png&quot; alt=&quot;&quot; /&gt;&lt;/p&gt;</description>
	<pubDate>Thu, 08 Dec 2011 16:16:51 +0000</pubDate>
</item>
<item>
	<title>Twitter: pulseaudio: Do any of our followers have any internal contact with Adobe? Perhaps you can push them to fix http://t.co/lbvD0VJz (by Colin)</title>
	<guid>http://twitter.com/pulseaudio/statuses/142213549459111937</guid>
	<link>http://twitter.com/pulseaudio/statuses/142213549459111937</link>
	<description>pulseaudio: Do any of our followers have any internal contact with Adobe? Perhaps you can push them to fix http://t.co/lbvD0VJz (by Colin)</description>
	<pubDate>Thu, 01 Dec 2011 12:08:47 +0000</pubDate>
</item>
<item>
	<title>Arun Raghavan: Talk video from GstConf 2011</title>
	<guid>http://arunraghavan.net/?p=1182</guid>
	<link>http://arunraghavan.net/2011/11/talk-video-from-gstconf-2011/</link>
	<description>&lt;p&gt;For those of you who were interested but couldn&amp;#8217;t make it to the GStreamer Conference this year, the cool folks at Ubicast have got the &lt;a href=&quot;http://gstconf.ubicast.tv/channels/#conferences2011&quot;&gt;talk videos up&lt;/a&gt; (can be streamed or downloaded).&lt;/p&gt;

&lt;p&gt;Among these is &lt;a href=&quot;http://gstconf.ubicast.tv/videos/latest-developments-in-pulse-audio/&quot;&gt;my talk&lt;/a&gt; about recent developments in the PulseAudio world.&lt;/p&gt;</description>
	<pubDate>Thu, 17 Nov 2011 13:50:43 +0000</pubDate>
</item>
<item>
	<title>Arun Raghavan: i’m in yur analog gain, controlling it</title>
	<guid>http://arunraghavan.net/?p=1169</guid>
	<link>http://arunraghavan.net/2011/11/im-in-yur-analog-gain-controlling-it/</link>
	<description>&lt;p&gt;Longish day, but I did want to post something fun before going to sleep &amp;#8212; I just pushed out patches to hook up the WebRTC folks&amp;#8217; analog gain control to PulseAudio. So your mic will automatically adjust the input level based on how loud you&amp;#8217;re speaking. It&amp;#8217;s quite quick to adapt if you&amp;#8217;re too loud, but a bit slow when the input signal is too soft. This isn&amp;#8217;t bad, since the former is a much bigger problem than the latter.&lt;/p&gt;

&lt;p&gt;Also, we&amp;#8217;ve switched to the WebRTC canceller as the default canceller (you can still choose the Speex canceller manually, though). Overall, the quality is pretty good. I&amp;#8217;d do a demo, but it&amp;#8217;s effectively had zero learning time in my tests, so we&amp;#8217;re not too far from a stage where this is a feature that, &lt;em&gt;if we&amp;#8217;re doing it right you won&amp;#8217;t notice it exists&lt;/em&gt;.&lt;/p&gt;

&lt;p&gt;There lot&amp;#8217;s of things, big and small that need to be added and tweaked, but this does go some way towards bringing a hassle-free VoIP experience on Linux closer to reality. Once again, kudos to the folks at Google for the great work and for opening up this code. Also a shout-out to fellow &lt;a href=&quot;http://www.collabora.com&quot;&gt;Collaboran&lt;/a&gt; &lt;a href=&quot;http://sjoerd.luon.net/blog/&quot;&gt;Sjoerd Simons&lt;/a&gt; for bouncing ideas and giving me those much-needed respites from talking to myself. :)&lt;/p&gt;</description>
	<pubDate>Mon, 07 Nov 2011 19:13:00 +0000</pubDate>
</item>
<item>
	<title>Arun Raghavan: Notes from the Prague Audio BoFs</title>
	<guid>http://arunraghavan.net/?p=1123</guid>
	<link>http://arunraghavan.net/2011/11/notes-from-the-prague-audio-bofs/</link>
	<description>&lt;p&gt;As I&amp;#8217;d blogged about last week, we had a couple of Audio &lt;acronym title=&quot;Birds of a Feather&quot;&gt;BoF&lt;/acronym&gt; sessions last week. Here&amp;#8217;s a summary of what was discussed. I&amp;#8217;ve collected items in relevance order rather than chronological order to make for easier reading. I think I have everything covered, I&amp;#8217;ll update this post if one of the attendees points out something I missed or got wrong.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Surround&lt;/strong&gt;: There were a number of topics that came up with regards to multichannel/surround support:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;There seems to be some lack of uniformity of channel maps, particularly in non-HDA hardware. While it was agreed that this should be fixed, we need some directed testing and bug reports to actually be able to fix this.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Multichannel mixers, while theoretically supported, are not actually exposed by any current drivers. It was suggested that these could be exposed without breaking existing applications by having new MC mixers exposed with device names corresponding to the surround PCM device (like &amp;#8220;surround51&amp;#8243;).&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;We need a way to query channel maps on a given PCM. This will be implemented as a new ALSA API which could be called after the PCM is opened. (&lt;em&gt;AI: Takashi&lt;/em&gt;)&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;It would be good to have a way to configure the channel map as well (if supported by the hardware?). The suggestion was to do this as was done in PulseAudio, where an arbitrary channel map could be specified. (NB: is there hardware that supports multiple/arbitrary channel maps? If yes, how do we handle this?)&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Routing&lt;/strong&gt;: Unsurprisingly, we came back to the problem of building a simplified mixer graph for PulseAudio.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;The current status is that ALSA builds a simplified mixer for use by userspace, and PulseAudio further simplifies this by means of some name-based guessing.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;PulseAudio would ideally like a simplified version of the original mixer graph, but something more complete than what we get now&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;However, since PulseAudio has fairly unique requirements of what information it wants, it probably makes sense to have ALSA provide the entire graph and leave the simplification task to PulseAudio (discussion on this approach continues)&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;There was no consensus on who would do this or how this should be done (creating a new serialisation format, exposing what HDA provides, adding node metadata to ALSA mixer controls, or something else altogether)&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;As an interim step, it was agreed that it would be possible to provide ordering in the simplified ALSA mixer (that is, add metadata to the control to signal what control comes &amp;#8220;before&amp;#8221; it and what comes &amp;#8220;after&amp;#8221; it). This should go some way in making the PA mixer simplification logic simpler and more robust. (&lt;em&gt;AI: Takashi&lt;/em&gt;)&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;HDMI&lt;/strong&gt;: A couple of things came up in discussion about the status of HDMI.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;There was a question about the reliability of &lt;acronym title=&quot;EDID-like data&quot;&gt;ELD&lt;/acronym&gt; information as this will be used more in future versions of PulseAudio. There did not appear to be conclusive evidence in either direction, so we will probably assume that it is reliable and deal with reliability problems as they arise.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;It was mentioned that it might be desirable to only expose the ALSA device if a receiver is plugged in. This had been mooted earlier as something to do in PulseAudio as an alternative. One thing to consider with this approach is dealing with a device switch on the receiver side. Doing this without a notification to userspace was generally agreed to be a bad idea.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Jack detection&lt;/strong&gt;: The long-standing debate on exposing jacks as input devices or ALSA controls came to a conclusion, with the resolution being that jacks would be exposed as ALSA controls. This requires a change in the kernel (and potentially alsa-lib?) which should not be too complex. Actual buttons (such as volume/mute control) will continue to be input devices. Once this is done, the pending jack detection patches will be adapted to use the new interface. (&lt;em&gt;AI: Takashi (patches are in a branch already!), David&lt;/em&gt;)&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;UCM&lt;/strong&gt;: Another long-standing issue was the merging of the ALSA UCM patches into PulseAudio. Most of the problems thus far had been due to an incomplete understanding of how ALSA and PA concepts mapped to each other. Some consensus was arrived at in this regard after a lengthy discussion:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;As is the case now, every ALSA PCM maps to a PA sink&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Each UCM verb maps to a PA card profile&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Each combination of UCM devices that can be used concurrently maps to a PA port&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Each UCM modifier is mapped to an intended role on the corresponding sink&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The code should (as is in the patches currently submitted) be part of the PA ALSA module, and there will be changes required to use the UCM-specified mixer list instead of PA&amp;#8217;s guessing mechanism. (&lt;em&gt;AI: ???&lt;/em&gt;)&lt;/p&gt;

&lt;p&gt;(NB: It was mentioned that PulseAudio needs to support multiple intended roles for a sink/source. This is actually already supported &amp;#8212; the intended roles property is a whitespace-separated list of roles)&lt;/p&gt;

&lt;p&gt;(NB2: There was further discussion with the Linaro folks this week about the UCM bits, and there&amp;#8217;s likely going to be an IRC/phone gathering to clarify things further in the near future)&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;GStreamer latency settings&lt;/strong&gt;: We currently do not actually use PulseAudio&amp;#8217;s power saving features from GStreamer for &lt;a href=&quot;http://arunraghavan.net/2011/05/more-pulseaudio-power-goodness/&quot;&gt;several reasons&lt;/a&gt;. Suggestions to over come this were mooted. While no definite agreement was reached, one suggestion was to add a &amp;#8220;powersave&amp;#8221; profile to pulsesink that chose higher latency/buffer-time values. Players would need to set this if they are not using features that break when these values are raised.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Corking&lt;/strong&gt;: The statelessness of current the corking mechanism was discussed in one session, and between the PulseAudio developers later. The problem is that we need to be able to track cork/uncork reasons more closely. This would give us more metadata that is needed to make policy decisions without breaking streams. Particularly, for example, if PA corks a music stream due to an incoming call, then the user plays, then pauses music, and then the call ends, we must not uncork the music stream. We intend to deal with this with two changes:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;We need to add a per-cause cork/uncork request count&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;We need to associate a &amp;#8220;generation&amp;#8221; with cork/uncork requests, so certain conditions (such as user intervention) can bump the generation counter, and uncork requests corresponding to old cork requests will be ignored&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;This will make it possible to track the various bits of state we need to do the right thing for cases like the one mentioned before.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;So that&amp;#8217;s that &amp;#8212; lots of things discussed, lots of things to do! Thanks to everyone who came for participating.&lt;/p&gt;</description>
	<pubDate>Thu, 03 Nov 2011 07:06:13 +0000</pubDate>
</item>
<item>
	<title>Lennart Poettering: libabc</title>
	<guid>http://0pointer.de/blog/projects/libabc.html</guid>
	<link>http://0pointer.de/blog/projects/libabc.html</link>
	<description>&lt;p&gt;At the Kernel Summit in Prague last week Kay Sievers and I lead a session on
developing shared userspace libraries, for kernel hackers. More and more
userspace interfaces of the kernel (for example many which deal with storage,
audio, resource management, security, file systems or a number of other
subsystems) nowadays rely on a dedicated userspace component. As people who
work primarily in the plumbing layer of the Linux OS we noticed over and over
again that these libraries written by people who usually are at home on the
kernel side of things make the same mistakes repeatedly, thus making life for
the users of the libraries unnecessarily difficult. In our session we tried to
point out a number of these things, and in particular places where the usual
kernel hacking style translates badly into userspace shared library hacking.
Our hope is that maybe a few kernel developers have a look at our list of
recommendations and consider the points we are raising.&lt;/p&gt;

&lt;p&gt;To make things easy we have put together an example skeleton library we
dubbed &lt;tt&gt;libabc&lt;/tt&gt;, whose &lt;a href=&quot;https://git.kernel.org/?p=linux/kernel/git/kay/libabc.git;a=blob_plain;f=README&quot;&gt;README&lt;/a&gt;
file includes all our points in terse form. It's available on kernel.org:&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;https://git.kernel.org/?p=linux/kernel/git/kay/libabc.git&quot;&gt;The git repository&lt;/a&gt; and the &lt;a href=&quot;https://git.kernel.org/?p=linux/kernel/git/kay/libabc.git;a=blob_plain;f=README&quot;&gt;README&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;This list of recommendations draws inspiration from David Zeuthen's and
Ulrich Drepper's well known papers on the topic of writing shared libraries. In
the README linked above we try to distill this wealth of information into a
terse list of recommendations, with a couple of additions and with a strict
focus on a kernel hacker background.&lt;/p&gt;

&lt;p&gt;Please have a look, and even if you are not a kernel hacker there might be
something useful to know in it, especially if you work on the lower layers of
our stack.&lt;/p&gt;

&lt;p&gt;If you have any questions or additions, just ping us, or comment below!&lt;/p&gt;</description>
	<pubDate>Tue, 01 Nov 2011 00:46:00 +0000</pubDate>
</item>
<item>
	<title>Arun Raghavan: PragueAudio</title>
	<guid>http://arunraghavan.net/?p=1117</guid>
	<link>http://arunraghavan.net/2011/10/pragueaudio/</link>
	<description>&lt;p&gt;For those who are in Prague for GstConf, LinuxCon, ELCE, etc. &amp;#8212; don&amp;#8217;t forget we&amp;#8217;ve a couple of interesting audio-related things happening:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Today (Tuesday), at 4 pm, I&amp;#8217;ll be talking about &lt;a href=&quot;http://gstreamer.freedesktop.org/conference/speakers.html#raghavan&quot;&gt;recent developments in PulseAudio&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Tomorrow (Wednesday), at 11am, we&amp;#8217;re continuing the Audio BoF that I had &lt;a href=&quot;http://arunraghavan.net/2011/10/more-conferences-than-you-can-shake-a-stick-at/&quot;&gt;mentioned earlier&lt;/a&gt; (since we ran out of time on Sunday)&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;If you&amp;#8217;re around and interested, do drop in!&lt;/p&gt;</description>
	<pubDate>Mon, 24 Oct 2011 22:23:31 +0000</pubDate>
</item>
<item>
	<title>Lennart Poettering: Prague</title>
	<guid>http://0pointer.de/blog/projects/linuxcon-europe.html</guid>
	<link>http://0pointer.de/blog/projects/linuxcon-europe.html</link>
	<description>&lt;p&gt;If you make it to Prague the coming week for the LinuxCon/ELCE/GStreamer/Kernel Summit/... superconference, make sure not to miss:&lt;/p&gt;

&lt;ul&gt;

&lt;li&gt;The Linux Audio BoF with numerous Linux audio hackers, 5pm, on Sunday (23rd, i.e. today).&lt;/li&gt;

&lt;li&gt;&lt;a href=&quot;http://gstreamer.freedesktop.org/conference/speakers.html#raghavan&quot;&gt;Latest
developments in PulseAudio&lt;/a&gt; by Arun Raghavan. 4pm, on Tuesday, GStreamer
Summit&lt;/li&gt;

&lt;li&gt;&lt;a href=&quot;https://events.linuxfoundation.org/events/linuxcon-europe/kernel-panel&quot;&gt;Linux
Kernel Developer Panel&lt;/a&gt;, a shared session of LinuxCon and ELCE. Panelists
are Linus Torvalds, Alan Cox, Thomas Gleixner and Paul McKenney. Moderated by
yours truly. 9:30am, on Wednesday&lt;/li&gt;

&lt;li&gt;&lt;a href=&quot;https://events.linuxfoundation.org/events/linuxcon-europe/poettering-sievers&quot;&gt;systemd
Administration in the Enterprise&lt;/a&gt; by Kay Sievers and yours truly. 4:15pm, on
Wednesday, LinuxCon&lt;/li&gt;

&lt;li&gt;&lt;a href=&quot;https://events.linuxfoundation.org/events/embedded-linux-conference-europe/kooi&quot;&gt;Integrating
systemd: Booting Userspace in Less Than 1 Second&lt;/a&gt; by Koen Kooi. 11:15am, on
Friday, ELCE&lt;/li&gt;

&lt;/ul&gt;

&lt;p&gt;All of that at the Clarion Hotel. See you in Prague!&lt;/p&gt;</description>
	<pubDate>Sat, 22 Oct 2011 23:31:00 +0000</pubDate>
</item>
<item>
	<title>Colin Guthrie: Microphone Czech One Two</title>
	<guid>http://colin.guthr.ie/?p=467</guid>
	<link>http://colin.guthr.ie/2011/10/microphone-czech-one-two/</link>
	<description>&lt;p&gt;&lt;a href=&quot;http://www.youtube.com/watch?v=NaIDj6vBEoU&quot;&gt;What is this?&lt;/a&gt; Well, I'm off to Prague tomorrow morning. I'm very much looking forward to this trip as there are a whole bunch of interesting talks going on over &lt;a href=&quot;http://gstreamer.freedesktop.org/conference/&quot;&gt;the&lt;/a&gt; &lt;a href=&quot;https://events.linuxfoundation.org/events/linuxcon-europe/&quot;&gt;three&lt;/a&gt; &lt;a href=&quot;https://events.linuxfoundation.org/events/embedded-linux-conference-europe&quot;&gt;conferences&lt;/a&gt; I'll be visiting, plus I get to go to Prague, which has been on my &quot;cities to visit&quot; list for quite some time. Tick and tick.&lt;/p&gt;
&lt;p&gt;Arun will be giving a PulseAudio talk and Lennart will be rambling on about init systems as is customary these days. Very much looking forward to both.&lt;/p&gt;
&lt;p&gt;We've also had an IRC meeting about bluetooth support and policy stuff for in-car usage with some big car manufacturers which we'll follow up next week in person and there are also a lot of other audio folk in town so we'll hopefully kickstart the UCM discussions again with a view to merging into PA 2.0. Looking forward to catch up with Mark and Liam again on that front.&lt;/p&gt;
&lt;p&gt;So with pretty much all the people invloved in the Linux audio field, this is a really good opportunity to make some good progress!&lt;/p&gt;
&lt;p&gt;Here's to a successful trip!&lt;/p&gt;
&lt;p&gt;Many thanks to &lt;a href=&quot;http://www.collabora.com/&quot;&gt;Collabora &lt;/a&gt;who have helped me organise funding and also to &lt;a href=&quot;http://www.yoctoproject.org/&quot;&gt;Yocto Project&lt;/a&gt; (via &lt;a href=&quot;http://www.ti.com/&quot;&gt;Texas Instruments&lt;/a&gt;) who have very kindly sponsored my attendance of the LinuxCon/ELC-E part of the event. I look forward to finding out more about their project when I help out at their booth!&lt;/p&gt;
&lt;div class=&quot;sociable&quot;&gt;&lt;div&gt;&lt;span class=&quot;sociable-tagline&quot;&gt;Share and Enjoy:&lt;/span&gt;&lt;/div&gt;&lt;ul&gt;&lt;li&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;http://digg.com/submit?phase=2&amp;url=http%3A%2F%2Fcolin.guthr.ie%2F2011%2F10%2Fmicrophone-czech-one-two%2F&amp;title=Microphone%20Czech%20One%20Two&amp;bodytext=What%20is%20this%3F%20Well%2C%20I%27m%20off%20to%20Prague%20tomorrow%20morning.%20I%27m%20very%20much%20looking%20forward%20to%20this%20trip%20as%20there%20are%20a%20whole%20bunch%20of%20interesting%20talks%20going%20on%20over%20the%20three%20conferences%20I%27ll%20be%20visiting%2C%20plus%20I%20get%20to%20go%20to%20Prague%2C%20which%20has%20been%20on%20my%20&quot;&gt;&lt;img src=&quot;http://colin.guthr.ie/wp-content/plugins/sociable-30/images/default/16/digg.png&quot; class=&quot;sociable-img sociable-hovers&quot; title=&quot;Digg&quot; alt=&quot;Digg&quot; /&gt;&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;http://www.stumbleupon.com/submit?url=http%3A%2F%2Fcolin.guthr.ie%2F2011%2F10%2Fmicrophone-czech-one-two%2F&amp;title=Microphone%20Czech%20One%20Two&quot;&gt;&lt;img src=&quot;http://colin.guthr.ie/wp-content/plugins/sociable-30/images/default/16/stumbleupon.png&quot; class=&quot;sociable-img sociable-hovers&quot; title=&quot;StumbleUpon&quot; alt=&quot;StumbleUpon&quot; /&gt;&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;http://delicious.com/post?url=http%3A%2F%2Fcolin.guthr.ie%2F2011%2F10%2Fmicrophone-czech-one-two%2F&amp;title=Microphone%20Czech%20One%20Two&amp;notes=What%20is%20this%3F%20Well%2C%20I%27m%20off%20to%20Prague%20tomorrow%20morning.%20I%27m%20very%20much%20looking%20forward%20to%20this%20trip%20as%20there%20are%20a%20whole%20bunch%20of%20interesting%20talks%20going%20on%20over%20the%20three%20conferences%20I%27ll%20be%20visiting%2C%20plus%20I%20get%20to%20go%20to%20Prague%2C%20which%20has%20been%20on%20my%20&quot;&gt;&lt;img src=&quot;http://colin.guthr.ie/wp-content/plugins/sociable-30/images/default/16/delicious.png&quot; class=&quot;sociable-img sociable-hovers&quot; title=&quot;del.icio.us&quot; alt=&quot;del.icio.us&quot; /&gt;&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;http://www.facebook.com/share.php?u=http%3A%2F%2Fcolin.guthr.ie%2F2011%2F10%2Fmicrophone-czech-one-two%2F&amp;t=Microphone%20Czech%20One%20Two&quot;&gt;&lt;img src=&quot;http://colin.guthr.ie/wp-content/plugins/sociable-30/images/default/16/facebook.png&quot; class=&quot;sociable-img sociable-hovers&quot; title=&quot;Facebook&quot; alt=&quot;Facebook&quot; /&gt;&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;http://buzz.yahoo.com/submit/?submitUrl=http%3A%2F%2Fcolin.guthr.ie%2F2011%2F10%2Fmicrophone-czech-one-two%2F&amp;submitHeadline=Microphone%20Czech%20One%20Two&amp;submitSummary=What%20is%20this%3F%20Well%2C%20I%27m%20off%20to%20Prague%20tomorrow%20morning.%20I%27m%20very%20much%20looking%20forward%20to%20this%20trip%20as%20there%20are%20a%20whole%20bunch%20of%20interesting%20talks%20going%20on%20over%20the%20three%20conferences%20I%27ll%20be%20visiting%2C%20plus%20I%20get%20to%20go%20to%20Prague%2C%20which%20has%20been%20on%20my%20&amp;submitCategory=science&amp;submitAssetType=text&quot;&gt;&lt;img src=&quot;http://colin.guthr.ie/wp-content/plugins/sociable-30/images/default/16/yahoobuzz.png&quot; class=&quot;sociable-img sociable-hovers&quot; title=&quot;Yahoo! Buzz&quot; alt=&quot;Yahoo! Buzz&quot; /&gt;&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;http://twitter.com/home?status=Microphone%20Czech%20One%20Two%20-%20http%3A%2F%2Fcolin.guthr.ie%2F2011%2F10%2Fmicrophone-czech-one-two%2F&quot;&gt;&lt;img src=&quot;http://colin.guthr.ie/wp-content/plugins/sociable-30/images/default/16/twitter.png&quot; class=&quot;sociable-img sociable-hovers&quot; title=&quot;Twitter&quot; alt=&quot;Twitter&quot; /&gt;&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;http://www.google.com/bookmarks/mark?op=edit&amp;bkmk=http%3A%2F%2Fcolin.guthr.ie%2F2011%2F10%2Fmicrophone-czech-one-two%2F&amp;title=Microphone%20Czech%20One%20Two&amp;annotation=What%20is%20this%3F%20Well%2C%20I%27m%20off%20to%20Prague%20tomorrow%20morning.%20I%27m%20very%20much%20looking%20forward%20to%20this%20trip%20as%20there%20are%20a%20whole%20bunch%20of%20interesting%20talks%20going%20on%20over%20the%20three%20conferences%20I%27ll%20be%20visiting%2C%20plus%20I%20get%20to%20go%20to%20Prague%2C%20which%20has%20been%20on%20my%20&quot;&gt;&lt;img src=&quot;http://colin.guthr.ie/wp-content/plugins/sociable-30/images/default/16/googlebookmark.png&quot; class=&quot;sociable-img sociable-hovers&quot; title=&quot;Google Bookmarks&quot; alt=&quot;Google Bookmarks&quot; /&gt;&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;http://identi.ca/notice/new?status_textarea=http%3A%2F%2Fcolin.guthr.ie%2F2011%2F10%2Fmicrophone-czech-one-two%2F&quot;&gt;&lt;img src=&quot;http://colin.guthr.ie/wp-content/plugins/sociable-30/images/default/16/identica.png&quot; class=&quot;sociable-img sociable-hovers&quot; title=&quot;Identi.ca&quot; alt=&quot;Identi.ca&quot; /&gt;&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;http://slashdot.org/bookmark.pl?title=Microphone%20Czech%20One%20Two&amp;url=http%3A%2F%2Fcolin.guthr.ie%2F2011%2F10%2Fmicrophone-czech-one-two%2F&quot;&gt;&lt;img src=&quot;http://colin.guthr.ie/wp-content/plugins/sociable-30/images/default/16/slashdot.png&quot; class=&quot;sociable-img sociable-hovers&quot; title=&quot;Slashdot&quot; alt=&quot;Slashdot&quot; /&gt;&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;</description>
	<pubDate>Sat, 22 Oct 2011 18:30:59 +0000</pubDate>
</item>
<item>
	<title>Arun Raghavan: PulseAudio 1.1 (the echo release?)</title>
	<guid>http://arunraghavan.net/?p=1111</guid>
	<link>http://arunraghavan.net/2011/10/pulseaudio-1-1-the-echo-release/</link>
	<description>&lt;p&gt;Yep, if we keep this up, it could even become a habit!&lt;/p&gt;

&lt;p&gt;PulseAudio 1.1 is out. It&amp;#8217;s mostly a bunch of bug fixes on top of 1.0. Most important of these are fixes for: a &lt;tt&gt;libpulse&lt;/tt&gt; dependency on libsamplerate (if enabled) which would make our LGPL license invalid, broken Skype audio capture (because we changed from a 3 number version to 2 numbers), broken startup without a DBus session bus running, and not going crazy on USB disconnects.&lt;/p&gt;

&lt;p&gt;This should be a very safe upgrade, so &lt;a href=&quot;http://lists.freedesktop.org/archives/pulseaudio-discuss/2011-October/011898.html&quot;&gt;grab it while it&amp;#8217;s hot&lt;/a&gt;!&lt;/p&gt;</description>
	<pubDate>Fri, 21 Oct 2011 03:22:51 +0000</pubDate>
</item>
<item>
	<title>Colin Guthrie: One and One Makes Two…. or 1.1</title>
	<guid>http://colin.guthr.ie/?p=465</guid>
	<link>http://colin.guthr.ie/2011/10/one-and-one-makes-two-or-1-1/</link>
	<description>&lt;p&gt;Just a quick note to say that I've just pushed &lt;a href=&quot;http://lists.freedesktop.org/archives/pulseaudio-discuss/2011-October/011898.html&quot;&gt;PulseAudio 1.1&lt;/a&gt; out the door. Get it while it's hot!&lt;/p&gt;
&lt;p&gt;This release fixes a couple issues people had with our two-point version number change and several other bits and bobs.&lt;/p&gt;
&lt;p&gt;On it's way to Mageia Cauldron now and I should get around to backporting this sometime very soon for mga1 now that backports are open &lt;img src=&quot;http://colin.guthr.ie/wp-includes/images/smilies/icon_smile.gif&quot; alt=&quot;:)&quot; class=&quot;wp-smiley&quot; /&gt; &lt;/p&gt;
&lt;div class=&quot;sociable&quot;&gt;&lt;div&gt;&lt;span class=&quot;sociable-tagline&quot;&gt;Share and Enjoy:&lt;/span&gt;&lt;/div&gt;&lt;ul&gt;&lt;li&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;http://digg.com/submit?phase=2&amp;url=http%3A%2F%2Fcolin.guthr.ie%2F2011%2F10%2Fone-and-one-makes-two-or-1-1%2F&amp;title=One%20and%20One%20Makes%20Two....%20or%201.1&amp;bodytext=Just%20a%20quick%20note%20to%20say%20that%20I%27ve%20just%20pushed%20PulseAudio%201.1%20out%20the%20door.%20Get%20it%20while%20it%27s%20hot%21%0D%0A%0D%0AThis%20release%20fixes%20a%20couple%20issues%20people%20had%20with%20our%20two-point%20version%20number%20change%20and%20several%20other%20bits%20and%20bobs.%0D%0A%0D%0AOn%20it%27s%20way%20to%20Mageia%20Cau&quot;&gt;&lt;img src=&quot;http://colin.guthr.ie/wp-content/plugins/sociable-30/images/default/16/digg.png&quot; class=&quot;sociable-img sociable-hovers&quot; title=&quot;Digg&quot; alt=&quot;Digg&quot; /&gt;&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;http://www.stumbleupon.com/submit?url=http%3A%2F%2Fcolin.guthr.ie%2F2011%2F10%2Fone-and-one-makes-two-or-1-1%2F&amp;title=One%20and%20One%20Makes%20Two....%20or%201.1&quot;&gt;&lt;img src=&quot;http://colin.guthr.ie/wp-content/plugins/sociable-30/images/default/16/stumbleupon.png&quot; class=&quot;sociable-img sociable-hovers&quot; title=&quot;StumbleUpon&quot; alt=&quot;StumbleUpon&quot; /&gt;&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;http://delicious.com/post?url=http%3A%2F%2Fcolin.guthr.ie%2F2011%2F10%2Fone-and-one-makes-two-or-1-1%2F&amp;title=One%20and%20One%20Makes%20Two....%20or%201.1&amp;notes=Just%20a%20quick%20note%20to%20say%20that%20I%27ve%20just%20pushed%20PulseAudio%201.1%20out%20the%20door.%20Get%20it%20while%20it%27s%20hot%21%0D%0A%0D%0AThis%20release%20fixes%20a%20couple%20issues%20people%20had%20with%20our%20two-point%20version%20number%20change%20and%20several%20other%20bits%20and%20bobs.%0D%0A%0D%0AOn%20it%27s%20way%20to%20Mageia%20Cau&quot;&gt;&lt;img src=&quot;http://colin.guthr.ie/wp-content/plugins/sociable-30/images/default/16/delicious.png&quot; class=&quot;sociable-img sociable-hovers&quot; title=&quot;del.icio.us&quot; alt=&quot;del.icio.us&quot; /&gt;&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;http://www.facebook.com/share.php?u=http%3A%2F%2Fcolin.guthr.ie%2F2011%2F10%2Fone-and-one-makes-two-or-1-1%2F&amp;t=One%20and%20One%20Makes%20Two....%20or%201.1&quot;&gt;&lt;img src=&quot;http://colin.guthr.ie/wp-content/plugins/sociable-30/images/default/16/facebook.png&quot; class=&quot;sociable-img sociable-hovers&quot; title=&quot;Facebook&quot; alt=&quot;Facebook&quot; /&gt;&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;http://buzz.yahoo.com/submit/?submitUrl=http%3A%2F%2Fcolin.guthr.ie%2F2011%2F10%2Fone-and-one-makes-two-or-1-1%2F&amp;submitHeadline=One%20and%20One%20Makes%20Two....%20or%201.1&amp;submitSummary=Just%20a%20quick%20note%20to%20say%20that%20I%27ve%20just%20pushed%20PulseAudio%201.1%20out%20the%20door.%20Get%20it%20while%20it%27s%20hot%21%0D%0A%0D%0AThis%20release%20fixes%20a%20couple%20issues%20people%20had%20with%20our%20two-point%20version%20number%20change%20and%20several%20other%20bits%20and%20bobs.%0D%0A%0D%0AOn%20it%27s%20way%20to%20Mageia%20Cau&amp;submitCategory=science&amp;submitAssetType=text&quot;&gt;&lt;img src=&quot;http://colin.guthr.ie/wp-content/plugins/sociable-30/images/default/16/yahoobuzz.png&quot; class=&quot;sociable-img sociable-hovers&quot; title=&quot;Yahoo! Buzz&quot; alt=&quot;Yahoo! Buzz&quot; /&gt;&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;http://twitter.com/home?status=One%20and%20One%20Makes%20Two....%20or%201.1%20-%20http%3A%2F%2Fcolin.guthr.ie%2F2011%2F10%2Fone-and-one-makes-two-or-1-1%2F&quot;&gt;&lt;img src=&quot;http://colin.guthr.ie/wp-content/plugins/sociable-30/images/default/16/twitter.png&quot; class=&quot;sociable-img sociable-hovers&quot; title=&quot;Twitter&quot; alt=&quot;Twitter&quot; /&gt;&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;http://www.google.com/bookmarks/mark?op=edit&amp;bkmk=http%3A%2F%2Fcolin.guthr.ie%2F2011%2F10%2Fone-and-one-makes-two-or-1-1%2F&amp;title=One%20and%20One%20Makes%20Two....%20or%201.1&amp;annotation=Just%20a%20quick%20note%20to%20say%20that%20I%27ve%20just%20pushed%20PulseAudio%201.1%20out%20the%20door.%20Get%20it%20while%20it%27s%20hot%21%0D%0A%0D%0AThis%20release%20fixes%20a%20couple%20issues%20people%20had%20with%20our%20two-point%20version%20number%20change%20and%20several%20other%20bits%20and%20bobs.%0D%0A%0D%0AOn%20it%27s%20way%20to%20Mageia%20Cau&quot;&gt;&lt;img src=&quot;http://colin.guthr.ie/wp-content/plugins/sociable-30/images/default/16/googlebookmark.png&quot; class=&quot;sociable-img sociable-hovers&quot; title=&quot;Google Bookmarks&quot; alt=&quot;Google Bookmarks&quot; /&gt;&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;http://identi.ca/notice/new?status_textarea=http%3A%2F%2Fcolin.guthr.ie%2F2011%2F10%2Fone-and-one-makes-two-or-1-1%2F&quot;&gt;&lt;img src=&quot;http://colin.guthr.ie/wp-content/plugins/sociable-30/images/default/16/identica.png&quot; class=&quot;sociable-img sociable-hovers&quot; title=&quot;Identi.ca&quot; alt=&quot;Identi.ca&quot; /&gt;&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;http://slashdot.org/bookmark.pl?title=One%20and%20One%20Makes%20Two....%20or%201.1&amp;url=http%3A%2F%2Fcolin.guthr.ie%2F2011%2F10%2Fone-and-one-makes-two-or-1-1%2F&quot;&gt;&lt;img src=&quot;http://colin.guthr.ie/wp-content/plugins/sociable-30/images/default/16/slashdot.png&quot; class=&quot;sociable-img sociable-hovers&quot; title=&quot;Slashdot&quot; alt=&quot;Slashdot&quot; /&gt;&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;</description>
	<pubDate>Thu, 20 Oct 2011 13:46:15 +0000</pubDate>
</item>
<item>
	<title>Twitter: pulseaudio: PulseAudio 1.1 just released as a stable update to 1.0. Get it while it's hot! (by Colin)</title>
	<guid>http://twitter.com/pulseaudio/statuses/127015324074778624</guid>
	<link>http://twitter.com/pulseaudio/statuses/127015324074778624</link>
	<description>pulseaudio: PulseAudio 1.1 just released as a stable update to 1.0. Get it while it's hot! (by Colin)</description>
	<pubDate>Thu, 20 Oct 2011 13:36:27 +0000</pubDate>
</item>
<item>
	<title>Arun Raghavan: Alternate sample rates</title>
	<guid>http://arunraghavan.net/?p=1101</guid>
	<link>http://arunraghavan.net/2011/10/alternate-sample-rates/</link>
	<description>&lt;p&gt;I&amp;#8217;ve just pushed a bunch of patches by Pierre-Louis Bossart that can have a pretty decent CPU/power impact. These introduce the concept of an &amp;#8220;alternate sample rate&amp;#8221;.&lt;/p&gt;

&lt;p&gt;Currently, PulseAudio runs all your devices at a default sample rate, which is set to 44.1 kHz on most systems (this can be configured). All streams running at different sample rates are resampled to this sample rate. Pierre&amp;#8217;s patches add an alternate sample rate that we try to switch to under certain circumstances if it means that we can save on resampling cost. This would happen if the stream uses exactly the alternate sample rate, or some integral-or-so multiple of it.&lt;/p&gt;

&lt;p&gt;The default value for the alternate sample rate is 48 kHz. So if you&amp;#8217;re playing a movie off a DVD where the audio track is typically a 48 kHz stream, and your card supports it, we switch to 48 kHz and avoid resampling altogether. Similarly, while making voice calls, common sample rates are 8, 16, and 32 kHz. These can be resampled to 48 kHz much faster than to 44.1 kHz.&lt;/p&gt;

&lt;p&gt;Now for the big caveat &amp;#8212; this won&amp;#8217;t work if there&amp;#8217;s any other stream connected to your sink/source. So if your music player is playing (or even paused) when you get that voip call, we can&amp;#8217;t update the rate. This situation can probably be improved by at least allowing corked streams have their sample rate change (so having some random stream connected but not playing &amp;#8212; I&amp;#8217;m looking at you, Flash! &amp;#8212; won&amp;#8217;t block rate updates altogether). Hopefully we&amp;#8217;ll get this fixed before this feature is released in PulseAudio 2.0.&lt;/p&gt;

&lt;p&gt;Thanks to Pierre for all his work on this, and to my company, &lt;a href=&quot;http://www.collabora.com/projects/pulseaudio&quot;&gt;Collabora&lt;/a&gt;, for giving me some time for upstream work!&lt;/p&gt;</description>
	<pubDate>Tue, 18 Oct 2011 04:34:35 +0000</pubDate>
</item>
<item>
	<title>Arun Raghavan: More conferences than you can shake a stick at</title>
	<guid>http://arunraghavan.net/?p=1085</guid>
	<link>http://arunraghavan.net/2011/10/more-conferences-than-you-can-shake-a-stick-at/</link>
	<description>&lt;p&gt;Prague is an interesting place to be at this time of the year &amp;#8212; next week it&amp;#8217;s playing host to the Real Time Linux Workshop. The week after that, we have the Kernel Summit, GStreamer Conference, Embedded Linux Conference Europe and LinuxCon Europe. I&amp;#8217;m going to be at the last 3, and there&amp;#8217;s some great audio stuff happening!&lt;/p&gt;

&lt;p&gt;On the evening of Oct 23rd, we&amp;#8217;re having an Audio BoF to discuss pending issues that cut across the stack &amp;#8212; ALSA, PulseAudio, GStreamer and any other similar bits that people have complaints about.&lt;/p&gt;

&lt;p&gt;Then there&amp;#8217;s &lt;a href=&quot;http://gstreamer.freedesktop.org/conference/&quot;&gt;GstConf&lt;/a&gt;, where there are going to be &lt;a href=&quot;http://gstreamer.freedesktop.org/conference/gstreamer-conference-timetable.html&quot;&gt;a bunch of awesome talks&lt;/a&gt;. Also included is a &lt;a href=&quot;http://gstreamer.freedesktop.org/conference/speakers.html#raghavan&quot;&gt;talk&lt;/a&gt; by yours truly about recent developments in the PulseAudio world.&lt;/p&gt;

&lt;p&gt;At some point during that week, possibly Oct 26th morning, plans are afoot to have an ALSA BoF to discuss the state and future of the HDA driver.&lt;/p&gt;

&lt;p&gt;There are also rumours of excellent beer that will need to be scrupulously verified. ;)&lt;/p&gt;

&lt;p&gt;It&amp;#8217;s going to be a pretty exciting week!&lt;/p&gt;</description>
	<pubDate>Fri, 14 Oct 2011 04:34:26 +0000</pubDate>
</item>
<item>
	<title>David Henningsson: Independent volume for headphones and speakers</title>
	<guid>http://voices.canonical.com/david.henningsson/?p=32</guid>
	<link>http://voices.canonical.com/david.henningsson/2011/09/29/independent-volume-for-headphones-and-speakers/</link>
	<description>&lt;p&gt;If you take &lt;a href=&quot;http://brainstorm.ubuntu.com/idea/27275/&quot; title=&quot;Ubuntu Brainstorm&quot; target=&quot;_blank&quot;&gt;Ubuntu Brainstorm&amp;#8217;s word for it&lt;/a&gt;, one of the more popular wishes for Ubuntu, is to avoid having to adjust the volume slider up and down as you plug and unplug your headphones, but instead keep separate volumes stored for both. &lt;/p&gt;
&lt;p&gt;Long story short, it&amp;#8217;s a desirable feature, and we&amp;#8217;re moving in that direction, but slowly, as the feature is more complex than it seems like at first glance.&lt;/p&gt;
&lt;p&gt;The good news: in the upcoming Ubuntu Oneiric (11.10), this is actually working. The bad news: it isn&amp;#8217;t working for everyone. &lt;/p&gt;
&lt;p&gt;For external stuff, mainly USB and Bluetooth devices, this has been working for a quite a few releases now (although you might have to manually switch to your new card when you plug it in). So let&amp;#8217;s restrict the discussion to internal sound cards, that on a typical laptop would control your internal speaker and your 3.5mm headphone jack. Here&amp;#8217;s where Oneiric will make a positive difference for many of you (although, still far from all of you).&lt;/p&gt;
&lt;p&gt;PulseAudio has the concept of &amp;#8220;ports&amp;#8221; (in your Gnome &amp;#8220;Sound settings&amp;#8221;, this is what&amp;#8217;s labeled a &amp;#8220;Connector&amp;#8221;), and headphones and speakers would be different ports of the same card. As of Oneiric, every port has its volume stored independently, so when you switch ports, the volume will automatically change.&lt;br /&gt;
Now, this does not become really useful until this port can automatically switch back and forth when you plug and unplug your headphones. This feature is also now implemented in Oneiric, as you can read about in my previous blog post, &lt;a href=&quot;http://voices.canonical.com/david.henningsson/2011/09/06/pulseaudio-with-jack-detection/&quot; title=&quot;PulseAudio with jack detection&quot; target=&quot;_blank&quot;&gt;PulseAudio with jack detection&lt;/a&gt;. &lt;/p&gt;
&lt;p&gt;Things are not always that easy. Not everyone has just internal speakers and headphones, some have line outs instead, or all three. On the input side, some have internal mics, microphone jacks (often more than one), line ins, or any combination of those. In addition, people are different: some want headphones to automatically mute line outs, others don&amp;#8217;t. That&amp;#8217;s a typical case where different drivers expose very different behaviour: some do, some don&amp;#8217;t, some have a setting you can control in alsamixer. Some drivers enable the user to have different volumes for different outputs, others don&amp;#8217;t. Drivers label volume controls and jacks differently. Not every driver actually exposes the current jack sense state to userspace, either.&lt;/p&gt;
&lt;p&gt;The bottom line: Is this working for you? Great! Is it not? You&amp;#8217;re not alone. I&amp;#8217;ll try to fix some of that up for Ubuntu 12.04, but there will &amp;#8211; no doubt &amp;#8211; be users who won&amp;#8217;t have this functionality for a long time. At this point, the best you can do is to file a bug using the &amp;#8220;ubuntu-bug audio&amp;#8221; command, and hope for the best. Even if it might be too late for your hardware to be supported in 11.10, filing the bug sooner rather than later might help to get it into 12.04. However, manpower is always an issue, so even better would be if you could write a kernel patch yourself to fix it. &lt;img src=&quot;http://voices.canonical.com/david.henningsson/wp-includes/images/smilies/icon_smile.gif&quot; alt=&quot;:-)&quot; class=&quot;wp-smiley&quot; /&gt; &lt;/p&gt;</description>
	<pubDate>Thu, 29 Sep 2011 18:57:49 +0000</pubDate>
</item>
<item>
	<title>Arun Raghavan: 1.w00t!</title>
	<guid>http://arunraghavan.net/?p=1076</guid>
	<link>http://arunraghavan.net/2011/09/1-w00t/</link>
	<description>&lt;p&gt;As &lt;a href=&quot;http://colin.guthr.ie/2011/09/one-point-oh/&quot;&gt;Colin Guthrie reports&lt;/a&gt;, PulseAudio 1.0 is now out the door! There&amp;#8217;s a lot of new things in the release, and we should be getting a much more regular release schedule going. Head over to the &lt;a href=&quot;http://www.freedesktop.org/wiki/Software/PulseAudio/Notes/1.0&quot;&gt;full release notes&lt;/a&gt; for more details.&lt;/p&gt;

&lt;p&gt;A lot of people have contributed to this release and thanks to them all. Special props to Colin all the patch-herding, tireless help, and code ninjutsu!&lt;/p&gt;

&lt;p&gt;p.s.: Gentoo packages are already available, of course. :)&lt;/p&gt;</description>
	<pubDate>Tue, 27 Sep 2011 15:33:28 +0000</pubDate>
</item>
<item>
	<title>Lennart Poettering: PulseAudio 1.0</title>
	<guid>http://0pointer.de/blog/projects/pa-one-dot-zero.html</guid>
	<link>http://0pointer.de/blog/projects/pa-one-dot-zero.html</link>
	<description>&lt;p&gt;&lt;a href=&quot;http://www.freedesktop.org/wiki/Software/PulseAudio/Notes/1.0&quot;&gt;PulseAudio 1.0 is out now.&lt;/a&gt; It's awesome. Get it while it is hot!&lt;/p&gt;

&lt;p&gt;I'd like to thank Colin Guthrie and Arun Raghavan (and all the others involved) for getting this release out of the door!&lt;/p&gt;</description>
	<pubDate>Tue, 27 Sep 2011 14:07:00 +0000</pubDate>
</item>
<item>
	<title>Twitter: pulseaudio: Want Twitter and more? Check out Planet PulseAudio: http://t.co/dJVa8RHp (by Colin)</title>
	<guid>http://twitter.com/pulseaudio/statuses/118645009602969600</guid>
	<link>http://twitter.com/pulseaudio/statuses/118645009602969600</link>
	<description>pulseaudio: Want Twitter and more? Check out Planet PulseAudio: http://t.co/dJVa8RHp (by Colin)</description>
	<pubDate>Tue, 27 Sep 2011 11:15:49 +0000</pubDate>
</item>
<item>
	<title>Colin Guthrie: One Point Oh!</title>
	<guid>http://colin.guthr.ie/?p=458</guid>
	<link>http://colin.guthr.ie/2011/09/one-point-oh/</link>
	<description>&lt;p&gt;It is with great pride that I announce &lt;a href=&quot;http://lists.freedesktop.org/archives/pulseaudio-discuss/2011-September/011451.html&quot;&gt;PulseAudio 1.0&lt;/a&gt;!&lt;/p&gt;
&lt;p&gt;It's been a long time coming and I'm very glad this is finally out of the door and I look forward to a much more streamlined release process in the future.&lt;/p&gt;
&lt;p&gt;There are too many people to thank but in particular I'd like to thank Arun Raghavan, Tanu Kaskinen, David Henningsson, Maarten Bosmans, Daniel Mack, Jason Newton, Jyri Sarha, Lu Guanqun, Luiz Augusto von Dentz, Marc-André Lureau, Pierre-Louis Bossart, Siarhei Siamashka and of course Lennart Poettering.&lt;/p&gt;
&lt;p&gt;There is more info over on the &lt;a href=&quot;http://lists.freedesktop.org/archives/pulseaudio-discuss/2011-September/011451.html&quot;&gt;announce mail&lt;/a&gt;, so give it a read and also see our &lt;a href=&quot;http://www.freedesktop.org/wiki/Software/PulseAudio/Notes/1.0&quot;&gt;release notes&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Obviously there is still a huge amount to be done, both in the daemon itself, improving documentation and improving integration into the desktop environment itself. Any help is gratefully received!&lt;/p&gt;
&lt;p&gt;So stay tuned for future improvements! And speaking of staying tuned, I'd also like to announce &lt;a href=&quot;http://freedesktop.org/software/pulseaudio/planet/&quot;&gt;Planet PulseAudio&lt;/a&gt;. This is an aggregated feed of posts about PulseAudio. If you have a blog and write about PA, please get in touch and we can add your feed. The design is heavily borrowed from &lt;a href=&quot;http://planet.gnome.org/&quot;&gt;Planet GNOME&lt;/a&gt; so it should be familiar for some readers.&lt;/p&gt;
&lt;p&gt;Packages are already available for Mageia Cauldron and backports for Mageia 1 will be available sometime soon. Hopefully someone will update the packages in Mandriva as I'm not actively doing stuff over there these days.&lt;/p&gt;
&lt;p&gt;Happy listening!&lt;/p&gt;
&lt;p&gt;PS I'm sure there will be a brown bag moment to come with a 1.0 release, but fingers crossed.... :p&lt;/p&gt;
&lt;div class=&quot;sociable&quot;&gt;&lt;div&gt;&lt;span class=&quot;sociable-tagline&quot;&gt;Share and Enjoy:&lt;/span&gt;&lt;/div&gt;&lt;ul&gt;&lt;li&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;http://digg.com/submit?phase=2&amp;url=http%3A%2F%2Fcolin.guthr.ie%2F2011%2F09%2Fone-point-oh%2F&amp;title=One%20Point%20Oh%21&amp;bodytext=It%20is%20with%20great%20pride%20that%20I%20announce%20PulseAudio%201.0%21%0D%0A%0D%0AIt%27s%20been%20a%20long%20time%20coming%20and%20I%27m%20very%20glad%20this%20is%20finally%20out%20of%20the%20door%20and%20I%20look%20forward%20to%20a%20much%20more%20streamlined%20release%20process%20in%20the%20future.%0D%0A%0D%0AThere%20are%20too%20many%20people%20to%20than&quot;&gt;&lt;img src=&quot;http://colin.guthr.ie/wp-content/plugins/sociable-30/images/default/16/digg.png&quot; class=&quot;sociable-img sociable-hovers&quot; title=&quot;Digg&quot; alt=&quot;Digg&quot; /&gt;&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;http://www.stumbleupon.com/submit?url=http%3A%2F%2Fcolin.guthr.ie%2F2011%2F09%2Fone-point-oh%2F&amp;title=One%20Point%20Oh%21&quot;&gt;&lt;img src=&quot;http://colin.guthr.ie/wp-content/plugins/sociable-30/images/default/16/stumbleupon.png&quot; class=&quot;sociable-img sociable-hovers&quot; title=&quot;StumbleUpon&quot; alt=&quot;StumbleUpon&quot; /&gt;&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;http://delicious.com/post?url=http%3A%2F%2Fcolin.guthr.ie%2F2011%2F09%2Fone-point-oh%2F&amp;title=One%20Point%20Oh%21&amp;notes=It%20is%20with%20great%20pride%20that%20I%20announce%20PulseAudio%201.0%21%0D%0A%0D%0AIt%27s%20been%20a%20long%20time%20coming%20and%20I%27m%20very%20glad%20this%20is%20finally%20out%20of%20the%20door%20and%20I%20look%20forward%20to%20a%20much%20more%20streamlined%20release%20process%20in%20the%20future.%0D%0A%0D%0AThere%20are%20too%20many%20people%20to%20than&quot;&gt;&lt;img src=&quot;http://colin.guthr.ie/wp-content/plugins/sociable-30/images/default/16/delicious.png&quot; class=&quot;sociable-img sociable-hovers&quot; title=&quot;del.icio.us&quot; alt=&quot;del.icio.us&quot; /&gt;&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;http://www.facebook.com/share.php?u=http%3A%2F%2Fcolin.guthr.ie%2F2011%2F09%2Fone-point-oh%2F&amp;t=One%20Point%20Oh%21&quot;&gt;&lt;img src=&quot;http://colin.guthr.ie/wp-content/plugins/sociable-30/images/default/16/facebook.png&quot; class=&quot;sociable-img sociable-hovers&quot; title=&quot;Facebook&quot; alt=&quot;Facebook&quot; /&gt;&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;http://buzz.yahoo.com/submit/?submitUrl=http%3A%2F%2Fcolin.guthr.ie%2F2011%2F09%2Fone-point-oh%2F&amp;submitHeadline=One%20Point%20Oh%21&amp;submitSummary=It%20is%20with%20great%20pride%20that%20I%20announce%20PulseAudio%201.0%21%0D%0A%0D%0AIt%27s%20been%20a%20long%20time%20coming%20and%20I%27m%20very%20glad%20this%20is%20finally%20out%20of%20the%20door%20and%20I%20look%20forward%20to%20a%20much%20more%20streamlined%20release%20process%20in%20the%20future.%0D%0A%0D%0AThere%20are%20too%20many%20people%20to%20than&amp;submitCategory=science&amp;submitAssetType=text&quot;&gt;&lt;img src=&quot;http://colin.guthr.ie/wp-content/plugins/sociable-30/images/default/16/yahoobuzz.png&quot; class=&quot;sociable-img sociable-hovers&quot; title=&quot;Yahoo! Buzz&quot; alt=&quot;Yahoo! Buzz&quot; /&gt;&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;http://twitter.com/home?status=One%20Point%20Oh%21%20-%20http%3A%2F%2Fcolin.guthr.ie%2F2011%2F09%2Fone-point-oh%2F&quot;&gt;&lt;img src=&quot;http://colin.guthr.ie/wp-content/plugins/sociable-30/images/default/16/twitter.png&quot; class=&quot;sociable-img sociable-hovers&quot; title=&quot;Twitter&quot; alt=&quot;Twitter&quot; /&gt;&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;http://www.google.com/bookmarks/mark?op=edit&amp;bkmk=http%3A%2F%2Fcolin.guthr.ie%2F2011%2F09%2Fone-point-oh%2F&amp;title=One%20Point%20Oh%21&amp;annotation=It%20is%20with%20great%20pride%20that%20I%20announce%20PulseAudio%201.0%21%0D%0A%0D%0AIt%27s%20been%20a%20long%20time%20coming%20and%20I%27m%20very%20glad%20this%20is%20finally%20out%20of%20the%20door%20and%20I%20look%20forward%20to%20a%20much%20more%20streamlined%20release%20process%20in%20the%20future.%0D%0A%0D%0AThere%20are%20too%20many%20people%20to%20than&quot;&gt;&lt;img src=&quot;http://colin.guthr.ie/wp-content/plugins/sociable-30/images/default/16/googlebookmark.png&quot; class=&quot;sociable-img sociable-hovers&quot; title=&quot;Google Bookmarks&quot; alt=&quot;Google Bookmarks&quot; /&gt;&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;http://identi.ca/notice/new?status_textarea=http%3A%2F%2Fcolin.guthr.ie%2F2011%2F09%2Fone-point-oh%2F&quot;&gt;&lt;img src=&quot;http://colin.guthr.ie/wp-content/plugins/sociable-30/images/default/16/identica.png&quot; class=&quot;sociable-img sociable-hovers&quot; title=&quot;Identi.ca&quot; alt=&quot;Identi.ca&quot; /&gt;&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;http://slashdot.org/bookmark.pl?title=One%20Point%20Oh%21&amp;url=http%3A%2F%2Fcolin.guthr.ie%2F2011%2F09%2Fone-point-oh%2F&quot;&gt;&lt;img src=&quot;http://colin.guthr.ie/wp-content/plugins/sociable-30/images/default/16/slashdot.png&quot; class=&quot;sociable-img sociable-hovers&quot; title=&quot;Slashdot&quot; alt=&quot;Slashdot&quot; /&gt;&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;</description>
	<pubDate>Tue, 27 Sep 2011 11:10:11 +0000</pubDate>
</item>
<item>
	<title>Twitter: pulseaudio: PulseAudio v1.0 is out! Go get it now: http://t.co/5f7YTdDm (by Colin)</title>
	<guid>http://twitter.com/pulseaudio/statuses/118622016617193472</guid>
	<link>http://twitter.com/pulseaudio/statuses/118622016617193472</link>
	<description>pulseaudio: PulseAudio v1.0 is out! Go get it now: http://t.co/5f7YTdDm (by Colin)</description>
	<pubDate>Tue, 27 Sep 2011 09:44:27 +0000</pubDate>
</item>
<item>
	<title>Arun Raghavan: Well done, Adobe!</title>
	<guid>http://arunraghavan.net/?p=1069</guid>
	<link>http://arunraghavan.net/2011/09/well-done-adobe/</link>
	<description>&lt;p&gt;In an unsurprising turn of events, Adobe completely &lt;a href=&quot;https://bugbase.adobe.com/index.cfm?event=bug&amp;id=2968177&quot;&gt;fails to play well&lt;/a&gt; with modern Linux systems. Well done, guys. Well done, indeed.&lt;/p&gt;

&lt;p&gt;p.s.: I was quite happy to see that the Google Talk plugin has proper PulseAudio support (thanks to the WebRTC née GIPS code, it looks like).&lt;/p&gt;</description>
	<pubDate>Thu, 15 Sep 2011 13:23:33 +0000</pubDate>
</item>
<item>
	<title>Twitter: pulseaudio: Anyone who has an Adobe ID please vote for this bug: http://t.co/U1yQjgQ (by Colin)</title>
	<guid>http://twitter.com/pulseaudio/statuses/113213555565789184</guid>
	<link>http://twitter.com/pulseaudio/statuses/113213555565789184</link>
	<description>pulseaudio: Anyone who has an Adobe ID please vote for this bug: http://t.co/U1yQjgQ (by Colin)</description>
	<pubDate>Mon, 12 Sep 2011 11:33:09 +0000</pubDate>
</item>
<item>
	<title>D. Jansen: Creative X-fi Surround USB Review and Guide for Ubuntu 9.10 or Newer</title>
	<guid>tag:blogger.com,1999:blog-2124831850793435411.post-5236023387397594852</guid>
	<link>http://linux-tipps.blogspot.com/2010/06/creative-x-fi-surround-usb-guide-for.html</link>
	<description>This article will review the Creative X-fi surround usb first quickly in Windows XP and then in Linux. It will give you some basic performance ideas and hints for fixing problems and having more fun with it.&lt;br /&gt;&lt;br /&gt;After my &lt;a href=&quot;http://linux-tipps.blogspot.com/2010/05/usb-surround-sound-in-linux.html&quot;&gt;survey of the possibilities for USB surround sound in Linux&lt;/a&gt;, I ended up ordering a Creative X-fi Surround USB. As you could read there, there is a helpful webpage that includes e.g. ready made &lt;a href=&quot;http://mndar.phpnet.us/usbxfi/files&quot;&gt;.asoundrc files&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Windows XP&lt;/b&gt;&lt;br /&gt;On my netbook, without installing any special drivers, playing a song on an otherwise unoccupied Windows XP utilizes about 20% CPU, minus the almost 5 % that somehow seem to be there almost always...&lt;br /&gt;&lt;br /&gt;I've read reports that there are clicking sounds, which I can imagine well with a heavy system load. I've heard them at first after plugging it in, but by now they disappeared. It sounds crisp on my Sennheiser headphones and the base is noticeably better than my onboard sound, obviously, but that doesn't say much.&lt;br /&gt;&lt;br /&gt;Now let's see how it fares in &lt;b&gt;Linux&lt;/b&gt;...&lt;br /&gt;&lt;br /&gt;Reboot. Plug. Play. It could hardly be easier. All I had to do was to tell mplayer which device to use (mplayer -ao alsa:device=hw=S51). Then it happily started playing over my new external sound card. The sound is as excellent as under Windows. But better than Windows: Surround sound works out of the box in my Kubuntu 9.10 system.&lt;br /&gt;&lt;br /&gt;The combination of AC-3 surround with VAAPI accelerated 720p movie on my netbook utilizes around 10-12 % CPU. There is no stuttering in Linux, even with heavier load. Just playing music hardly seems to have any impact -- maybe around 5 % CPU. I'll have to let the Phoronix suite benchmark all this sometime. In Windows even just playing music in VLC and increasing the volume setting with the knob on the device can create stutters.&lt;br /&gt;&lt;br /&gt;Right now for some reason the slightly dusty Chromium version on this netbook keeps bringing the system into a hard stutter making characters appear slowly on the screen up to a second after I type and the mouse does not move smoothly. But the sound plays smoothly in the background. Just plain wonderful.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Resume&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;I can definitely recommend the sound card for USB (surround or stereo) sound in Linux. I'm not sure if I would use it for Windows. Let's see after I installed the drivers, which will probably drive me mad. &lt;br /&gt;&lt;br /&gt;But be aware that there are clicking sounds when the card is first intialized. If you want to use it for e.g. system sounds, you may not be very happy with that. They also seem to appear during heavy disk access (apt-get dist-upgrade), even if I'm not playing any music. That's definitely weird...&lt;br /&gt;&lt;br /&gt;The microphone input works flawlessly. I didn't have problems with over-amplification, though I can imagine that being an issue with the lack of hardware mixing. And I definitely have a sound card for surround sound HD movie nights now. And the crazy thing is I can do it all perfectly with my little netbook. Thank you, Linux. Thanks also to you, &lt;a href=&quot;http://mndar.phpnet.us/usbxfi/&quot;&gt;Mandar&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Post Scriptum&lt;/b&gt;&lt;br /&gt;Some additional information for nerds: When the card is not in use, it produces not wakes in powertop, when in use, it produces about 200-300 wakes/s (no matter if surround or stereo sound).&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Update&lt;/b&gt;&lt;br /&gt;The clicking sound seems to be related to the power supply. The problem disappears in the same work load (e.g. heavy disk updatedb) if I plug the power adapter into my netbook.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Update2&lt;/b&gt;&lt;br /&gt;As I almost expected the device is not anywhere as good in Windows as in Linux. The crystalizer does sound nice, but there are many glitches in the Windows driver. E.g. &lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;sometimes when you pause they playback, the result is a constant beep until you press play again,&amp;nbsp;&lt;/li&gt;&lt;li&gt;during forwarding in movies, there are short beeps.&amp;nbsp;&lt;/li&gt;&lt;li&gt;Once after removing the plug and putting it back inside, the entire system hung, only working again after removing it again and then showing and error message.&amp;nbsp;&lt;/li&gt;&lt;li&gt;the driver uses much more CPU than in Linux and it's a 50 MB package&lt;/li&gt;&lt;li&gt;there are no volume controls for rear, center, lfe and front channels, only 1 master control (in Linux you can fix this -- maybe MatrixMixer works for Windows?)&lt;/li&gt;&lt;li&gt;the microphone input sounds slightly noise shaped, esp. in combination with the &quot;crystalizer&quot;&lt;/li&gt;&lt;/ul&gt;Hence I would make my recommendation more clear: I wouldn't recommend it for surround sound in Windows I think. It might still be your best option due to the lack of alternatives, though.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Update3 (9/2011)&lt;/b&gt;&lt;br /&gt;Unfortunately I only just tried recording in Linux for the first time. And it seems it doesn't work at all. I got only noise. I've tried Line in and Mic in. There's no real setting for the record options anyway. (Which channel, etc.) So that's definitely a downside. I had never tried that in Linux before. btw. Check &lt;a href=&quot;http://mndar.phpnet.us/usbxfi/&quot;&gt;here&lt;/a&gt; to get the remote control and volume know working. It should come out of the box with kernel 2.6.37+.&lt;br /&gt;&lt;br /&gt;And here's my &lt;b&gt;.asoundrc&lt;/b&gt; so far:&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;pcm.!default {                &lt;br /&gt;type            plug      &lt;br /&gt;slave.pcm       &quot;softvol&quot;   #make use of softvol&lt;br /&gt;}                                                   &lt;br /&gt;&lt;br /&gt;# create softvol master channel &lt;br /&gt;# see http://alsa.opensrc.org/index.php/How_to_use_softvol_to_control_the_master_volume&lt;br /&gt;pcm.softvol {                                                                          &lt;br /&gt;type            softvol                                                            &lt;br /&gt;slave {                                                                            &lt;br /&gt;pcm         &quot;dmixer2&quot;      #redirect the output to dmix (instead of &quot;hw:0,0&quot;)  &lt;br /&gt;}                                                                                  &lt;br /&gt;control {                                                                          &lt;br /&gt;name        &quot;Master&quot;       #override the PCM slider to set the softvol volume level globally&lt;br /&gt;card        S51                                                                             &lt;br /&gt;}                                                                                               &lt;br /&gt;}                                                                                                   &lt;br /&gt;&lt;br /&gt;# create stereo dmixer, because using the 6 channel one causes stutter if the channels are empty&lt;br /&gt;pcm.dmixer2 {                                                                                   &lt;br /&gt;type dmix                                                                               &lt;br /&gt;ipc_key 2343                                                                            &lt;br /&gt;slave {                                                                                 &lt;br /&gt;pcm     &quot;hw:S51&quot;                                                                &lt;br /&gt;channels 2                                                                      &lt;br /&gt;}                                                                                       &lt;br /&gt;}                                                                                               &lt;br /&gt;&lt;br /&gt;pcm.dmixer6 {&lt;br /&gt;type dmix&lt;br /&gt;ipc_key 2342&lt;br /&gt;slave {&lt;br /&gt;pcm     &quot;hw:S51&quot;&lt;br /&gt;rate 48000&lt;br /&gt;channels 6&lt;br /&gt;period_time 0&lt;br /&gt;period_size 1024&lt;br /&gt;buffer_time 0&lt;br /&gt;buffer_size 4096&lt;br /&gt;}&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;# reroute the channels because rear and sub/lfe are exchanged&lt;br /&gt;pcm.mysurround {&lt;br /&gt;type route&lt;br /&gt;slave.pcm &quot;dmixer6&quot;&lt;br /&gt;slave.channels 6&lt;br /&gt;&lt;br /&gt;ttable.0.0 1&lt;br /&gt;ttable.1.1 1&lt;br /&gt;ttable.2.4 1&lt;br /&gt;ttable.3.5 1&lt;br /&gt;ttable.4.2 1&lt;br /&gt;ttable.5.3 1&lt;br /&gt;}&lt;/blockquote&gt;&lt;div class=&quot;blogger-post-footer&quot;&gt;(...)
-- Click to read the entire post.&lt;img width=&quot;1&quot; height=&quot;1&quot; src=&quot;https://blogger.googleusercontent.com/tracker/2124831850793435411-5236023387397594852?l=linux-tipps.blogspot.com&quot; alt=&quot;&quot; /&gt;&lt;/div&gt;</description>
	<pubDate>Sun, 11 Sep 2011 20:54:58 +0000</pubDate>
	<author>noreply@blogger.com (D.)</author>
</item>
<item>
	<title>David Henningsson: PulseAudio with jack detection</title>
	<guid>http://voices.canonical.com/david.henningsson/?p=15</guid>
	<link>http://voices.canonical.com/david.henningsson/2011/09/06/pulseaudio-with-jack-detection/</link>
	<description>&lt;p&gt;Jack detection in PulseAudio is now in Ubuntu 11.10. This means that PulseAudio will know whether you have plugged in your headphones, mic or HDMI cable, and be able to use that information. Most computers have automute already (i e, speakers mute when you plug in headphones), but this functionality is done entirely in the kernel. With PulseAudio now knowing about this, it can decide that your main volume control will adjust the headphones volume when you have headphones plugged in, and the speaker volume when you don&amp;#8217;t. &lt;/p&gt;
&lt;p&gt;HDMI adds one more twist to it. Due to hardware design, there are often several &amp;#8220;false&amp;#8221; ports accompanying the real one(s). And there is no way of knowing which one is right, except through jack detection. So you might see four different HDMI&amp;#8217;s in the user interface, but only one is right, and with the jack detection, the right HDMI output will automatically be selected when you activate the HDMI device.&lt;br /&gt;
Speaking of the &amp;#8220;Sound Preferences&amp;#8221; user interface, I hope that we will have an improved user interface for Ubuntu 12.04, that can hide the HDMI devices that are unavailable.&lt;br /&gt;
(Also note that for NVidia and ATI cards, binary drivers are often needed to enable HDMI audio, as well as activating the display, through nvidia-settings or the &amp;#8220;Displays&amp;#8221; settings dialog.) &lt;/p&gt;
&lt;p&gt;All of this won&amp;#8217;t work for everyone from the start, as it will need support from the ALSA driver. However, for those who don&amp;#8217;t have that support, things will not regress compared to the current handling. Hopefully I will be able to improve that situation for some of you in the 12.04 cycle.&lt;/p&gt;
&lt;p&gt;Finally, a note on the upstream status of the patches needed for this functionality:
&lt;ul&gt;
&lt;li&gt;The PulseAudio patches will hopefully be merged into PulseAudio, once PulseAudio 1.0 is out. Until then, you can grab the latest patch set &lt;a href=&quot;http://bazaar.launchpad.net/~ubuntu-audio-dev/pulseaudio/ubuntu.oneiric/files/head:/debian/patches/&quot; title=&quot;patches&quot; target=&quot;_blank&quot;&gt;here&lt;/a&gt;.
&lt;/li&gt;
&lt;li&gt;A &lt;a href=&quot;http://bazaar.launchpad.net/~ubuntu-core-dev/ubuntu/oneiric/udev/ubuntu/view/head:/debian/patches/jack-detection.patch&quot; title=&quot;udev patch&quot; target=&quot;_blank&quot;&gt;udev patch&lt;/a&gt; required to enable PulseAudio to read the input devices was &lt;a href=&quot;http://comments.gmane.org/gmane.linux.hotplug.devel/16908&quot; title=&quot;discussion&quot; target=&quot;_blank&quot;&gt;rejected&lt;/a&gt; upstream. &lt;/li&gt;
&lt;li&gt;A &lt;a href=&quot;http://kernel.ubuntu.com/git?p=ubuntu/ubuntu-oneiric.git;a=commitdiff;h=fe2d089edfadd33bc9133f471fec39c4f8f7caf7&quot; title=&quot;kernel patch&quot; target=&quot;_blank&quot;&gt;kernel patch&lt;/a&gt; used to identify HDMI input devices is pending upstream review/approval.&lt;/li&gt;
&lt;/ul&gt;&lt;/p&gt;</description>
	<pubDate>Tue, 06 Sep 2011 08:51:33 +0000</pubDate>
</item>
<item>
	<title>Arun Raghavan: LPC ho!</title>
	<guid>http://arunraghavan.net/2011/09/lpc-ho/</guid>
	<link>http://arunraghavan.net/2011/09/lpc-ho/</link>
	<description>&lt;p&gt;I&amp;#8217;m going to be at the &lt;a href=&quot;http://www.linuxplumbersconf.org/2011/&quot;&gt;Linux Plumbers&amp;#8217; Conference&lt;/a&gt; next week, speaking about the things we&amp;#8217;ve been doing to make &lt;a href=&quot;http://www.linuxplumbersconf.org/2011/ocw/sessions/117&quot;&gt;passthrough audio on Linux&lt;/a&gt; kick ass.&lt;/p&gt;

&lt;p&gt;If you&amp;#8217;re around and interested, do drop by!&lt;/p&gt;</description>
	<pubDate>Sat, 03 Sep 2011 06:01:35 +0000</pubDate>
</item>
<item>
	<title>Arun Raghavan: Hello … hello … hello!</title>
	<guid>http://arunraghavan.net/?p=1044</guid>
	<link>http://arunraghavan.net/2011/08/hello-hello-hello/</link>
	<description>&lt;p&gt;I have a secret to confess. I&amp;#8217;ve spent a great deal of time over the last few months talking to myself. I can&amp;#8217;t say I haven&amp;#8217;t enjoyed it &amp;#8212; it turns out my capacity to entertain myself is far greater than initially suspected. But I hear you ask &amp;#8230; why?&lt;/p&gt;

&lt;p&gt;Here at &lt;a href=&quot;http://www.collabora.com/&quot;&gt;Collabora&lt;/a&gt;, I&amp;#8217;ve been building on &lt;a href=&quot;http://blogs.gnome.org/uraeus/2010/10/07/echo-cancellation-on-linux/&quot;&gt;Wim&amp;#8217;s previous work&lt;/a&gt; on adding echo cancellation to PulseAudio. Thanks go to Intel for supporting us in continuing this work. Before too long, all this work will be trickling down to your favourite Linux distribution and all your friends will stop hating you.&lt;/p&gt;

&lt;p&gt;First, a quick recap on &lt;em&gt;what&lt;/em&gt; acoustic echo cancellation (AEC) is. If you already know this, you might want to skip this paragraph and the next. Say you&amp;#8217;re on your laptop, and you receive a voice call from your friend. You don&amp;#8217;t have a pair of headphones lying around, so you&amp;#8217;re just going to use your laptop&amp;#8217;s built-in speakers and mic. When your friend speaks, what she says is played out the speakers, but is also captured by the microphone and she gets to hear herself speak, albeit a short while (a few hundred milliseconds or more) later. This is called acoustic echo, and can be frustrating enough to make conversation nigh impossible. There are other types of echo for phone systems, but that&amp;#8217;s not interesting to us at the moment.&lt;/p&gt;

&lt;p&gt;This problem is common on pretty much all devices that you use to make phone calls. Astute readers will ask why they don&amp;#8217;t actually face this problem on their phone. That&amp;#8217;s because your phone (or, if you have a cheap phone, your phone company) has special software hidden away that removes the echo before sending your signal along to the other end. On laptops, which are general-purpose hardware, the job of echo cancellation is left to either your operating system (Windows XP onwards, for example) or your chat client (Skype, for example) to provide.&lt;/p&gt;

&lt;p&gt;On Linux, we implement echo cancellation as a PulseAudio module (code-ninja Wim Taymans wrote this last year). We use the Speex DSP library to perform the actual echo cancellation.  The code&amp;#8217;s quite modular, so it&amp;#8217;s not very hard to plug in alternate echo cancellers (we even include an &lt;a href=&quot;http://www.andreadrian.de/intercom/&quot;&gt;alternate implementation&lt;/a&gt;, which isn&amp;#8217;t quite as effective as Speex).&lt;/p&gt;

&lt;p&gt;Recently, we plugged in some more bits from the Speex library to do noise suppression and digital gain control (so you can quit twiddling with your mic volume for the other end to be able to hear you). We also added a bunch of fixes to reduce CPU consumption significantly &amp;#8212; this should be good enough to run on a netbook and reasonably recent ARM platforms.&lt;/p&gt;

&lt;p&gt;While all this sounds nice, I think a demo would sound (haha!) nicer &amp;#8230;&lt;/p&gt;

&lt;p&gt;Without AEC: &lt;!-- degradable html5 audio and video plugin --&gt;&lt;div class=&quot;audio_wrap html5audio&quot;&gt;&lt;a href=&quot;http://arunraghavan.net/downloads/pulseaudio/aec/call-no-aec.mp3&quot; title=&quot;Click to open&quot; id=&quot;f-html5audio-0&quot;&gt;Audio MP3&lt;/a&gt;&lt;/div&gt; (or download &lt;a href=&quot;http://arunraghavan.net/downloads/pulseaudio/aec/call-no-aec.oga&quot;&gt;ogg&lt;/a&gt;, &lt;a href=&quot;http://arunraghavan.net/downloads/pulseaudio/aec/call-no-aec.m4a&quot;&gt;aac&lt;/a&gt;)&lt;/p&gt;

&lt;p&gt;With AEC: &lt;!-- degradable html5 audio and video plugin --&gt;&lt;div class=&quot;audio_wrap html5audio&quot;&gt;&lt;a href=&quot;http://arunraghavan.net/downloads/pulseaudio/aec/call-with-aec.mp3&quot; title=&quot;Click to open&quot; id=&quot;f-html5audio-1&quot;&gt;Audio MP3&lt;/a&gt;&lt;/div&gt; (or download &lt;a href=&quot;http://arunraghavan.net/downloads/pulseaudio/aec/call-with-aec.oga&quot;&gt;ogg&lt;/a&gt;, &lt;a href=&quot;http://arunraghavan.net/downloads/pulseaudio/aec/call-with-aec.m4a&quot;&gt;aac&lt;/a&gt;)&lt;/p&gt;

&lt;p&gt;This is a recording of a call between my laptop and N900. The laptop is playing audio out the speakers and recording with the built-in mic. What you hear is the conversation as heard on the N900.&lt;/p&gt;

&lt;p&gt;All this echo cancelling goodness will come to a Linux distribution near you in the upcoming 1.0 release of PulseAudio. The next version of the GNOME IM client, Empathy (3.2), will actually make use of this functionality. In due time, we intend to make it so that all voice applications will end up using this functionality (so if you&amp;#8217;re writing a &lt;acronym title=&quot;Voice over IP&quot;&gt;VoIP&lt;/acronym&gt; application and don&amp;#8217;t want to use this functionality, you need to set a special stream property to disable this &amp;#8212; &lt;tt&gt;filter.suppress=&quot;echo-cancel&quot;&lt;/tt&gt;).&lt;/p&gt;

&lt;p&gt;For the impatient among you, you can try all this out by getting recent testing versions of PulseAudio (I know packages are available for Ubuntu, Debian, Gentoo and Mageia at least). To force your phone streams to use echo cancellation, just run &lt;tt&gt;pactl load-module module-echo-cancel&lt;/tt&gt;, and you&amp;#8217;re done.&lt;/p&gt;

&lt;p&gt;There&amp;#8217;s still some work to be done, refining quality and using other AEC implementations (in the short-term, the WebRTC one looks promising). Things don&amp;#8217;t work at all if you&amp;#8217;re using different devices for playback and capture (e.g. laptop speakers and webcam mic). These are things that will be addressed in coming weeks and months.&lt;/p&gt;</description>
	<pubDate>Thu, 25 Aug 2011 08:11:41 +0000</pubDate>
</item>
<item>
	<title>Arun Raghavan: Desktop Summit 2011</title>
	<guid>http://arunraghavan.net/?p=1038</guid>
	<link>http://arunraghavan.net/2011/08/desktop-summit-2011/</link>
	<description>&lt;p&gt;I&amp;#8217;m in Berlin at the Desktop Summit, so you can drop me a note and we can meet if you want to yell about PulseAudio things that annoy you (or even, y&amp;#8217;know, things you like).&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;http://www.desktopsummit.org/&quot;&gt;&lt;img alt=&quot;I'm at Desktop Summit 2011&quot; src=&quot;http://arunraghavan.net/downloads/ds2011banner.png&quot; title=&quot;I'm at Desktop Summit 2011&quot; class=&quot;aligncenter&quot; width=&quot;333&quot; height=&quot;110&quot; /&gt;&lt;/a&gt;&lt;/p&gt;</description>
	<pubDate>Sun, 07 Aug 2011 10:27:45 +0000</pubDate>
</item>
<item>
	<title>Twitter: pulseaudio: Make sure you come to the PA talk at the Desktop Summit 16:50 rm2002 #ds2011 (by Colin)</title>
	<guid>http://twitter.com/pulseaudio/statuses/100147582659076096</guid>
	<link>http://twitter.com/pulseaudio/statuses/100147582659076096</link>
	<description>pulseaudio: Make sure you come to the PA talk at the Desktop Summit 16:50 rm2002 #ds2011 (by Colin)</description>
	<pubDate>Sun, 07 Aug 2011 10:13:39 +0000</pubDate>
</item>
<item>
	<title>Twitter: pulseaudio: PulseAudio BoF session planned for the #DS2011 http://wiki.desktopsummit.org/Workshops_%26_BoFs/2011/The_Audio_BoF (by Colin)</title>
	<guid>http://twitter.com/pulseaudio/statuses/90834763136507904</guid>
	<link>http://twitter.com/pulseaudio/statuses/90834763136507904</link>
	<description>pulseaudio: PulseAudio BoF session planned for the #DS2011 http://wiki.desktopsummit.org/Workshops_%26_BoFs/2011/The_Audio_BoF (by Colin)</description>
	<pubDate>Tue, 12 Jul 2011 17:27:49 +0000</pubDate>
</item>
<item>
	<title>Twitter: pulseaudio: Exited to see Windows supported in the upcoming v1.0 pre-release snapshot (by Maarten)</title>
	<guid>http://twitter.com/pulseaudio/statuses/84620424641650688</guid>
	<link>http://twitter.com/pulseaudio/statuses/84620424641650688</link>
	<description>pulseaudio: Exited to see Windows supported in the upcoming v1.0 pre-release snapshot (by Maarten)</description>
	<pubDate>Sat, 25 Jun 2011 13:54:16 +0000</pubDate>
</item>
<item>
	<title>Twitter: pulseaudio: PulseAudio Developers (and those users I like!) can tweet again from our IRC channel \o/ (by Colin)</title>
	<guid>http://twitter.com/pulseaudio/statuses/84613948518838272</guid>
	<link>http://twitter.com/pulseaudio/statuses/84613948518838272</link>
	<description>pulseaudio: PulseAudio Developers (and those users I like!) can tweet again from our IRC channel \o/ (by Colin)</description>
	<pubDate>Sat, 25 Jun 2011 13:28:32 +0000</pubDate>
</item>
<item>
	<title>Twitter: pulseaudio: PulseAudio 0.9.23 Released! Grab it while it's hot: http://t.co/TWminho (Docs: http://t.co/Qx5ZBCG Changes: http://t.co/KktbFeC)</title>
	<guid>http://twitter.com/pulseaudio/statuses/84037257748692993</guid>
	<link>http://twitter.com/pulseaudio/statuses/84037257748692993</link>
	<description>pulseaudio: PulseAudio 0.9.23 Released! Grab it while it's hot: http://t.co/TWminho (Docs: http://t.co/Qx5ZBCG Changes: http://t.co/KktbFeC)</description>
	<pubDate>Thu, 23 Jun 2011 23:16:58 +0000</pubDate>
</item>
<item>
	<title>Colin Guthrie: Randa, round baby right round</title>
	<guid>http://colin.guthr.ie/?p=433</guid>
	<link>http://colin.guthr.ie/2011/06/randa-round-baby-right-round/</link>
	<description>&lt;p&gt;OK, so it's been &lt;a href=&quot;http://colin.guthr.ie/2010/05/recharging-my-geek-batteries/&quot;&gt;about a year&lt;/a&gt; since I was last in this &lt;a href=&quot;http://en.wikipedia.org/wiki/Randa,_Switzerland&quot;&gt;sleeply little town&lt;/a&gt; on the path to Zermatt and a lot has changed.&lt;/p&gt;
&lt;p&gt;While last year it felt like I was the lone voice singing the praises of PulseAudio (although there were a few supporters!), but this year it feels like everything has gone 180° with pretty much everyone on board! This is a great result for me personally as I've been pretty much the only person working on KDE+PulseAudio integration, so I was very pleased to get this feedback. It's good to know that the hard work and effort you put in is appreciated. It's all too often that the people who appreciate your work are the silent majority (if you do a really good job, they don't know you've done anything as things Just Work™), while the vocal minority are quick to shout and judge and generally flame.&lt;/p&gt;
&lt;p&gt;So I was off to an lovely start and I got down to hacking. What did I do this year? Well I continued some work on the interface I made last year called &quot;&lt;a href=&quot;http://colin.guthr.ie/2010/07/speaker-setup-now-or-forever-hold-your-peace/&quot;&gt;Speaker Setup&lt;/a&gt;&quot;. I realised just a short while ago that there was no interface in KDE to be able to change the Source Ports (i.e. pick Mic vs. Line In on your laptop) so I set about extending speaker setup to cope with this. I added a Mic VU meter for good measure (mainly to use up the space with something vaguely useful!). I would ultimately like to do more with this UI but this would need more changes in PulseAudio itself (come listen to &lt;a href=&quot;https://www.desktopsummit.org/program/sessions/pulseaudio-control-and-command-state-desktop-integration-gnome-kde&quot;&gt;my talk&lt;/a&gt; in Berlin at the &lt;a href=&quot;https://www.desktopsummit.org/&quot;&gt;Desktop Summit&lt;/a&gt; if you want to know more about this!).&lt;/p&gt;
&lt;p&gt;As well as this, I did some tweaks in Phonon to tidy some things up. Various bits and bobs within Phonon and the KCM had bit rotted a little, so minor tweaking saw that all brought up to speed.&lt;/p&gt;
&lt;p&gt;I also spent some time hacking on PulseAudio itself, improving some earlier work related to adding Source Output volume controls to PA to take on peer review comments (for those of you unaware, this is capture stream volume control - PA has long supported &quot;per-application&quot; volume control but this only actually applied to outputs. It's not really very common for users to record multiple streams at the same time so support for per-capture stream volumes was never introduced. Now that PA supports Flat Volumes (a feature that always tries to use the hardware volume whenever possible to get the most efficient volume adjustment path), it makes sense to use this for inputs too. It also establishes a degree of symmetry to the API which has always felt a little weird in the past - especially if you are developing a VoIP app (the guys from Skype were a little confused about this disparity for example)). I also spent some time making some minor improvements to pavucontol (shh, don't tell the KDE guys but this is a GTK app!) as this is still my main debug tool when hacking on PA (I mainly improved it to deal more gracefully with errors - like when PA itself crashes and leaves behind the X11 root window's PULSE_SERVER property which results in an invalid argument error from the context with the result that the automatic reconnect mode doesn't work! - but also added some simple keyboard shortcuts that I generally miss when switching windows quickly). I also added support for Source Output volumes to KMix, but this will stay in my private branch until I've committed the PA code as the version check will currently match git master code even if it doesn't yet have the support needed!&lt;/p&gt;
&lt;p&gt;I also started to look at Arun and Pierre's awesome work to support passthrough. As there is no reliable way to query receivers for the encodings they support (AC3, DTS etc.) we have to provide a way for users to specify this manually. I worked to rejig how PA stores various bits of information in internal databases to allow for arbitrary lengths of data to be stored rather than the fixed size blobs supported currently. This will pave the way to adding a protocol extension to set the formats for which support will have to be added to the Speaker Setup GUI somehow...&lt;/p&gt;
&lt;p&gt;In addition, I also looked at &lt;a href=&quot;http://www.videolan.org/&quot;&gt;VLC&lt;/a&gt;'s PulseAudio output layer. I've known for a while that it's kind of lacking and Rémi from upstream VLC has become rather exasperated about the lack of good documentation we provide. I fully appreciate our docs are lacking (some mails on our mailing list today highlight that internal docs for module development are also severely lacking), but I was able to use what was out there to add what I think is quite robust support to VLC. As VLC is used as a Phonon backend by some distros, I felt this was an important task to work on during this KDE sprint.&lt;/p&gt;
&lt;p&gt;All in all it was a pleasure to stay here again and meet some now familiar as well as some new people (especially Bart and Trever who are big PA fans!) I look forward to seeing several of them again in Berlin and hopefully next year here in Randa too!&lt;/p&gt;
&lt;div class=&quot;sociable&quot;&gt;&lt;div&gt;&lt;span class=&quot;sociable-tagline&quot;&gt;Share and Enjoy:&lt;/span&gt;&lt;/div&gt;&lt;ul&gt;&lt;li&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;http://digg.com/submit?phase=2&amp;url=http%3A%2F%2Fcolin.guthr.ie%2F2011%2F06%2Franda-round-baby-right-round%2F&amp;title=Randa%2C%20round%20baby%20right%20round&amp;bodytext=OK%2C%20so%20it%27s%20been%20about%20a%20year%20since%20I%20was%20last%20in%20this%20sleeply%20little%20town%20on%20the%20path%20to%20Zermatt%20and%20a%20lot%20has%20changed.%0D%0A%0D%0AWhile%20last%20year%20it%20felt%20like%20I%20was%20the%20lone%20voice%20singing%20the%20praises%20of%20PulseAudio%20%28although%20there%20were%20a%20few%20supporters%21%29%2C%20b&quot;&gt;&lt;img src=&quot;http://colin.guthr.ie/wp-content/plugins/sociable-30/images/default/16/digg.png&quot; class=&quot;sociable-img sociable-hovers&quot; title=&quot;Digg&quot; alt=&quot;Digg&quot; /&gt;&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;http://www.stumbleupon.com/submit?url=http%3A%2F%2Fcolin.guthr.ie%2F2011%2F06%2Franda-round-baby-right-round%2F&amp;title=Randa%2C%20round%20baby%20right%20round&quot;&gt;&lt;img src=&quot;http://colin.guthr.ie/wp-content/plugins/sociable-30/images/default/16/stumbleupon.png&quot; class=&quot;sociable-img sociable-hovers&quot; title=&quot;StumbleUpon&quot; alt=&quot;StumbleUpon&quot; /&gt;&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;http://delicious.com/post?url=http%3A%2F%2Fcolin.guthr.ie%2F2011%2F06%2Franda-round-baby-right-round%2F&amp;title=Randa%2C%20round%20baby%20right%20round&amp;notes=OK%2C%20so%20it%27s%20been%20about%20a%20year%20since%20I%20was%20last%20in%20this%20sleeply%20little%20town%20on%20the%20path%20to%20Zermatt%20and%20a%20lot%20has%20changed.%0D%0A%0D%0AWhile%20last%20year%20it%20felt%20like%20I%20was%20the%20lone%20voice%20singing%20the%20praises%20of%20PulseAudio%20%28although%20there%20were%20a%20few%20supporters%21%29%2C%20b&quot;&gt;&lt;img src=&quot;http://colin.guthr.ie/wp-content/plugins/sociable-30/images/default/16/delicious.png&quot; class=&quot;sociable-img sociable-hovers&quot; title=&quot;del.icio.us&quot; alt=&quot;del.icio.us&quot; /&gt;&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;http://www.facebook.com/share.php?u=http%3A%2F%2Fcolin.guthr.ie%2F2011%2F06%2Franda-round-baby-right-round%2F&amp;t=Randa%2C%20round%20baby%20right%20round&quot;&gt;&lt;img src=&quot;http://colin.guthr.ie/wp-content/plugins/sociable-30/images/default/16/facebook.png&quot; class=&quot;sociable-img sociable-hovers&quot; title=&quot;Facebook&quot; alt=&quot;Facebook&quot; /&gt;&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;http://buzz.yahoo.com/submit/?submitUrl=http%3A%2F%2Fcolin.guthr.ie%2F2011%2F06%2Franda-round-baby-right-round%2F&amp;submitHeadline=Randa%2C%20round%20baby%20right%20round&amp;submitSummary=OK%2C%20so%20it%27s%20been%20about%20a%20year%20since%20I%20was%20last%20in%20this%20sleeply%20little%20town%20on%20the%20path%20to%20Zermatt%20and%20a%20lot%20has%20changed.%0D%0A%0D%0AWhile%20last%20year%20it%20felt%20like%20I%20was%20the%20lone%20voice%20singing%20the%20praises%20of%20PulseAudio%20%28although%20there%20were%20a%20few%20supporters%21%29%2C%20b&amp;submitCategory=science&amp;submitAssetType=text&quot;&gt;&lt;img src=&quot;http://colin.guthr.ie/wp-content/plugins/sociable-30/images/default/16/yahoobuzz.png&quot; class=&quot;sociable-img sociable-hovers&quot; title=&quot;Yahoo! Buzz&quot; alt=&quot;Yahoo! Buzz&quot; /&gt;&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;http://twitter.com/home?status=Randa%2C%20round%20baby%20right%20round%20-%20http%3A%2F%2Fcolin.guthr.ie%2F2011%2F06%2Franda-round-baby-right-round%2F&quot;&gt;&lt;img src=&quot;http://colin.guthr.ie/wp-content/plugins/sociable-30/images/default/16/twitter.png&quot; class=&quot;sociable-img sociable-hovers&quot; title=&quot;Twitter&quot; alt=&quot;Twitter&quot; /&gt;&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;http://www.google.com/bookmarks/mark?op=edit&amp;bkmk=http%3A%2F%2Fcolin.guthr.ie%2F2011%2F06%2Franda-round-baby-right-round%2F&amp;title=Randa%2C%20round%20baby%20right%20round&amp;annotation=OK%2C%20so%20it%27s%20been%20about%20a%20year%20since%20I%20was%20last%20in%20this%20sleeply%20little%20town%20on%20the%20path%20to%20Zermatt%20and%20a%20lot%20has%20changed.%0D%0A%0D%0AWhile%20last%20year%20it%20felt%20like%20I%20was%20the%20lone%20voice%20singing%20the%20praises%20of%20PulseAudio%20%28although%20there%20were%20a%20few%20supporters%21%29%2C%20b&quot;&gt;&lt;img src=&quot;http://colin.guthr.ie/wp-content/plugins/sociable-30/images/default/16/googlebookmark.png&quot; class=&quot;sociable-img sociable-hovers&quot; title=&quot;Google Bookmarks&quot; alt=&quot;Google Bookmarks&quot; /&gt;&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;http://identi.ca/notice/new?status_textarea=http%3A%2F%2Fcolin.guthr.ie%2F2011%2F06%2Franda-round-baby-right-round%2F&quot;&gt;&lt;img src=&quot;http://colin.guthr.ie/wp-content/plugins/sociable-30/images/default/16/identica.png&quot; class=&quot;sociable-img sociable-hovers&quot; title=&quot;Identi.ca&quot; alt=&quot;Identi.ca&quot; /&gt;&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;http://slashdot.org/bookmark.pl?title=Randa%2C%20round%20baby%20right%20round&amp;url=http%3A%2F%2Fcolin.guthr.ie%2F2011%2F06%2Franda-round-baby-right-round%2F&quot;&gt;&lt;img src=&quot;http://colin.guthr.ie/wp-content/plugins/sociable-30/images/default/16/slashdot.png&quot; class=&quot;sociable-img sociable-hovers&quot; title=&quot;Slashdot&quot; alt=&quot;Slashdot&quot; /&gt;&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;</description>
	<pubDate>Mon, 06 Jun 2011 23:32:34 +0000</pubDate>
</item>
<item>
	<title>Colin Guthrie: (Version) One for the Road (to Randa)</title>
	<guid>http://colin.guthr.ie/?p=426</guid>
	<link>http://colin.guthr.ie/2011/06/version-one-for-the-road-to-randa/</link>
	<description>&lt;p&gt;&lt;br /&gt;
Good news everyone! Mageia 1 is out!!!! Just as I travel to Randa for the &lt;a href=&quot;http://sprints.kde.org/sprint/10&quot;&gt;KDE Multimedia Development Sprint&lt;/a&gt;, I hear that all the hard work put in by the various contributors (in all their forms: packagers, admins, translators, testers and artists) has come to fruition! Go read the &lt;a href=&quot;http://blog.mageia.org/en/2011/06/01/mageia-1/&quot;&gt;official announcement&lt;/a&gt; and &lt;a href=&quot;http://mageia.org/en/1/notes/&quot;&gt;release notes&lt;/a&gt; and then &lt;a href=&quot;http://mageia.org/en/downloads/&quot;&gt;download it!&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;I've not had nearly as much time to contribute as much as I would have liked to this release, due to various personal, work and upstream project commitments, but I know my good friends and colleagues have done a stellar job (and I've helped out when I can).&lt;/p&gt;
&lt;p&gt;I should say that this shouldn't be expected as a ground breaking release. We're not using Gnome 3 or Systemd yet (both will most likely come in Mageia 2) as this release more signifies the establishing of all the various infrastructure needed to create a distro (build cluster, community management, mirror management etc.) especially the proper cleaning and rebuilding of all of the Mandriva packages thought to be essential or vaguely useful. This was a momentous task and one that I think has been achieved in good time.&lt;/p&gt;
&lt;p&gt;Onwards and upwards! (to 2!)&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;div class=&quot;sociable&quot;&gt;&lt;div&gt;&lt;span class=&quot;sociable-tagline&quot;&gt;Share and Enjoy:&lt;/span&gt;&lt;/div&gt;&lt;ul&gt;&lt;li&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;http://digg.com/submit?phase=2&amp;url=http%3A%2F%2Fcolin.guthr.ie%2F2011%2F06%2Fversion-one-for-the-road-to-randa%2F&amp;title=%28Version%29%20One%20for%20the%20Road%20%28to%20Randa%29&amp;bodytext=%0D%0AGood%20news%20everyone%21%20Mageia%201%20is%20out%21%21%21%21%20Just%20as%20I%20travel%20to%20Randa%20for%20the%20KDE%20Multimedia%20Development%20Sprint%2C%20I%20hear%20that%20all%20the%20hard%20work%20put%20in%20by%20the%20various%20contributors%20%28in%20all%20their%20forms%3A%20packagers%2C%20admins%2C%20translators%2C%20testers%20and%20artists%29%20&quot;&gt;&lt;img src=&quot;http://colin.guthr.ie/wp-content/plugins/sociable-30/images/default/16/digg.png&quot; class=&quot;sociable-img sociable-hovers&quot; title=&quot;Digg&quot; alt=&quot;Digg&quot; /&gt;&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;http://www.stumbleupon.com/submit?url=http%3A%2F%2Fcolin.guthr.ie%2F2011%2F06%2Fversion-one-for-the-road-to-randa%2F&amp;title=%28Version%29%20One%20for%20the%20Road%20%28to%20Randa%29&quot;&gt;&lt;img src=&quot;http://colin.guthr.ie/wp-content/plugins/sociable-30/images/default/16/stumbleupon.png&quot; class=&quot;sociable-img sociable-hovers&quot; title=&quot;StumbleUpon&quot; alt=&quot;StumbleUpon&quot; /&gt;&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;http://delicious.com/post?url=http%3A%2F%2Fcolin.guthr.ie%2F2011%2F06%2Fversion-one-for-the-road-to-randa%2F&amp;title=%28Version%29%20One%20for%20the%20Road%20%28to%20Randa%29&amp;notes=%0D%0AGood%20news%20everyone%21%20Mageia%201%20is%20out%21%21%21%21%20Just%20as%20I%20travel%20to%20Randa%20for%20the%20KDE%20Multimedia%20Development%20Sprint%2C%20I%20hear%20that%20all%20the%20hard%20work%20put%20in%20by%20the%20various%20contributors%20%28in%20all%20their%20forms%3A%20packagers%2C%20admins%2C%20translators%2C%20testers%20and%20artists%29%20&quot;&gt;&lt;img src=&quot;http://colin.guthr.ie/wp-content/plugins/sociable-30/images/default/16/delicious.png&quot; class=&quot;sociable-img sociable-hovers&quot; title=&quot;del.icio.us&quot; alt=&quot;del.icio.us&quot; /&gt;&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;http://www.facebook.com/share.php?u=http%3A%2F%2Fcolin.guthr.ie%2F2011%2F06%2Fversion-one-for-the-road-to-randa%2F&amp;t=%28Version%29%20One%20for%20the%20Road%20%28to%20Randa%29&quot;&gt;&lt;img src=&quot;http://colin.guthr.ie/wp-content/plugins/sociable-30/images/default/16/facebook.png&quot; class=&quot;sociable-img sociable-hovers&quot; title=&quot;Facebook&quot; alt=&quot;Facebook&quot; /&gt;&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;http://buzz.yahoo.com/submit/?submitUrl=http%3A%2F%2Fcolin.guthr.ie%2F2011%2F06%2Fversion-one-for-the-road-to-randa%2F&amp;submitHeadline=%28Version%29%20One%20for%20the%20Road%20%28to%20Randa%29&amp;submitSummary=%0D%0AGood%20news%20everyone%21%20Mageia%201%20is%20out%21%21%21%21%20Just%20as%20I%20travel%20to%20Randa%20for%20the%20KDE%20Multimedia%20Development%20Sprint%2C%20I%20hear%20that%20all%20the%20hard%20work%20put%20in%20by%20the%20various%20contributors%20%28in%20all%20their%20forms%3A%20packagers%2C%20admins%2C%20translators%2C%20testers%20and%20artists%29%20&amp;submitCategory=science&amp;submitAssetType=text&quot;&gt;&lt;img src=&quot;http://colin.guthr.ie/wp-content/plugins/sociable-30/images/default/16/yahoobuzz.png&quot; class=&quot;sociable-img sociable-hovers&quot; title=&quot;Yahoo! Buzz&quot; alt=&quot;Yahoo! Buzz&quot; /&gt;&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;http://twitter.com/home?status=%28Version%29%20One%20for%20the%20Road%20%28to%20Randa%29%20-%20http%3A%2F%2Fcolin.guthr.ie%2F2011%2F06%2Fversion-one-for-the-road-to-randa%2F&quot;&gt;&lt;img src=&quot;http://colin.guthr.ie/wp-content/plugins/sociable-30/images/default/16/twitter.png&quot; class=&quot;sociable-img sociable-hovers&quot; title=&quot;Twitter&quot; alt=&quot;Twitter&quot; /&gt;&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;http://www.google.com/bookmarks/mark?op=edit&amp;bkmk=http%3A%2F%2Fcolin.guthr.ie%2F2011%2F06%2Fversion-one-for-the-road-to-randa%2F&amp;title=%28Version%29%20One%20for%20the%20Road%20%28to%20Randa%29&amp;annotation=%0D%0AGood%20news%20everyone%21%20Mageia%201%20is%20out%21%21%21%21%20Just%20as%20I%20travel%20to%20Randa%20for%20the%20KDE%20Multimedia%20Development%20Sprint%2C%20I%20hear%20that%20all%20the%20hard%20work%20put%20in%20by%20the%20various%20contributors%20%28in%20all%20their%20forms%3A%20packagers%2C%20admins%2C%20translators%2C%20testers%20and%20artists%29%20&quot;&gt;&lt;img src=&quot;http://colin.guthr.ie/wp-content/plugins/sociable-30/images/default/16/googlebookmark.png&quot; class=&quot;sociable-img sociable-hovers&quot; title=&quot;Google Bookmarks&quot; alt=&quot;Google Bookmarks&quot; /&gt;&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;http://identi.ca/notice/new?status_textarea=http%3A%2F%2Fcolin.guthr.ie%2F2011%2F06%2Fversion-one-for-the-road-to-randa%2F&quot;&gt;&lt;img src=&quot;http://colin.guthr.ie/wp-content/plugins/sociable-30/images/default/16/identica.png&quot; class=&quot;sociable-img sociable-hovers&quot; title=&quot;Identi.ca&quot; alt=&quot;Identi.ca&quot; /&gt;&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;http://slashdot.org/bookmark.pl?title=%28Version%29%20One%20for%20the%20Road%20%28to%20Randa%29&amp;url=http%3A%2F%2Fcolin.guthr.ie%2F2011%2F06%2Fversion-one-for-the-road-to-randa%2F&quot;&gt;&lt;img src=&quot;http://colin.guthr.ie/wp-content/plugins/sociable-30/images/default/16/slashdot.png&quot; class=&quot;sociable-img sociable-hovers&quot; title=&quot;Slashdot&quot; alt=&quot;Slashdot&quot; /&gt;&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;</description>
	<pubDate>Thu, 02 Jun 2011 06:40:37 +0000</pubDate>
</item>
<item>
	<title>Lennart Poettering: Plumbers Conference 2011</title>
	<guid>http://0pointer.de/blog/projects/lpc2011.html</guid>
	<link>http://0pointer.de/blog/projects/lpc2011.html</link>
	<description>&lt;p&gt;&lt;a href=&quot;http://www.linuxplumbersconf.org/2011/&quot;&gt;The Linux Plumbers
Conference 2011 in Santa Rosa, CA, USA&lt;/a&gt; is coming nearer (Sep. 7-9).
Together with Kay Sievers I am running the Boot&amp;amp;Init track, and together with
Mark Brown the Audio track.&lt;/p&gt;

&lt;p&gt;For both tracks we still need proposals. So if you haven't submitted
anything yet, please consider doing so. And that quickly. i.e. if you can
arrange for it, last sunday would be best, since that was actually the final
deadline. However, the submission form is still open, so if you submit
something really, really quickly we'll ignore the absence of time travel and the calendar for a bit. So, go,
submit something.  Now.&lt;/p&gt;

&lt;p&gt;What are we looking for? Well, here's what I just posted on the &lt;a href=&quot;https://tango.0pointer.de/pipermail/pulseaudio-discuss/2011-May/010191.html&quot;&gt;audio
related mailing lists&lt;/a&gt;:&lt;/p&gt;

&lt;pre&gt;
So, please consider submitting something if you haven't done so yet. We
are looking for all kinds of technical talks covering everything audio
plumbing related: audio drivers, audio APIs, sound servers, pro audio,
consumer audio. If you can propose something audio related -- like talks
on media controller routing, on audio for ASOC/Embedded, submit
something! If you care for low-latency audio, submit something. If you
care about the Linux audio stack in general, submit something.

LPC is probably the most relevant technical conference on the general
Linux platform, so be sure that if you want your project, your work,
your ideas to be heard then this is the right forum for everything
related to the Linux stack. And the Audio track covers everything in our
Audio Stack, regardless whether it is pro or consumer audio.
&lt;/pre&gt;

&lt;p&gt;And here's what I posted to the &lt;a href=&quot;http://lists.freedesktop.org/archives/systemd-devel/2011-May/002428.html&quot;&gt;init
related lists&lt;/a&gt;:&lt;/p&gt;

&lt;pre&gt;So, please consider submitting something if you haven't done so yet. We
are looking for all kinds of technical talks covering everything from
the BIOS (i.e. CoreBoot and friends), over boot loaders (i.e. GRUB and
friends), to initramfs (i.e. Dracut and friends) and init systems
(i.e. systemd and friends). If you have something smart to say about any
of these areas or maybe about related tools (i.e. you wrote a fancy new
tool to measure boot performance) or fancy boot schemes in your
favourite Linux based OS (i.e. the new Meego zero second boot ;-)) then
don't hesitate to submit something on the LPC web site, in the Boot&amp;amp;Init
track!&lt;/pre&gt;

&lt;p&gt;And now, quickly, go to &lt;a href=&quot;http://www.linuxplumbersconf.org/2011/&quot;&gt;the
LPC website&lt;/a&gt; and post your session proposal in the Audio resp. Boot&amp;amp;Init track! Thank you!&lt;/p&gt;</description>
	<pubDate>Thu, 19 May 2011 21:30:00 +0000</pubDate>
</item>
<item>
	<title>Arun Raghavan: More PulseAudio power goodness</title>
	<guid>http://arunraghavan.net/?p=1009</guid>
	<link>http://arunraghavan.net/2011/05/more-pulseaudio-power-goodness/</link>
	<description>&lt;p&gt;&lt;em&gt;[tl;dr — if you're using GNOME or a GStreamer-based player, not using the Rhythmbox crossfading backend, and want to try to save ~0.5 W of power, jump to end of the post]&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;Lennart &lt;a href=&quot;http://0pointer.de/blog/projects/pa-and-power.html&quot;&gt;pointed&lt;/a&gt; to another &lt;a href=&quot;http://linux-tipps.blogspot.com/2011/04/power-performance-of-pulseaudio-alsa.html&quot;&gt;blog post&lt;/a&gt; about actually putting PulseAudio&amp;#8217;s power-saving capabilities to use on your system. The latter provides a hack-ish way to increase buffering in PulseAudio to the maximum possible, reducing the number of wakeups. I&amp;#8217;m going to talk about that a bit.&lt;/p&gt;

&lt;p&gt;Summarising the basic idea, we want music players to decode a large chunk of data and give it to PA so that we can then fill up ALSA&amp;#8217;s hardware buffer, sleep till it&amp;#8217;s almost completely consumed, fill it again, sleep, repeat. More details in this &lt;a href=&quot;http://0pointer.de/blog/projects/pulse-glitch-free.html&quot;&gt;post from Lennart&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;The native GNOME audio/video players don&amp;#8217;t talk to PulseAudio directly — they use GStreamer, which has a &lt;tt&gt;pulsesink&lt;/tt&gt; element that actually talks to PulseAudio. We could configure things so that we send a large amount (say 2 seconds&amp;#8217; worth) to PulseAudio, sleep, and then wake up periodically to push out more. Now in the audio player (say Rhythmbox), the user hits next, prev, or pause. We need to effect this change immediately, even though we&amp;#8217;ve already sent out 2 seconds of data (it would suck if you hit pause and the actual pause happened 2 seconds later, wouldn&amp;#8217;t it?). PulseAudio already solves because it can internally &amp;#8220;rewind&amp;#8221; the buffer and overwrite it if required. GStreamer can and does take advantage of this by sending pause and other control messages out of band from the data.&lt;/p&gt;

&lt;p&gt;This all works well for relatively simple GStreamer pipelines. However, if you want to do something more complicated, like Rhythmbox&amp;#8217; crossfading backend, things start to break. PulseAudio doesn&amp;#8217;t offer an API to do fades, and since we don&amp;#8217;t do rewinds in GStreamer, we need to apply effects such as fades with a latency equal to the amount of buffering we&amp;#8217;re asking PulseAudio to do. This makes for unhappy users.&lt;/p&gt;

&lt;p&gt;Well, all is not as bleak as it seems. There was some &lt;a href=&quot;https://tango.0pointer.de/pipermail/pulseaudio-discuss/2011-February/008879.html&quot;&gt;discussion&lt;/a&gt; on the PA mailing list, and the need for a proper fade API (really, a generic effects API) is clear. There have even been attempts to &lt;a href=&quot;https://bugzilla.gnome.org/show_bug.cgi?id=641544&quot;&gt;solve this in GStreamer&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;But you want to save 0.5 W of power now! Okay, if you&amp;#8217;re not using the Rhythmbox crossfading backend (or are okay with disabling it), this will make Rhythmbox, Banshee, pre-3.0 Totem (and really any GNOMEy player that uses &lt;tt&gt;gconfaudiosink&lt;/tt&gt;, which will soon be replaced by &lt;tt&gt;gsettingsaudiosink&lt;/tt&gt;, I guess), you can run this on the command line:&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;gconftool-2 --type string \
    --set /system/gstreamer/0.10/default/musicaudiosink \
    &quot;pulsesink latency-time=100000 buffer-time=2000000&quot;
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;On my machine, this brings down the number of wakeups per second because of alsa-sink to ~2.7 (corresponding nicely to the ~350ms of hardware buffer that I have). With Totem 3.0, this may or may not work, depending on whether your distribution gives &lt;tt&gt;gconfaudiosink&lt;/tt&gt; a higher rank than &lt;tt&gt;pulseaudiosink&lt;/tt&gt;.&lt;/p&gt;

&lt;p&gt;This is clearly just a stop-gap till we can get things done the Right Way™ at the system level, so really, if things break, you get to keep the pieces. If you need to, you can undo this change by running the same command without the latency-time=… and buffer-time=… bits. That said, if something does break, do leave a comment below so I can add it to the list of things that we need to test the final solution with.&lt;/p&gt;</description>
	<pubDate>Tue, 17 May 2011 04:20:57 +0000</pubDate>
</item>
<item>
	<title>Lennart Poettering: PulseAudio Saves Power</title>
	<guid>http://0pointer.de/blog/projects/pa-and-power.html</guid>
	<link>http://0pointer.de/blog/projects/pa-and-power.html</link>
	<description>&lt;p&gt;&lt;a href=&quot;http://linux-tipps.blogspot.com/2011/04/power-performance-of-pulseaudio-alsa.html&quot;&gt;D.
Jansen has put up a blog story&lt;/a&gt; including some power saving results when
running &lt;a href=&quot;http://pulseaudio.org/&quot;&gt;PulseAudio&lt;/a&gt; on modern HDA drivers.
This shows off some work Pierre-Louis Bossart from Intel did on the HDA drivers
which now enables the timer-based scheduling code in PulseAudio I added quite
some time ago to come to its full potential. You can save half a Watt and
reduce wakeups while playing audio to 1 wakeup/s.&lt;/p&gt;

&lt;p&gt;Previously there was little public profiling data available about the
benefits PA brings you for low-power devices. Thanks to Dennis' data there's now
public data available that hopefully explains why PA is the best choice for
low-power devices as well as desktops. Hopefully this cleans up some misconceptions.&lt;/p&gt;

&lt;p&gt;Pierre-Louis, thanks for your work!&lt;/p&gt;

&lt;p&gt;&lt;b&gt;Update:&lt;/b&gt; &lt;a href=&quot;http://arunraghavan.net/2011/05/more-pulseaudio-power-goodness/&quot;&gt;Arun Raghavan has posted a follow-up to this.&lt;/a&gt;&lt;/p&gt;</description>
	<pubDate>Mon, 16 May 2011 21:58:00 +0000</pubDate>
</item>
<item>
	<title>Kurt Taylor: Group Photo: ASoC and Embedded Linux Audio Conference</title>
	<guid>http://linuxsound.wordpress.com/?p=116</guid>
	<link>http://linuxsound.wordpress.com/2011/05/16/group-photo-asoc-and-embedded-linux-audio-conference/</link>
	<description>&lt;p&gt;Here is a group photo of the attendees at the ASoC and Embedded Linux Audio Conference in Edinburgh :&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;http://linuxsound.files.wordpress.com/2011/05/dscn0111.jpg&quot;&gt;&lt;img class=&quot;aligncenter size-full wp-image-117&quot; title=&quot;DSCN0111&quot; src=&quot;http://linuxsound.files.wordpress.com/2011/05/dscn0111.jpg?w=600&amp;h=450&quot; alt=&quot;ASoC Group Photo&quot; width=&quot;600&quot; height=&quot;450&quot; /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;br /&gt;  &lt;a rel=&quot;nofollow&quot; href=&quot;http://feeds.wordpress.com/1.0/gocomments/linuxsound.wordpress.com/116/&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/comments/linuxsound.wordpress.com/116/&quot; /&gt;&lt;/a&gt; &lt;a rel=&quot;nofollow&quot; href=&quot;http://feeds.wordpress.com/1.0/godelicious/linuxsound.wordpress.com/116/&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/delicious/linuxsound.wordpress.com/116/&quot; /&gt;&lt;/a&gt; &lt;a rel=&quot;nofollow&quot; href=&quot;http://feeds.wordpress.com/1.0/gofacebook/linuxsound.wordpress.com/116/&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/facebook/linuxsound.wordpress.com/116/&quot; /&gt;&lt;/a&gt; &lt;a rel=&quot;nofollow&quot; href=&quot;http://feeds.wordpress.com/1.0/gotwitter/linuxsound.wordpress.com/116/&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/twitter/linuxsound.wordpress.com/116/&quot; /&gt;&lt;/a&gt; &lt;a rel=&quot;nofollow&quot; href=&quot;http://feeds.wordpress.com/1.0/gostumble/linuxsound.wordpress.com/116/&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/stumble/linuxsound.wordpress.com/116/&quot; /&gt;&lt;/a&gt; &lt;a rel=&quot;nofollow&quot; href=&quot;http://feeds.wordpress.com/1.0/godigg/linuxsound.wordpress.com/116/&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/digg/linuxsound.wordpress.com/116/&quot; /&gt;&lt;/a&gt; &lt;a rel=&quot;nofollow&quot; href=&quot;http://feeds.wordpress.com/1.0/goreddit/linuxsound.wordpress.com/116/&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/reddit/linuxsound.wordpress.com/116/&quot; /&gt;&lt;/a&gt; &lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://stats.wordpress.com/b.gif?host=linuxsound.wordpress.com&amp;blog=18734761&amp;post=116&amp;subd=linuxsound&amp;ref=&amp;feed=1&quot; width=&quot;1&quot; height=&quot;1&quot; /&gt;</description>
	<pubDate>Mon, 16 May 2011 15:27:54 +0000</pubDate>
</item>
<item>
	<title>D. Jansen: 0.4 Watt Less During Audio Playback - (Updated:) Power Performance: Pulseaudio + Interrupt-Less Alsa</title>
	<guid>tag:blogger.com,1999:blog-2124831850793435411.post-3953054464121912034</guid>
	<link>http://linux-tipps.blogspot.com/2011/04/power-performance-of-pulseaudio-alsa.html</link>
	<description>(&lt;a href=&quot;http://linux-tipps.blogspot.com/2011/04/power-performance-of-pulseaudio-alsa.html#update&quot;&gt;Skip to the update&lt;/a&gt;)&lt;br /&gt;Ok, so with some help from Pierre-Louis from Intel I've managed to get it working and do some performance/power tests. But let me start at the beginning: Recently, pulseaudio not only switched to a more power efficient (and otherwise) timing system, as far as I understand a callback API. It also provided the infrastructure to use ALSA devices without causing any interrupts (&amp;quot;period wakeup disabling&amp;quot;), so you CPU can stay longer in standby mode (e.g. &amp;quot;C6 residency&amp;quot;), saving you power and avoiding playback glitches at the same time. See &lt;a href=&quot;http://0pointer.de/blog/projects/pulse-glitch-free.html&quot;&gt;here&lt;/a&gt; and &lt;a href=&quot;http://pulseaudio.org/wiki/LatencyControl&quot;&gt;here&lt;/a&gt; or more background information. With kernel 2.6.38 the first driver (snd-hda-intel) supports this infrastructure out of the box, the snd-hda-intel driver. This combination is what I tested for power efficiency...&lt;br /&gt;&lt;a href=&quot;http://linux-tipps.blogspot.com/2011/04/power-performance-of-pulseaudio-alsa.html#more&quot;&gt;Read more »&lt;/a&gt;&lt;div class=&quot;blogger-post-footer&quot;&gt;(...)
-- Click to read the entire post.&lt;img width=&quot;1&quot; height=&quot;1&quot; src=&quot;https://blogger.googleusercontent.com/tracker/2124831850793435411-3953054464121912034?l=linux-tipps.blogspot.com&quot; alt=&quot;&quot; /&gt;&lt;/div&gt;</description>
	<pubDate>Sun, 15 May 2011 09:12:19 +0000</pubDate>
	<author>noreply@blogger.com (D.)</author>
</item>
<item>
	<title>Kurt Taylor: Travel to ASoC and LAC</title>
	<guid>http://linuxsound.wordpress.com/?p=92</guid>
	<link>http://linuxsound.wordpress.com/2011/05/12/travel-to-asoc-and-lac/</link>
	<description>&lt;p&gt;I&amp;#8217;ve been a little busy lately with new assignments and travel. I just returned from two back-to-back conferences, in two different countries, in less than one week.&lt;/p&gt;
&lt;p&gt;The first was the ASoC and Embedded Linux Audio Conference in Edinburgh. This was a gathering of about 30-40 multimedia developers from all over the world representing almost every company involved in this space and I was honored to be invited. After introductions, the 2 days worth of in-depth technical discussions got started with a description of the ASoC DSP support, focused on the description and charts shown here -&amp;gt; http://omapedia.org/wiki/Audio_Drive_Arch   We then shifted to OS integration topics that mainly centered around Android&amp;#8217;s need for a different ALSA user space lib, with more business favorable license terms. Several options were discussed. The UCM talk was next and with an initial brief overview and then enumerating the needs moving forward, including PulseAudio work. Next were discussions on QoS, run-time coefficients, firmware and events. The meeting drew to a close with a summary, questions time and assignments review. I drew the assignment for looking into getting an install script and  git set up for the UCM profile config files, something we will need for Linaro.  All in all, a great technical conference that was well prepared and useful. Also, it was a fantastic opportunity to meet everyone I have been interacting with in email and IRC, plus many new contacts. I look forward to attending the next one!&lt;/p&gt;
&lt;p&gt;The second was the Linux Audio Conference in Dublin, aka, LAC2011. I worked with the planners of this conference to get the PulseAudio folks, including Lennart Poettering,  a place to work. The space we were allocated was large enough to allow others to come and listen and ask a few questions. I want to apologize to the people that waited so patiently to ask questions.  We had such an active discussion between the developers that they could hardly get a word in edge wise. I learned a lot and hopefully contributed to the overall discussion, direction and schedule. The rest of the conference was more general purpose for all things Linux Audio including: sound generation, sequencing, pro audio, and composition. I have followed this for many years now and it was really interesting to see how it continues to evolve. Even though it was a Linux conference, there were constant references to Apple and iPad integration with the applications used, even a session on running PulseAudio on Mac OS X. I think that mobile Linux has an opportunity to reach these folks.&lt;/p&gt;
&lt;p&gt;Even though the trip was jam-packed, it was a perfect technical requirements review for going into the next development cycle for Linaro.  They were both worth the hectic travel schedule.&lt;/p&gt;
&lt;br /&gt;  &lt;a rel=&quot;nofollow&quot; href=&quot;http://feeds.wordpress.com/1.0/gocomments/linuxsound.wordpress.com/92/&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/comments/linuxsound.wordpress.com/92/&quot; /&gt;&lt;/a&gt; &lt;a rel=&quot;nofollow&quot; href=&quot;http://feeds.wordpress.com/1.0/godelicious/linuxsound.wordpress.com/92/&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/delicious/linuxsound.wordpress.com/92/&quot; /&gt;&lt;/a&gt; &lt;a rel=&quot;nofollow&quot; href=&quot;http://feeds.wordpress.com/1.0/gofacebook/linuxsound.wordpress.com/92/&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/facebook/linuxsound.wordpress.com/92/&quot; /&gt;&lt;/a&gt; &lt;a rel=&quot;nofollow&quot; href=&quot;http://feeds.wordpress.com/1.0/gotwitter/linuxsound.wordpress.com/92/&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/twitter/linuxsound.wordpress.com/92/&quot; /&gt;&lt;/a&gt; &lt;a rel=&quot;nofollow&quot; href=&quot;http://feeds.wordpress.com/1.0/gostumble/linuxsound.wordpress.com/92/&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/stumble/linuxsound.wordpress.com/92/&quot; /&gt;&lt;/a&gt; &lt;a rel=&quot;nofollow&quot; href=&quot;http://feeds.wordpress.com/1.0/godigg/linuxsound.wordpress.com/92/&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/digg/linuxsound.wordpress.com/92/&quot; /&gt;&lt;/a&gt; &lt;a rel=&quot;nofollow&quot; href=&quot;http://feeds.wordpress.com/1.0/goreddit/linuxsound.wordpress.com/92/&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/reddit/linuxsound.wordpress.com/92/&quot; /&gt;&lt;/a&gt; &lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://stats.wordpress.com/b.gif?host=linuxsound.wordpress.com&amp;blog=18734761&amp;post=92&amp;subd=linuxsound&amp;ref=&amp;feed=1&quot; width=&quot;1&quot; height=&quot;1&quot; /&gt;</description>
	<pubDate>Thu, 12 May 2011 14:40:20 +0000</pubDate>
</item>
<item>
	<title>Lennart Poettering: GNOME 3.0 Is Out!</title>
	<guid>http://0pointer.de/blog/projects/gnome3.html</guid>
	<link>http://0pointer.de/blog/projects/gnome3.html</link>
	<description>&lt;p&gt;&lt;a href=&quot;http://gnome.org/&quot;&gt;The next generation desktop has arrived.&lt;/a&gt; I am running it as I type this, and so should you. &lt;a href=&quot;http://gnome3.org/tryit.html&quot;&gt;So, go, get it!&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;If you are in &lt;b&gt;Berlin&lt;/b&gt; on Friday you should also attend our &lt;a href=&quot;https://live.gnome.org/ThreePointZero/LaunchParty/Germany/Berlin&quot;&gt;GNOME
3.0 Release Party&lt;/a&gt;. It's at the world famous &lt;a href=&quot;http://www.c-base.org/&quot;&gt;c-base&lt;/a&gt;, in the remains of an alien spaceship
that crashed into Berlin 4.5 billion years ago (no kidding!). We've got
Ubuntu's &lt;a href=&quot;http://daniel.holba.ch/blog/&quot;&gt;Daniel Holbach&lt;/a&gt; as DJ, and a
few folks from the GNOME community will do a talk or two (including that
annoying dude who created Avahi, PulseAudio and systemd). We even got Mirko Boehm
from the KDE side to say a few things. And there are going to be GNOME 3
goodies! How awesome is that? &lt;a href=&quot;https://live.gnome.org/ThreePointZero/LaunchParty/Germany/Berlin&quot;&gt;See the
wiki page for further details.&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;And here's your homework until Friday: &lt;a href=&quot;http://gnome3.org/tryit.html&quot;&gt;Try out GNOME 3.0!&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a title=&quot;Help promote GNOME 3!&quot; href=&quot;https://live.gnome.org/ThreePointZero/Promote&quot;&gt;&lt;img alt=&quot;I am GNOME&quot; src=&quot;http://www.gnome.org/wp-content/uploads/2011/04/iamgnome.png&quot; width=&quot;200&quot; height=&quot;200&quot; /&gt;&lt;/a&gt;&lt;/p&gt;</description>
	<pubDate>Wed, 06 Apr 2011 21:02:00 +0000</pubDate>
</item>
<item>
	<title>Kurt Taylor: PulseAudio Configuration</title>
	<guid>http://linuxsound.wordpress.com/?p=74</guid>
	<link>http://linuxsound.wordpress.com/2011/03/29/pulseaudio-configuration/</link>
	<description>&lt;p&gt;The best way to learn code is to work on it. I did just that implementing a feature to add tsched buffer size to the configuration file. Late in the process, I discovered that it was already possible to pass it to the ALSA module, so I abandoned the additional code. Since it stumped me, I figured the configuration of PulseAudio might be somewhat confusing and could use a blog entry, hence this.&lt;/p&gt;
&lt;p&gt;First, if you have not yet read PerfectSetup, start with that.  You can find it here: http://www.pulseaudio.org/wiki/PerfectSetup&lt;/p&gt;
&lt;p&gt;There are 3 places to change the configuration parameters and behavior of PulseAudio.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;system.pa/default.pa&lt;/strong&gt; &amp;#8211; startup script to specify module loading, etc, module parameters are passed here, more on that later&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;client.conf&lt;/strong&gt; &amp;#8211; does just what is says, config file for clients&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;daemon.conf&lt;/strong&gt; &amp;#8211; configuration specific to the sound server daemon&lt;/p&gt;
&lt;p&gt;On Ubuntu, these files are installed in /etc/pulse. The system.pa startup script is used when PulseAudio is used in system-wide mode. The other, daemon.conf is used when the sound server is started in user mode.&lt;/p&gt;
&lt;p&gt;The values listed in these files are default values and are commented out. Obviously, uncommenting the parameter will not change anything unless the assignment is value changed.&lt;/p&gt;
&lt;p&gt;The startup script can be used to pass module specific parameters. This is done by uncommenting the line in the file. For example, passing a new tsched buffer size to the ALSA module would look like this:&lt;/p&gt;
&lt;p&gt;load-module module-alsa-sink tsched_buffer_size=XYZ&lt;/p&gt;
&lt;p&gt;Here are all the module specific parameters for the ALSA module (from module-alsa-card.c) :&lt;/p&gt;
&lt;p&gt;&amp;#8220;name=&amp;lt;name for the card/sink/source, to be prefixed&amp;gt; &amp;#8220;&lt;br /&gt;
&amp;#8220;card_name=&amp;lt;name for the card&amp;gt; &amp;#8220;&lt;br /&gt;
&amp;#8220;card_properties=&amp;lt;properties for the card&amp;gt; &amp;#8220;&lt;br /&gt;
&amp;#8220;sink_name=&amp;lt;name for the sink&amp;gt; &amp;#8220;&lt;br /&gt;
&amp;#8220;sink_properties=&amp;lt;properties for the sink&amp;gt; &amp;#8220;&lt;br /&gt;
&amp;#8220;source_name=&amp;lt;name for the source&amp;gt; &amp;#8220;&lt;br /&gt;
&amp;#8220;source_properties=&amp;lt;properties for the source&amp;gt; &amp;#8220;&lt;br /&gt;
&amp;#8220;namereg_fail=&amp;lt;pa_namereg_register() fail parameter value&amp;gt; &amp;#8220;&lt;br /&gt;
&amp;#8220;device_id=&amp;lt;ALSA card index&amp;gt; &amp;#8220;&lt;br /&gt;
&amp;#8220;format=&amp;lt;sample format&amp;gt; &amp;#8220;&lt;br /&gt;
&amp;#8220;rate=&amp;lt;sample rate&amp;gt; &amp;#8220;&lt;br /&gt;
&amp;#8220;fragments=&amp;lt;number of fragments&amp;gt; &amp;#8220;&lt;br /&gt;
&amp;#8220;fragment_size=&amp;lt;fragment size&amp;gt; &amp;#8220;&lt;br /&gt;
&amp;#8220;mmap=&amp;lt;enable memory mapping?&amp;gt; &amp;#8220;&lt;br /&gt;
&amp;#8220;tsched=&amp;lt;enable system timer based scheduling mode?&amp;gt; &amp;#8220;&lt;br /&gt;
&amp;#8220;tsched_buffer_size=&amp;lt;buffer size when using timer based scheduling&amp;gt; &amp;#8220;&lt;br /&gt;
&amp;#8220;tsched_buffer_watermark=&amp;lt;lower fill watermark&amp;gt; &amp;#8220;&lt;br /&gt;
&amp;#8220;profile=&amp;lt;profile name&amp;gt; &amp;#8220;&lt;br /&gt;
&amp;#8220;ignore_dB=&amp;lt;ignore dB information from the device?&amp;gt; &amp;#8220;&lt;br /&gt;
&amp;#8220;sync_volume=&amp;lt;syncronize sw and hw voluchanges in IO-thread?&amp;gt; &amp;#8220;&lt;br /&gt;
&amp;#8220;profile_set=&amp;lt;profile set configuration file&amp;gt; &amp;#8220;&lt;/p&gt;
&lt;br /&gt;  &lt;a rel=&quot;nofollow&quot; href=&quot;http://feeds.wordpress.com/1.0/gocomments/linuxsound.wordpress.com/74/&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/comments/linuxsound.wordpress.com/74/&quot; /&gt;&lt;/a&gt; &lt;a rel=&quot;nofollow&quot; href=&quot;http://feeds.wordpress.com/1.0/godelicious/linuxsound.wordpress.com/74/&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/delicious/linuxsound.wordpress.com/74/&quot; /&gt;&lt;/a&gt; &lt;a rel=&quot;nofollow&quot; href=&quot;http://feeds.wordpress.com/1.0/gofacebook/linuxsound.wordpress.com/74/&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/facebook/linuxsound.wordpress.com/74/&quot; /&gt;&lt;/a&gt; &lt;a rel=&quot;nofollow&quot; href=&quot;http://feeds.wordpress.com/1.0/gotwitter/linuxsound.wordpress.com/74/&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/twitter/linuxsound.wordpress.com/74/&quot; /&gt;&lt;/a&gt; &lt;a rel=&quot;nofollow&quot; href=&quot;http://feeds.wordpress.com/1.0/gostumble/linuxsound.wordpress.com/74/&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/stumble/linuxsound.wordpress.com/74/&quot; /&gt;&lt;/a&gt; &lt;a rel=&quot;nofollow&quot; href=&quot;http://feeds.wordpress.com/1.0/godigg/linuxsound.wordpress.com/74/&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/digg/linuxsound.wordpress.com/74/&quot; /&gt;&lt;/a&gt; &lt;a rel=&quot;nofollow&quot; href=&quot;http://feeds.wordpress.com/1.0/goreddit/linuxsound.wordpress.com/74/&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/reddit/linuxsound.wordpress.com/74/&quot; /&gt;&lt;/a&gt; &lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://stats.wordpress.com/b.gif?host=linuxsound.wordpress.com&amp;blog=18734761&amp;post=74&amp;subd=linuxsound&amp;ref=&amp;feed=1&quot; width=&quot;1&quot; height=&quot;1&quot; /&gt;</description>
	<pubDate>Tue, 29 Mar 2011 21:42:18 +0000</pubDate>
</item>
<item>
	<title>Colin Guthrie: Desktop Summit</title>
	<guid>http://colin.guthr.ie/?p=404</guid>
	<link>http://colin.guthr.ie/2011/03/desktop-summit/</link>
	<description>&lt;p&gt;&lt;a href=&quot;https://www.desktopsummit.org/&quot;&gt;&lt;img alt=&quot;Desktop Summit Logo&quot; src=&quot;https://www.desktopsummit.org/sites/dev.desktopsummit.org/files/acquia_prosper_logo.png&quot; title=&quot;Desktop Summit&quot; class=&quot;alignright&quot; width=&quot;266&quot; height=&quot;182&quot; /&gt;&lt;/a&gt;This is just a quick reminder that the &lt;a href=&quot;https://www.desktopsummit.org/cfp&quot;&gt;Call for Papers&lt;/a&gt; for the &lt;a href=&quot;https://www.desktopsummit.org/&quot;&gt;Desktop Summit&lt;/a&gt; ends on Friday. So get your thinking caps on and write some abstracts! I've submitted my own proposal which would discuss the UI layers which expose PulseAudio in both KDE and GNOME, how they differ and what is missing (hopefully a lot less will be missing by the time the summit comes around in August!!).&lt;/p&gt;
&lt;p&gt;I've included my abstract below just in case you are interested.&lt;br /&gt;
&lt;span id=&quot;more-404&quot;&gt;&lt;/span&gt;&lt;/p&gt;
&lt;blockquote&gt;&lt;p&gt;PulseAudio integration has come a long way. The times when detractors derided it for crashing or simply not working are mostly in the past (there are always exceptions!) and the various distributions now have solid integration and configuration options available. ALSA has also come a long way to support the timer-based scheduling that PulseAudio uses by default.&lt;/p&gt;
&lt;p&gt;Today, a major hurdle is UI and Desktop Environment integration. In this talk I intend to look at the current UIs in both GNOME and KDE and the kind of interfaces that are missing and are still needed and what options still need to be exposed from the underlying ALSA level. I'll look at the routing logic chosen under the (more exposed) KDE and the (more minimal) GNOME interfaces and how we support that at the PA level. I'll also look at how we should be configuring some of the more advanced features of PA in a way that can fit in neatly to the DE with their own, native UI.&lt;/p&gt;&lt;/blockquote&gt;
&lt;div class=&quot;sociable&quot;&gt;&lt;div&gt;&lt;span class=&quot;sociable-tagline&quot;&gt;Share and Enjoy:&lt;/span&gt;&lt;/div&gt;&lt;ul&gt;&lt;li&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;http://digg.com/submit?phase=2&amp;url=http%3A%2F%2Fcolin.guthr.ie%2F2011%2F03%2Fdesktop-summit%2F&amp;title=Desktop%20Summit&amp;bodytext=This%20is%20just%20a%20quick%20reminder%20that%20the%20Call%20for%20Papers%20for%20the%20Desktop%20Summit%20ends%20on%20Friday.%20So%20get%20your%20thinking%20caps%20on%20and%20write%20some%20abstracts%21%20I%27ve%20submitted%20my%20own%20proposal%20which%20would%20discuss%20the%20UI%20layers%20which%20expose%20PulseAudio%20in%20both%20KDE%20&quot;&gt;&lt;img src=&quot;http://colin.guthr.ie/wp-content/plugins/sociable-30/images/default/16/digg.png&quot; class=&quot;sociable-img sociable-hovers&quot; title=&quot;Digg&quot; alt=&quot;Digg&quot; /&gt;&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;http://www.stumbleupon.com/submit?url=http%3A%2F%2Fcolin.guthr.ie%2F2011%2F03%2Fdesktop-summit%2F&amp;title=Desktop%20Summit&quot;&gt;&lt;img src=&quot;http://colin.guthr.ie/wp-content/plugins/sociable-30/images/default/16/stumbleupon.png&quot; class=&quot;sociable-img sociable-hovers&quot; title=&quot;StumbleUpon&quot; alt=&quot;StumbleUpon&quot; /&gt;&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;http://delicious.com/post?url=http%3A%2F%2Fcolin.guthr.ie%2F2011%2F03%2Fdesktop-summit%2F&amp;title=Desktop%20Summit&amp;notes=This%20is%20just%20a%20quick%20reminder%20that%20the%20Call%20for%20Papers%20for%20the%20Desktop%20Summit%20ends%20on%20Friday.%20So%20get%20your%20thinking%20caps%20on%20and%20write%20some%20abstracts%21%20I%27ve%20submitted%20my%20own%20proposal%20which%20would%20discuss%20the%20UI%20layers%20which%20expose%20PulseAudio%20in%20both%20KDE%20&quot;&gt;&lt;img src=&quot;http://colin.guthr.ie/wp-content/plugins/sociable-30/images/default/16/delicious.png&quot; class=&quot;sociable-img sociable-hovers&quot; title=&quot;del.icio.us&quot; alt=&quot;del.icio.us&quot; /&gt;&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;http://www.facebook.com/share.php?u=http%3A%2F%2Fcolin.guthr.ie%2F2011%2F03%2Fdesktop-summit%2F&amp;t=Desktop%20Summit&quot;&gt;&lt;img src=&quot;http://colin.guthr.ie/wp-content/plugins/sociable-30/images/default/16/facebook.png&quot; class=&quot;sociable-img sociable-hovers&quot; title=&quot;Facebook&quot; alt=&quot;Facebook&quot; /&gt;&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;http://buzz.yahoo.com/submit/?submitUrl=http%3A%2F%2Fcolin.guthr.ie%2F2011%2F03%2Fdesktop-summit%2F&amp;submitHeadline=Desktop%20Summit&amp;submitSummary=This%20is%20just%20a%20quick%20reminder%20that%20the%20Call%20for%20Papers%20for%20the%20Desktop%20Summit%20ends%20on%20Friday.%20So%20get%20your%20thinking%20caps%20on%20and%20write%20some%20abstracts%21%20I%27ve%20submitted%20my%20own%20proposal%20which%20would%20discuss%20the%20UI%20layers%20which%20expose%20PulseAudio%20in%20both%20KDE%20&amp;submitCategory=science&amp;submitAssetType=text&quot;&gt;&lt;img src=&quot;http://colin.guthr.ie/wp-content/plugins/sociable-30/images/default/16/yahoobuzz.png&quot; class=&quot;sociable-img sociable-hovers&quot; title=&quot;Yahoo! Buzz&quot; alt=&quot;Yahoo! Buzz&quot; /&gt;&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;http://twitter.com/home?status=Desktop%20Summit%20-%20http%3A%2F%2Fcolin.guthr.ie%2F2011%2F03%2Fdesktop-summit%2F&quot;&gt;&lt;img src=&quot;http://colin.guthr.ie/wp-content/plugins/sociable-30/images/default/16/twitter.png&quot; class=&quot;sociable-img sociable-hovers&quot; title=&quot;Twitter&quot; alt=&quot;Twitter&quot; /&gt;&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;http://www.google.com/bookmarks/mark?op=edit&amp;bkmk=http%3A%2F%2Fcolin.guthr.ie%2F2011%2F03%2Fdesktop-summit%2F&amp;title=Desktop%20Summit&amp;annotation=This%20is%20just%20a%20quick%20reminder%20that%20the%20Call%20for%20Papers%20for%20the%20Desktop%20Summit%20ends%20on%20Friday.%20So%20get%20your%20thinking%20caps%20on%20and%20write%20some%20abstracts%21%20I%27ve%20submitted%20my%20own%20proposal%20which%20would%20discuss%20the%20UI%20layers%20which%20expose%20PulseAudio%20in%20both%20KDE%20&quot;&gt;&lt;img src=&quot;http://colin.guthr.ie/wp-content/plugins/sociable-30/images/default/16/googlebookmark.png&quot; class=&quot;sociable-img sociable-hovers&quot; title=&quot;Google Bookmarks&quot; alt=&quot;Google Bookmarks&quot; /&gt;&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;http://identi.ca/notice/new?status_textarea=http%3A%2F%2Fcolin.guthr.ie%2F2011%2F03%2Fdesktop-summit%2F&quot;&gt;&lt;img src=&quot;http://colin.guthr.ie/wp-content/plugins/sociable-30/images/default/16/identica.png&quot; class=&quot;sociable-img sociable-hovers&quot; title=&quot;Identi.ca&quot; alt=&quot;Identi.ca&quot; /&gt;&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;http://slashdot.org/bookmark.pl?title=Desktop%20Summit&amp;url=http%3A%2F%2Fcolin.guthr.ie%2F2011%2F03%2Fdesktop-summit%2F&quot;&gt;&lt;img src=&quot;http://colin.guthr.ie/wp-content/plugins/sociable-30/images/default/16/slashdot.png&quot; class=&quot;sociable-img sociable-hovers&quot; title=&quot;Slashdot&quot; alt=&quot;Slashdot&quot; /&gt;&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;</description>
	<pubDate>Tue, 22 Mar 2011 09:43:43 +0000</pubDate>
</item>
<item>
	<title>Kurt Taylor: PulseAudio Buffer Size Tests</title>
	<guid>http://linuxsound.wordpress.com/?p=66</guid>
	<link>http://linuxsound.wordpress.com/2011/03/07/pulseaudio-buffer-size-tests/</link>
	<description>&lt;p&gt;It has been a few weeks, but in my defense, I have been pretty busy testing and debugging in this new environment. As an assignee to the Linaro project, my first task was to figure out if increasing the buffer size would enable the ARM cpu to drop into a lower power state. Code investigation, community feedback and prototyping said probably not, but I followed through. Below is a chart showing all the testing done, including the recent work to go back through the tests with ALSA 1.0.24 in the stack to enable checking for  period disable. Enjoy!&lt;/p&gt;
&lt;div id=&quot;attachment_68&quot; class=&quot;wp-caption aligncenter&quot;&gt;&lt;a href=&quot;http://linuxsound.files.wordpress.com/2011/03/pulseaudio_buffer_wps.jpg&quot;&gt;&lt;img class=&quot;size-full wp-image-68 &quot; title=&quot;PulseAudio_Buffer_WPS&quot; src=&quot;http://linuxsound.files.wordpress.com/2011/03/pulseaudio_buffer_wps.jpg?w=600&quot; alt=&quot;PulseAudio Buffer Size Tests&quot; /&gt;&lt;/a&gt;&lt;p class=&quot;wp-caption-text&quot;&gt;PulseAudio Buffer Size Tests&lt;/p&gt;&lt;/div&gt;
&lt;br /&gt;  &lt;a rel=&quot;nofollow&quot; href=&quot;http://feeds.wordpress.com/1.0/gocomments/linuxsound.wordpress.com/66/&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/comments/linuxsound.wordpress.com/66/&quot; /&gt;&lt;/a&gt; &lt;a rel=&quot;nofollow&quot; href=&quot;http://feeds.wordpress.com/1.0/godelicious/linuxsound.wordpress.com/66/&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/delicious/linuxsound.wordpress.com/66/&quot; /&gt;&lt;/a&gt; &lt;a rel=&quot;nofollow&quot; href=&quot;http://feeds.wordpress.com/1.0/gofacebook/linuxsound.wordpress.com/66/&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/facebook/linuxsound.wordpress.com/66/&quot; /&gt;&lt;/a&gt; &lt;a rel=&quot;nofollow&quot; href=&quot;http://feeds.wordpress.com/1.0/gotwitter/linuxsound.wordpress.com/66/&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/twitter/linuxsound.wordpress.com/66/&quot; /&gt;&lt;/a&gt; &lt;a rel=&quot;nofollow&quot; href=&quot;http://feeds.wordpress.com/1.0/gostumble/linuxsound.wordpress.com/66/&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/stumble/linuxsound.wordpress.com/66/&quot; /&gt;&lt;/a&gt; &lt;a rel=&quot;nofollow&quot; href=&quot;http://feeds.wordpress.com/1.0/godigg/linuxsound.wordpress.com/66/&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/digg/linuxsound.wordpress.com/66/&quot; /&gt;&lt;/a&gt; &lt;a rel=&quot;nofollow&quot; href=&quot;http://feeds.wordpress.com/1.0/goreddit/linuxsound.wordpress.com/66/&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/reddit/linuxsound.wordpress.com/66/&quot; /&gt;&lt;/a&gt; &lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://stats.wordpress.com/b.gif?host=linuxsound.wordpress.com&amp;blog=18734761&amp;post=66&amp;subd=linuxsound&amp;ref=&amp;feed=1&quot; width=&quot;1&quot; height=&quot;1&quot; /&gt;</description>
	<pubDate>Mon, 07 Mar 2011 23:19:48 +0000</pubDate>
</item>
<item>
	<title>Kurt Taylor: Building PulseAudio</title>
	<guid>http://linuxsound.wordpress.com/?p=24</guid>
	<link>http://linuxsound.wordpress.com/2011/01/06/building-pulseaudio/</link>
	<description>&lt;p&gt;Here are (now improved) quick instructions to create a working build sandbox for PulseAudio development on Ubuntu 10.10 Maverick on an i386 platform. I highly recommend reading all this post completely before starting this process.&lt;/p&gt;
&lt;p&gt;Here are the steps to make PulseAudio that builds and works for Ubuntu:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt; Install or update to Maverick and accept defaults, this process will probably work fine with other Ubuntu versions, so if you are not on Maverick, give it a try.&lt;/li&gt;
&lt;li&gt;Update all packages with Update Manager&lt;/li&gt;
&lt;li&gt;Install dpkg-dev -&amp;gt; sudo apt-get install dpkg-dev&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;If you are using source from git:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Install git if you haven&amp;#8217;t already -&amp;gt; sudo apt-get install git&lt;/li&gt;
&lt;li&gt;From your home directory, get the latest PulseAudio source -&amp;gt; git clone git://git.0pointer.de/pulseaudio.git&lt;/li&gt;
&lt;li&gt;Git will create the PulseAudio repository in a directory called pulseaudio, when the clone has completed, change to that directory -&amp;gt; cd ~/pulseaudio&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;If you are using Ubuntu maverick source:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Install the source -&amp;gt; apt-get source pulseaudio&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;Configure and build the source:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Install the prereq packages -&amp;gt; sudo apt-get build-dep pulseaudio&lt;/li&gt;
&lt;li&gt;To check the environment and set up the basics, run the bootstrap script -&amp;gt; ./bootstrap.sh&lt;/li&gt;
&lt;li&gt;Next, run configure -&amp;gt; ./configure&lt;/li&gt;
&lt;li&gt;Run make to build the executables&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;Note: the executables will be in the src directory. Change to that directory and run specifying that path so that you will not run the system programs. For example, to run pulseaudio with verbose log messages, cd to src and run -&amp;gt; ./pulseaudio -n -F ./default.pa -p ./.libs -vvvv&lt;/p&gt;
&lt;p&gt;There are some very helpful hints at: &lt;a href=&quot;http://colin.guthr.ie/2010/09/compiling-and-running-pulseaudio-from-git/&quot; target=&quot;_blank&quot;&gt;http://colin.guthr.ie/2010/09/compiling-and-running-pulseaudio-from-git/&lt;/a&gt; The steps on this page are slightly different for Ubuntu, but worth reading to better understand the process.  Also, this page does a really nice job of explaining how to run pulseaudio for test/debug.&lt;/p&gt;
&lt;br /&gt;  &lt;a rel=&quot;nofollow&quot; href=&quot;http://feeds.wordpress.com/1.0/gocomments/linuxsound.wordpress.com/24/&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/comments/linuxsound.wordpress.com/24/&quot; /&gt;&lt;/a&gt; &lt;a rel=&quot;nofollow&quot; href=&quot;http://feeds.wordpress.com/1.0/godelicious/linuxsound.wordpress.com/24/&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/delicious/linuxsound.wordpress.com/24/&quot; /&gt;&lt;/a&gt; &lt;a rel=&quot;nofollow&quot; href=&quot;http://feeds.wordpress.com/1.0/gofacebook/linuxsound.wordpress.com/24/&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/facebook/linuxsound.wordpress.com/24/&quot; /&gt;&lt;/a&gt; &lt;a rel=&quot;nofollow&quot; href=&quot;http://feeds.wordpress.com/1.0/gotwitter/linuxsound.wordpress.com/24/&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/twitter/linuxsound.wordpress.com/24/&quot; /&gt;&lt;/a&gt; &lt;a rel=&quot;nofollow&quot; href=&quot;http://feeds.wordpress.com/1.0/gostumble/linuxsound.wordpress.com/24/&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/stumble/linuxsound.wordpress.com/24/&quot; /&gt;&lt;/a&gt; &lt;a rel=&quot;nofollow&quot; href=&quot;http://feeds.wordpress.com/1.0/godigg/linuxsound.wordpress.com/24/&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/digg/linuxsound.wordpress.com/24/&quot; /&gt;&lt;/a&gt; &lt;a rel=&quot;nofollow&quot; href=&quot;http://feeds.wordpress.com/1.0/goreddit/linuxsound.wordpress.com/24/&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/reddit/linuxsound.wordpress.com/24/&quot; /&gt;&lt;/a&gt; &lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://stats.wordpress.com/b.gif?host=linuxsound.wordpress.com&amp;blog=18734761&amp;post=24&amp;subd=linuxsound&amp;ref=&amp;feed=1&quot; width=&quot;1&quot; height=&quot;1&quot; /&gt;</description>
	<pubDate>Thu, 06 Jan 2011 15:39:05 +0000</pubDate>
</item>

</channel>
</rss>

