Whoo!  <br><br>(I can&#39;t wait to see that in PulseAudio!)<br>Cheers,<br>-- <br>Marc-André Lureau, GSmartMix
<br><br><div><span class="gmail_quote">On 5/14/07, <b class="gmail_sendername">keith preston</b> &lt;<a href="mailto:keithpre@gmail.com">keithpre@gmail.com</a>&gt; wrote:</span><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
<span></span><span>Marc-André,</span><br><br><br><div><span class="q"><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">Have you been working on a fixed point resampling/mixing patch already?
</blockquote><div><br>&nbsp;</div></span>I&#39;ve actually been working on pulseaudio a lot lately.&nbsp;&nbsp; Although nothing is quite ready for patches yet, here a sample of what I&#39;ve been working on:<br><br>libspeex resampling patch.&nbsp;&nbsp; I have this working in certain cases.&nbsp; Most notably the embedded case, which is S16_LE audio in 1 or 2 channels.&nbsp;&nbsp; I haven&#39;t really followed up with the libspeex guys, but I was going to wait for the resampling code API to stabilize in libspeex and be released, before I added a patch with a dependency to it.&nbsp; 
<br><br>software volume/mixing (sample-utils.c)&nbsp;&nbsp; I&#39;ve been looking and thinking about how to rewrite this for efficiency.&nbsp; I found on my embedded device CPU Utilization for from 5% to 100% whenever I have two streams with software volumes.&nbsp;&nbsp; As a temporary measure for myself, my embedded platform has some proprietary audio mixing code I am using, but this code should be cleaned up a bit.
<br><br>Audio Class Policy,&nbsp; this is really the big one and I&#39;m sure you&#39;ll be interested in with the gsmartmix stuff.&nbsp;&nbsp; I&#39;ve added the concept of audio class to all the internal streams in pulseaudio and have a module that arbitrates between streams actively preempting streams, changing volume and such.&nbsp;&nbsp; It is working pretty well right now.&nbsp;&nbsp; I can have my music turn down when sound events happen that need my attention, I can block all audio when a VOIP call comes in, etc...&nbsp; 
<br><br>Keith Preston<br></div><br>
<br>_______________________________________________<br>pulseaudio-discuss mailing list<br><a onclick="return top.js.OpenExtLink(window,event,this)" href="https://mail.google.com/mail?view=cm&amp;tf=0&amp;to=pulseaudio-discuss@mail.0pointer.de">
pulseaudio-discuss@mail.0pointer.de</a><br><a onclick="return top.js.OpenExtLink(window,event,this)" href="https://tango.0pointer.de/mailman/listinfo/pulseaudio-discuss" target="_blank">https://tango.0pointer.de/mailman/listinfo/pulseaudio-discuss
</a><br><br></blockquote></div><br>