<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 TRANSITIONAL//EN">
<HTML>
<HEAD>
  <META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=UTF-8">
  <META NAME="GENERATOR" CONTENT="GtkHTML/3.26.3">
</HEAD>
<BODY>
Hi all,<BR>
<BR>
It seems both pulseaudio alsa PCM plugin (source) and&nbsp; gstreamer pulsesrc consume much more CPU resource than alsa when working on the same sample (rate, channel and format). I had a rough look at the source code and found they both use the threaded mainloop model. Can we have any chance to optimize for this?<BR>
<BR>
$ arecord -Dhw:0,0 -c 2 -f S32_LE test.wav&nbsp;&nbsp; CPU% = 1~2%<BR>
$ arecord -c 2 -f S32_LE test.wav&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; CPU% = 15~18% (default device is pulseaudio PCM plugin)<BR>
$ gst-launch alsasrc device=&quot;hw:0,0&quot; ! queue ! audioconvert ! wavenc ! filesink location=test.wav&nbsp;&nbsp;&nbsp;&nbsp; CPU% = 2~3% <BR>
$ gst-launch pulsesrc ! queue ! audioconvert ! wavenc ! filesink location=test.wav&nbsp;&nbsp; CPU% = 12~14%<BR>
<BR>
Thanks,<BR>
Bin
</BODY>
</HTML>