Fons, Thanks for the response. What you suggested is what I did but I only use one 'silence byte'. That is definable to match the 'silence byte' for different devices. It seems to work OK. Do you think that a range of 'silence bytes' would work better? William Estrada MrUmunhum@xxxxxxxxxxx Mt-Umunhum-Wireless.net ( http://Mt-Umunhum-Wireless.net ) Ymessenger: MrUmunhum Fons Adriaensen wrote: > On Mon, Oct 22, 2007 at 10:17:50AM -0700, william estrada wrote: > >> Yes, the format is U8, it is a simple recording program to make '.wav' >> files. The filtering does work when adjusting the 'silence byte'. It >> appears that the device drivers are not consistent with this value? >> So I will be adding an option to change the value of the 'silence byte'. >> >> How do I use the RMS value to remove noise? A URL that I could read? > > It's probably not worth the effort for 8 bits. What you see is a simple > DC offset. Probably the easy approach is to consider a range of values > e.g. 0x7E...0x82 as silence. Any value outside the range starts the > recording, until you find a long series of samples within the silence > range. > > So the algo would be: > > If you find a value in the silence range, increment a counter. > If the counter reaches a certain value, stop. > If you find a value outside the range, start and reset the > counter. > > You could also use a counter to avoid too many false starts. > > Ciao > _______________________________________________ Linux-audio-user mailing list Linux-audio-user@xxxxxxxxxxxxxxxxxxxx http://lists.linuxaudio.org/mailman/listinfo/linux-audio-user