I need to get a smooth as possible envelope of a real-time speech signal. I have tried rectification + filtering and squaring + filtering and also a Hilbert Transformer (to creat the imaginary part of a complex waveform which I can take the magnitude of) but neither of these methods appear to give a smooth envelope. Is there a tried and tested best method? Hardy
Envelope of Speech
Started by ●October 4, 2008
Reply by ●October 4, 20082008-10-04
HardySpicer wrote:> I need to get a smooth as possible envelope of a real-time speech > signal.Main question: what are you trying to accomplish by that?> I have tried rectification + filtering and squaring + filtering and > also a Hilbert Transformer (to creat the imaginary part of a complex > waveform which I can take the magnitude of) but neither of these > methods appear to give a smooth envelope.What is the definition of "smooth envelope" ?> Is there a tried and tested > best method?It depends on how much of the processing delay wrt realtime is acceptable. You have to overlook at least one period of the lowest pitch; that is about 20ms. Vladimir Vassilevsky DSP and Mixed Signal Design Consultant http://www.abvolt.com
Reply by ●October 4, 20082008-10-04
HardySpicer wrote:> I need to get a smooth as possible envelope of a real-time speech > signal. > I have tried rectification + filtering and squaring + filtering and > also a Hilbert Transformer (to creat the imaginary part of a complex > waveform which I can take the magnitude of) but neither of these > methods appear to give a smooth envelope. Is there a tried and tested > best method? > > > Hardy >Had a similar problem, but using stored data. If you can tolerate a delay comparable to the lowest frequency present. Detect time of sign change derivative of absolute value of signal. Use that "time" to sample the input signal, interpolate/filter between those points as desired. My experiments were related to following amplitude of an AM modulated carrier. I was thing along lines of a peak follower. I may have my Scilab code with a demo test case.
Reply by ●October 5, 20082008-10-05
On Sat, 4 Oct 2008 13:00:50 -0700 (PDT), HardySpicer <gyansorova@gmail.com> wrote:>I need to get a smooth as possible envelope of a real-time speech >signal. >I have tried rectification + filtering and squaring + filtering and >also a Hilbert Transformer (to creat the imaginary part of a complex >waveform which I can take the magnitude of) but neither of these >methods appear to give a smooth envelope. Is there a tried and tested >best method? > > >HardyHi Hardy, My guess is that if you filter out all of the signal's noise, that's outside the signal's bandwidth, and perform the Hilbert process to obtain a time-domain "magnitude" sequence, that this should be about your best option. I'm not exactly sure what you mean by "smooth", but is it possible that your computations are correct and that your signal's envelope is just not "smooth"? [-Rick-]
Reply by ●October 5, 20082008-10-05
HardySpicer wrote:> > I need to get a smooth as possible envelope of a real-time speech > signal. > I have tried rectification + filtering and squaring + filtering and > also a Hilbert Transformer (to creat the imaginary part of a complex > waveform which I can take the magnitude of) but neither of these > methods appear to give a smooth envelope. Is there a tried and tested > best method?Best method for doing what exactly? For instance, you might be trying to create a display so that 5-10 seconds of speech can be viewed at once. -jim ----== Posted via Pronews.Com - Unlimited-Unrestricted-Secure Usenet News==---- http://www.pronews.com The #1 Newsgroup Service in the World! >100,000 Newsgroups ---= - Total Privacy via Encryption =---
Reply by ●October 6, 20082008-10-06
On Oct 5, 1:00�am, HardySpicer <gyansor...@gmail.com> wrote:> I need to get a smooth as possible envelope of a real-time speech > signal. > I have tried rectification + filtering and squaring + filtering and > also a Hilbert Transformer (to creat the imaginary part of a complex > waveform which I can take the magnitude of) �but neither of these > methods appear to give a smooth envelope. Is there a tried and tested > best method? > > Hardytake chunks of say 20ms of speech convert to frequency domain and apply LPC analysis in frequency domain as opposed to time domain.You will get an envelope of speech in time domain. But this works well only for voiced segments of speech.