Regularly no signal at the outlet of reson~ objects

    Jul 27 2011 | 12:26 pm
    I have a voice synthesizer, based on 5 paralel formant filters. I use the reson~ object for the paralel filters.
    My problem is the following : quite often, suddenly, while the input signal and input arguments (gain, central frequency and Q) of reson~ remains the same, signal is cut (no signal) at the outlet of one or several reson~ objects.
    To find back signal at the outlet, I have to reinitialize the reson~ object by copying and "pasting replacing" it (sending to it the message clear keeps the signal cut).
    The strange thing is that when I copy and paste replace one of the not working reson~ objects, then sometimes another or several other reson~ objects which before were ok stops to outlet signals too ...
    I can quite easily reproduce the issue just by copying and pasting the subpatch where my 5 reson~ are.
    I use Max 5.1 on Mac OSX. Sorry I can't enclose the synth to help you. I don't any error in the Max window.
    Until I find a solution, I think I'm going to try to use fffb object instead of reson~ one, even if it's not adviced for parameter changes (Maxhelp file : "but for the sake of speed does not accept signals for parameter changes.")
    Thanks for your suggestions.

    • Jul 27 2011 | 2:40 pm
      What's the nature of the signal that you're sending through it? Have you tried sending the clear message when reson~ blows up?
      Also, what are your coefficients for reson~? That could be part of the issue.
    • Jul 27 2011 | 2:43 pm
      I tried to duplicate this behaviour and couldn't; without seeing your patch it's going to be tricky.
      Have you tried other filters? [svf~] (bandpass) and [lores~] will resonate.
    • Jul 27 2011 | 3:40 pm
      @Peter McCulloch - The nature of the signal is a glottal flow model, so it's periodic plus noise, sampling rate of 44100 Hz. - The clear message doesn't make anything, the signal remains stopped. - I have a database for different voice timbres. Approximatly : * the amplitude coeff range is from 0 to 10 ; Acutally, I receive the dB value then it goes to "expr pow(10.0,($f1/20.0))", then to the reson~ inlet. * the frequency range is from 300 to 5000, * and the Q range is from 10 to 1000. They may change very fastly (going from one to another value in 10ms) to modelize transition between consonant and vowel.
      @n00b_meister - I also tried to make a simple patch to find the problem, but when my patch becomes simple (coeffs which remains the same, input signal stable, etc...) I don't this issue anymore. - I haven't tried other filters. I'm going to try the ones you purposed me.
    • Jul 27 2011 | 6:57 pm
      I've built something similar and I'm not having a problem.
      Instead of using one filter with a really high Q, try cascading resons (check out the vocoder in the examples folder)
    • Aug 05 2011 | 11:51 am
      The synth was controlled by a Magic track pad (with fingerpinger object). Since I got a new (not official) release of this object (because it frequently made Max crashed), this issue with the reson~ object clearly occurs very less frequently ...
      I don't know why ..
      The crashing reports with fingerpinger (which doesn't occurs with this new version) were the following :
      43 com.cycling74.fingerpinger 0x1e5f34cd callback(void*, Finger*, int, double, int) + 305 44 ...MultitouchSupport.framework 0x975e783f mt_ForwardBinaryContacts + 600 45 ...MultitouchSupport.framework 0x975e347e mt_HandleMultitouchFrame + 2388 46 ...MultitouchSupport.framework 0x975e1ec6 mt_DequeueDataFromDriver + 344 47 ...MultitouchSupport.framework 0x975e201f mt_DequeueMultitouchDataFromDriverThreadEntry + 176 48 libSystem.B.dylib 0x96c937fd _pthread_start + 345 49 libSystem.B.dylib 0x96c93682 thread_start + 34