Thank you, Pierre
So it's safe to without audio resample element in the pipeline. 
It's good to do sample rate conversion all once in pulseaudio. 
Do you have any SSE optimization plan for pulseaudio or do you know that status?
Thanks!


Regards,
Lisa

>-----Original Message-----
>From: pl bossart [mailto:[email protected]]
>Sent: 2010年11月29日 23:30
>To: Yue, Ling
>Cc: [email protected]
>Subject: Re: [MeeGo-dev] SSE optimization for gstreamer audio resample
>
>On Mon, Nov 29, 2010 at 2:13 AM, Yue, Ling <[email protected]> wrote:
>> Hi, group
>>
>> I am looking at Meego bug #5603:
>>
>> Bug 5603 - SSE misalignment removal in gstreamer base plugin "audioresample"
>>
>> (http://bugs.meego.com/show_bug.cgi?id=5603)
>>
>> It's about removing the SSE misalignment in gstreamer audio resample
>> element.
>>
>> Since the input array can't ensure 16-byte aligned, when _USE_SSE is
>> configured,
>>
>> _mm_loadu_ps() will be used instead of _mm_load_ps() to load from array.
>>
>> And _mm_loadu_ps should be the main cause for high CPU usage according to
>> BMC#5603.
>>
>> The prototyping codes suggest removing misalignment for oversample=1 and 2,
>> this will reduce the hot function overhead by about 60%.
>>
>> Of course the disadvantage of removing the mis-alignment is to increase the
>> code complexity a lot.
>>
>>
>>
>> I plan to optimize gstreamer audio resample code now. And since this is a
>> common issue for speex, ffmpeg, pulseaudio etc, I wonder what's the
>> suggested method to increase SSE optimization utilization for all of them~
>>
>> I googled and found someone asked about SSE optimization for moblin audio
>> before but I can't see the cached content.
>
>I wouldn't spend too much time fixing this bug since we want
>resampling to take place in PulseAudio, so that the rate of a specific
>stream is adjusted to the output exactly once. If you enable
>resampling in gstreamer, you have no idea what the actual output
>sampling frequency is and you will do this costly operation twice.
>remove the audioresample element from the pipeline and it should work
>just fine. Likewise all volume control operations should be handled in
>PulseAudio.
>-Pierre
_______________________________________________
MeeGo-dev mailing list
[email protected]
http://lists.meego.com/listinfo/meego-dev

Reply via email to