Re: [PD] pitch to voltage

2014-04-27 Thread Miller Puckette
That is an excellent, witty way to measure pulse withs using
only tilde obects - my hat's off to you.

The methond only has limited accuracy since its measurement is in
samples.   For instance, a 1/2 cycle of a 440-hz. tone at 44.1 kHz is
only 50 samples, so there's only 2% accuracy.  That's about 1/3 of a
half tone (30-ish cents) which would sound horribly out of tune.

There's an alternative sine-to-sawtooth recipe described here:

http://msp.ucsd.edu/Publications/icmc10.pdf

This is the basis of my guitar processing patch, smeck, but should be more
broadly useful.  But it has its own limitations: the sawtooth you get out
is wiggly if the input sn't a pure sinusoid.

There's also the possibility of simply pitch tracking with sigmund~.  Use
a maximum frequency around 6000 and a maximum of 6 partals (default 50!)
for best results.

cheers
M

On Sun, Apr 27, 2014 at 11:27:33AM +0200, Simon Iten wrote:
 dear list,
 
 i have a strange problem with my “sinetosawtooth” patch.
 
 it is basically a version of the pitch to voltage conversion used in the old 
 gr300 guitar synths from roland.
 
 i cut out all the clutter to make it easier to look at and understand. (cut 
 out the adaptive filtering at the input since i use a sine wave for this 
 example and not a guitar string)
 
 here is how it works (or should):
 
 -an input signal gets amplified by a large factor and clipped. this squares 
 the input.
 
 -the square wave is converted to pulses. 
 
 -the pulses from the rising of the square wave are used to set and reset an 
 accumulating filter (rpole~)
 
 this results in a sawtooth wave that varies in amplitude depending on the 
 frequency of the input.
 
 -a sample and hold samples the peak of the sawtooth and holds it until the 
 next peak occurs. this, after a conversion gives us the input frequency. yeah!
 
   in the example patch i used the falling edges of the square wave to 
 trigger the sample and hold. this samples the sawtooth amplitude after half 
 the rising. (this is also why i have  22050 in fexpr~ and not 44100) i could 
 not figure out how to sample the peak of the sawtooth, so suggestions here 
 are very welcome.
 
 now to the problem:
 
 the extracted frequency does not exactly correspond to the input frequency. 
 it is pretty close at low frequencies but gets worse at higher frequencies. 
 the factor is not constant. at even higher frequencies (around 5000 hertz) 
 the reported frequency gets totally out of control.
 
 i first thought this is because the samphold~ object is inaccurate. but i 
 then saw that the sawtooth wave from the rpole~ object has no constant 
 amplitude even with the input frequency not changing. so it seems that either 
 rpole~ or change~ is not accurate.
 
 or the problem is that i sample in the middle of the rising and not at the 
 top ( as described earlier)
 
 attached the sinetosawtooth patch. set your sound card to 44100 or change the 
 22050 in fexpr~ to half the sampling frequency.
 
 i would really appreciate if somebody could have a look at this,
 
 thanks, simon
 


 ___
 Pd-list@iem.at mailing list
 UNSUBSCRIBE and account-management - 
 http://lists.puredata.info/listinfo/pd-list


___
Pd-list@iem.at mailing list
UNSUBSCRIBE and account-management - 
http://lists.puredata.info/listinfo/pd-list


Re: [PD] pitch to voltage

2014-04-27 Thread Miller Puckette
Sorry for the double answer, but this also occurs to me:

To improve accuracy, measure both halves of the cycle and add them.
To improve further, upsample the whole mess, say by a factor of 16.
Doint both of those would improve the theoretical resolution by
a factor of 32.  (Of course, you still have the guitar's own variation
from cycle to cycle to worry about :)

M

On Sun, Apr 27, 2014 at 03:56:18AM -0700, Miller Puckette wrote:
 That is an excellent, witty way to measure pulse withs using
 only tilde obects - my hat's off to you.
 
 The methond only has limited accuracy since its measurement is in
 samples.   For instance, a 1/2 cycle of a 440-hz. tone at 44.1 kHz is
 only 50 samples, so there's only 2% accuracy.  That's about 1/3 of a
 half tone (30-ish cents) which would sound horribly out of tune.
 
 There's an alternative sine-to-sawtooth recipe described here:
 
 http://msp.ucsd.edu/Publications/icmc10.pdf
 
 This is the basis of my guitar processing patch, smeck, but should be more
 broadly useful.  But it has its own limitations: the sawtooth you get out
 is wiggly if the input sn't a pure sinusoid.
 
 There's also the possibility of simply pitch tracking with sigmund~.  Use
 a maximum frequency around 6000 and a maximum of 6 partals (default 50!)
 for best results.
 
 cheers
 M
 
 On Sun, Apr 27, 2014 at 11:27:33AM +0200, Simon Iten wrote:
  dear list,
  
  i have a strange problem with my “sinetosawtooth” patch.
  
  it is basically a version of the pitch to voltage conversion used in the 
  old gr300 guitar synths from roland.
  
  i cut out all the clutter to make it easier to look at and understand. (cut 
  out the adaptive filtering at the input since i use a sine wave for this 
  example and not a guitar string)
  
  here is how it works (or should):
  
  -an input signal gets amplified by a large factor and clipped. this squares 
  the input.
  
  -the square wave is converted to pulses. 
  
  -the pulses from the rising of the square wave are used to set and reset an 
  accumulating filter (rpole~)
  
  this results in a sawtooth wave that varies in amplitude depending on the 
  frequency of the input.
  
  -a sample and hold samples the peak of the sawtooth and holds it until the 
  next peak occurs. this, after a conversion gives us the input frequency. 
  yeah!
  
  in the example patch i used the falling edges of the square wave to 
  trigger the sample and hold. this samples the sawtooth amplitude after half 
  the rising. (this is also why i have  22050 in fexpr~ and not 44100) i 
  could not figure out how to sample the peak of the sawtooth, so suggestions 
  here are very welcome.
  
  now to the problem:
  
  the extracted frequency does not exactly correspond to the input frequency. 
  it is pretty close at low frequencies but gets worse at higher frequencies. 
  the factor is not constant. at even higher frequencies (around 5000 hertz) 
  the reported frequency gets totally out of control.
  
  i first thought this is because the samphold~ object is inaccurate. but i 
  then saw that the sawtooth wave from the rpole~ object has no constant 
  amplitude even with the input frequency not changing. so it seems that 
  either rpole~ or change~ is not accurate.
  
  or the problem is that i sample in the middle of the rising and not at the 
  top ( as described earlier)
  
  attached the sinetosawtooth patch. set your sound card to 44100 or change 
  the 22050 in fexpr~ to half the sampling frequency.
  
  i would really appreciate if somebody could have a look at this,
  
  thanks, simon
  
 
 
  ___
  Pd-list@iem.at mailing list
  UNSUBSCRIBE and account-management - 
  http://lists.puredata.info/listinfo/pd-list
 
 
 ___
 Pd-list@iem.at mailing list
 UNSUBSCRIBE and account-management - 
 http://lists.puredata.info/listinfo/pd-list

___
Pd-list@iem.at mailing list
UNSUBSCRIBE and account-management - 
http://lists.puredata.info/listinfo/pd-list


Re: [PD] pitch to voltage

2014-04-27 Thread Simon Iten
so if i would measure at the peak of the sawtooth and would upsample inside the 
pd patch, i would get higher resolution, right?

any ideas how i can measure at the peak? (using the rpole output on both 
samphold inputs does not work and delaying one of them is also not working)

which 

i would highly recommend you try this method with your gk-3 equipped guitar 
(one for each string) since you only have to cover a two octave range per 
string the error is tolerable. (you can add an offset to make it fit)
On 27 Apr 2014, at 12:56, Miller Puckette m...@ucsd.edu wrote:

 That is an excellent, witty way to measure pulse withs using
 only tilde obects - my hat's off to you.
 
 The methond only has limited accuracy since its measurement is in
 samples.   For instance, a 1/2 cycle of a 440-hz. tone at 44.1 kHz is
 only 50 samples, so there's only 2% accuracy.  That's about 1/3 of a
 half tone (30-ish cents) which would sound horribly out of tune.
 
 There's an alternative sine-to-sawtooth recipe described here:
 
 http://msp.ucsd.edu/Publications/icmc10.pdf
 
 This is the basis of my guitar processing patch, smeck, but should be more
 broadly useful.  But it has its own limitations: the sawtooth you get out
 is wiggly if the input sn't a pure sinusoid.
 
 There's also the possibility of simply pitch tracking with sigmund~.  Use
 a maximum frequency around 6000 and a maximum of 6 partals (default 50!)
 for best results.
 
 cheers
 M
 
 On Sun, Apr 27, 2014 at 11:27:33AM +0200, Simon Iten wrote:
 dear list,
 
 i have a strange problem with my “sinetosawtooth” patch.
 
 it is basically a version of the pitch to voltage conversion used in the old 
 gr300 guitar synths from roland.
 
 i cut out all the clutter to make it easier to look at and understand. (cut 
 out the adaptive filtering at the input since i use a sine wave for this 
 example and not a guitar string)
 
 here is how it works (or should):
 
 -an input signal gets amplified by a large factor and clipped. this squares 
 the input.
 
 -the square wave is converted to pulses. 
 
 -the pulses from the rising of the square wave are used to set and reset an 
 accumulating filter (rpole~)
 
 this results in a sawtooth wave that varies in amplitude depending on the 
 frequency of the input.
 
 -a sample and hold samples the peak of the sawtooth and holds it until the 
 next peak occurs. this, after a conversion gives us the input frequency. 
 yeah!
 
  in the example patch i used the falling edges of the square wave to 
 trigger the sample and hold. this samples the sawtooth amplitude after half 
 the rising. (this is also why i have  22050 in fexpr~ and not 44100) i could 
 not figure out how to sample the peak of the sawtooth, so suggestions here 
 are very welcome.
 
 now to the problem:
 
 the extracted frequency does not exactly correspond to the input frequency. 
 it is pretty close at low frequencies but gets worse at higher frequencies. 
 the factor is not constant. at even higher frequencies (around 5000 hertz) 
 the reported frequency gets totally out of control.
 
 i first thought this is because the samphold~ object is inaccurate. but i 
 then saw that the sawtooth wave from the rpole~ object has no constant 
 amplitude even with the input frequency not changing. so it seems that 
 either rpole~ or change~ is not accurate.
 
 or the problem is that i sample in the middle of the rising and not at the 
 top ( as described earlier)
 
 attached the sinetosawtooth patch. set your sound card to 44100 or change 
 the 22050 in fexpr~ to half the sampling frequency.
 
 i would really appreciate if somebody could have a look at this,
 
 thanks, simon
 
 
 
 ___
 Pd-list@iem.at mailing list
 UNSUBSCRIBE and account-management - 
 http://lists.puredata.info/listinfo/pd-list
 


___
Pd-list@iem.at mailing list
UNSUBSCRIBE and account-management - 
http://lists.puredata.info/listinfo/pd-list


Re: [PD] pitch to voltage

2014-04-27 Thread Simon Iten
crosspost! sorry about the noise. thanks for the inputs i will try to to this. 
not sure if i can. otherwise i will ask back if that’s ok!
On 27 Apr 2014, at 13:03, Simon Iten itensi...@gmail.com wrote:

 so if i would measure at the peak of the sawtooth and would upsample inside 
 the pd patch, i would get higher resolution, right?
 
 any ideas how i can measure at the peak? (using the rpole output on both 
 samphold inputs does not work and delaying one of them is also not working)
 
 which 
 
 i would highly recommend you try this method with your gk-3 equipped guitar 
 (one for each string) since you only have to cover a two octave range per 
 string the error is tolerable. (you can add an offset to make it fit)
 On 27 Apr 2014, at 12:56, Miller Puckette m...@ucsd.edu wrote:
 
 That is an excellent, witty way to measure pulse withs using
 only tilde obects - my hat's off to you.
 
 The methond only has limited accuracy since its measurement is in
 samples.   For instance, a 1/2 cycle of a 440-hz. tone at 44.1 kHz is
 only 50 samples, so there's only 2% accuracy.  That's about 1/3 of a
 half tone (30-ish cents) which would sound horribly out of tune.
 
 There's an alternative sine-to-sawtooth recipe described here:
 
 http://msp.ucsd.edu/Publications/icmc10.pdf
 
 This is the basis of my guitar processing patch, smeck, but should be more
 broadly useful.  But it has its own limitations: the sawtooth you get out
 is wiggly if the input sn't a pure sinusoid.
 
 There's also the possibility of simply pitch tracking with sigmund~.  Use
 a maximum frequency around 6000 and a maximum of 6 partals (default 50!)
 for best results.
 
 cheers
 M
 
 On Sun, Apr 27, 2014 at 11:27:33AM +0200, Simon Iten wrote:
 dear list,
 
 i have a strange problem with my “sinetosawtooth” patch.
 
 it is basically a version of the pitch to voltage conversion used in the 
 old gr300 guitar synths from roland.
 
 i cut out all the clutter to make it easier to look at and understand. (cut 
 out the adaptive filtering at the input since i use a sine wave for this 
 example and not a guitar string)
 
 here is how it works (or should):
 
 -an input signal gets amplified by a large factor and clipped. this squares 
 the input.
 
 -the square wave is converted to pulses. 
 
 -the pulses from the rising of the square wave are used to set and reset an 
 accumulating filter (rpole~)
 
 this results in a sawtooth wave that varies in amplitude depending on the 
 frequency of the input.
 
 -a sample and hold samples the peak of the sawtooth and holds it until the 
 next peak occurs. this, after a conversion gives us the input frequency. 
 yeah!
 
 in the example patch i used the falling edges of the square wave to 
 trigger the sample and hold. this samples the sawtooth amplitude after half 
 the rising. (this is also why i have  22050 in fexpr~ and not 44100) i 
 could not figure out how to sample the peak of the sawtooth, so suggestions 
 here are very welcome.
 
 now to the problem:
 
 the extracted frequency does not exactly correspond to the input frequency. 
 it is pretty close at low frequencies but gets worse at higher frequencies. 
 the factor is not constant. at even higher frequencies (around 5000 hertz) 
 the reported frequency gets totally out of control.
 
 i first thought this is because the samphold~ object is inaccurate. but i 
 then saw that the sawtooth wave from the rpole~ object has no constant 
 amplitude even with the input frequency not changing. so it seems that 
 either rpole~ or change~ is not accurate.
 
 or the problem is that i sample in the middle of the rising and not at the 
 top ( as described earlier)
 
 attached the sinetosawtooth patch. set your sound card to 44100 or change 
 the 22050 in fexpr~ to half the sampling frequency.
 
 i would really appreciate if somebody could have a look at this,
 
 thanks, simon
 
 
 
 ___
 Pd-list@iem.at mailing list
 UNSUBSCRIBE and account-management - 
 http://lists.puredata.info/listinfo/pd-list
 
 


___
Pd-list@iem.at mailing list
UNSUBSCRIBE and account-management - 
http://lists.puredata.info/listinfo/pd-list


Re: [PD] pitch to voltage

2014-04-27 Thread Simon Iten
ok tried to upsample the whole thing (after the osc~) and now change~ does 
nothing anymore… it just spits out the same square wave i feed in…clues?


On 27 Apr 2014, at 13:05, Simon Iten itensi...@gmail.com wrote:

 crosspost! sorry about the noise. thanks for the inputs i will try to to 
 this. not sure if i can. otherwise i will ask back if that’s ok!
 On 27 Apr 2014, at 13:03, Simon Iten itensi...@gmail.com wrote:
 
 so if i would measure at the peak of the sawtooth and would upsample inside 
 the pd patch, i would get higher resolution, right?
 
 any ideas how i can measure at the peak? (using the rpole output on both 
 samphold inputs does not work and delaying one of them is also not working)
 
 which 
 
 i would highly recommend you try this method with your gk-3 equipped guitar 
 (one for each string) since you only have to cover a two octave range per 
 string the error is tolerable. (you can add an offset to make it fit)
 On 27 Apr 2014, at 12:56, Miller Puckette m...@ucsd.edu wrote:
 
 That is an excellent, witty way to measure pulse withs using
 only tilde obects - my hat's off to you.
 
 The methond only has limited accuracy since its measurement is in
 samples.   For instance, a 1/2 cycle of a 440-hz. tone at 44.1 kHz is
 only 50 samples, so there's only 2% accuracy.  That's about 1/3 of a
 half tone (30-ish cents) which would sound horribly out of tune.
 
 There's an alternative sine-to-sawtooth recipe described here:
 
 http://msp.ucsd.edu/Publications/icmc10.pdf
 
 This is the basis of my guitar processing patch, smeck, but should be more
 broadly useful.  But it has its own limitations: the sawtooth you get out
 is wiggly if the input sn't a pure sinusoid.
 
 There's also the possibility of simply pitch tracking with sigmund~.  Use
 a maximum frequency around 6000 and a maximum of 6 partals (default 50!)
 for best results.
 
 cheers
 M
 
 On Sun, Apr 27, 2014 at 11:27:33AM +0200, Simon Iten wrote:
 dear list,
 
 i have a strange problem with my “sinetosawtooth” patch.
 
 it is basically a version of the pitch to voltage conversion used in the 
 old gr300 guitar synths from roland.
 
 i cut out all the clutter to make it easier to look at and understand. 
 (cut out the adaptive filtering at the input since i use a sine wave for 
 this example and not a guitar string)
 
 here is how it works (or should):
 
 -an input signal gets amplified by a large factor and clipped. this 
 squares the input.
 
 -the square wave is converted to pulses. 
 
 -the pulses from the rising of the square wave are used to set and reset 
 an accumulating filter (rpole~)
 
 this results in a sawtooth wave that varies in amplitude depending on the 
 frequency of the input.
 
 -a sample and hold samples the peak of the sawtooth and holds it until the 
 next peak occurs. this, after a conversion gives us the input frequency. 
 yeah!
 
in the example patch i used the falling edges of the square wave to 
 trigger the sample and hold. this samples the sawtooth amplitude after 
 half the rising. (this is also why i have  22050 in fexpr~ and not 44100) 
 i could not figure out how to sample the peak of the sawtooth, so 
 suggestions here are very welcome.
 
 now to the problem:
 
 the extracted frequency does not exactly correspond to the input 
 frequency. it is pretty close at low frequencies but gets worse at higher 
 frequencies. the factor is not constant. at even higher frequencies 
 (around 5000 hertz) the reported frequency gets totally out of control.
 
 i first thought this is because the samphold~ object is inaccurate. but i 
 then saw that the sawtooth wave from the rpole~ object has no constant 
 amplitude even with the input frequency not changing. so it seems that 
 either rpole~ or change~ is not accurate.
 
 or the problem is that i sample in the middle of the rising and not at the 
 top ( as described earlier)
 
 attached the sinetosawtooth patch. set your sound card to 44100 or change 
 the 22050 in fexpr~ to half the sampling frequency.
 
 i would really appreciate if somebody could have a look at this,
 
 thanks, simon
 
 
 
 ___
 Pd-list@iem.at mailing list
 UNSUBSCRIBE and account-management - 
 http://lists.puredata.info/listinfo/pd-list
 
 
 


___
Pd-list@iem.at mailing list
UNSUBSCRIBE and account-management - 
http://lists.puredata.info/listinfo/pd-list


Re: [PD] pitch to voltage

2014-04-27 Thread Miller Puckette
Actually I don't know where the change~ object is from - I've nver seen t
before.  I would just use biquad~ 0 0 1 -1 0 (assuming that change~ simply
ubtracts the previous sample from teh current one as I guessed from the patch :)

M

On Sun, Apr 27, 2014 at 03:40:01PM +0200, Simon Iten wrote:
 ok tried to upsample the whole thing (after the osc~) and now change~ does 
 nothing anymore… it just spits out the same square wave i feed in…clues?
 
 
 On 27 Apr 2014, at 13:05, Simon Iten itensi...@gmail.com wrote:
 
  crosspost! sorry about the noise. thanks for the inputs i will try to to 
  this. not sure if i can. otherwise i will ask back if that’s ok!
  On 27 Apr 2014, at 13:03, Simon Iten itensi...@gmail.com wrote:
  
  so if i would measure at the peak of the sawtooth and would upsample 
  inside the pd patch, i would get higher resolution, right?
  
  any ideas how i can measure at the peak? (using the rpole output on both 
  samphold inputs does not work and delaying one of them is also not working)
  
  which 
  
  i would highly recommend you try this method with your gk-3 equipped 
  guitar (one for each string) since you only have to cover a two octave 
  range per string the error is tolerable. (you can add an offset to make it 
  fit)
  On 27 Apr 2014, at 12:56, Miller Puckette m...@ucsd.edu wrote:
  
  That is an excellent, witty way to measure pulse withs using
  only tilde obects - my hat's off to you.
  
  The methond only has limited accuracy since its measurement is in
  samples.   For instance, a 1/2 cycle of a 440-hz. tone at 44.1 kHz is
  only 50 samples, so there's only 2% accuracy.  That's about 1/3 of a
  half tone (30-ish cents) which would sound horribly out of tune.
  
  There's an alternative sine-to-sawtooth recipe described here:
  
  http://msp.ucsd.edu/Publications/icmc10.pdf
  
  This is the basis of my guitar processing patch, smeck, but should be more
  broadly useful.  But it has its own limitations: the sawtooth you get out
  is wiggly if the input sn't a pure sinusoid.
  
  There's also the possibility of simply pitch tracking with sigmund~.  Use
  a maximum frequency around 6000 and a maximum of 6 partals (default 50!)
  for best results.
  
  cheers
  M
  
  On Sun, Apr 27, 2014 at 11:27:33AM +0200, Simon Iten wrote:
  dear list,
  
  i have a strange problem with my “sinetosawtooth” patch.
  
  it is basically a version of the pitch to voltage conversion used in the 
  old gr300 guitar synths from roland.
  
  i cut out all the clutter to make it easier to look at and understand. 
  (cut out the adaptive filtering at the input since i use a sine wave for 
  this example and not a guitar string)
  
  here is how it works (or should):
  
  -an input signal gets amplified by a large factor and clipped. this 
  squares the input.
  
  -the square wave is converted to pulses. 
  
  -the pulses from the rising of the square wave are used to set and reset 
  an accumulating filter (rpole~)
  
  this results in a sawtooth wave that varies in amplitude depending on 
  the frequency of the input.
  
  -a sample and hold samples the peak of the sawtooth and holds it until 
  the next peak occurs. this, after a conversion gives us the input 
  frequency. yeah!
  
   in the example patch i used the falling edges of the square wave to 
  trigger the sample and hold. this samples the sawtooth amplitude after 
  half the rising. (this is also why i have  22050 in fexpr~ and not 
  44100) i could not figure out how to sample the peak of the sawtooth, so 
  suggestions here are very welcome.
  
  now to the problem:
  
  the extracted frequency does not exactly correspond to the input 
  frequency. it is pretty close at low frequencies but gets worse at 
  higher frequencies. the factor is not constant. at even higher 
  frequencies (around 5000 hertz) the reported frequency gets totally out 
  of control.
  
  i first thought this is because the samphold~ object is inaccurate. but 
  i then saw that the sawtooth wave from the rpole~ object has no constant 
  amplitude even with the input frequency not changing. so it seems that 
  either rpole~ or change~ is not accurate.
  
  or the problem is that i sample in the middle of the rising and not at 
  the top ( as described earlier)
  
  attached the sinetosawtooth patch. set your sound card to 44100 or 
  change the 22050 in fexpr~ to half the sampling frequency.
  
  i would really appreciate if somebody could have a look at this,
  
  thanks, simon
  
  
  
  ___
  Pd-list@iem.at mailing list
  UNSUBSCRIBE and account-management - 
  http://lists.puredata.info/listinfo/pd-list
  
  
  
 

___
Pd-list@iem.at mailing list
UNSUBSCRIBE and account-management - 
http://lists.puredata.info/listinfo/pd-list


Re: [PD] pitch to voltage

2014-04-27 Thread Simon Iten
sorry this one went off-list :-)


On 27 Apr 2014, at 19:05, simon itensi...@gmail.com wrote:

 sure,
 
 here is the version with biquad in a subpatch with a block opject to 
 upsample. probably i'm doing something wrong, i just copied from the block 
 help-patch.
 
 sinetosawtoothupsample.pd
 
 On Apr 27, 2014, at 5:48 PM, Miller Puckette wrote:
 
 Drat, I don't have any explanation for this...  can you send me the patch
 again?
 cheers
 M
 
 On Sun, Apr 27, 2014 at 05:44:22PM +0200, simon wrote:
 hmm, changing change to biquad does also not work. i mean it does as long 
 as i don't upsample in the subpatch. as soon as i change the block object i 
 get square instead of pulses...
 
 On Apr 27, 2014, at 3:48 PM, Miller Puckette wrote:
 
 Actually I don't know where the change~ object is from - I've nver seen t
 before.  I would just use biquad~ 0 0 1 -1 0 (assuming that change~ simply
 ubtracts the previous sample from teh current one as I guessed from the 
 patch :)
 
 M
 
 On Sun, Apr 27, 2014 at 03:40:01PM +0200, Simon Iten wrote:
 ok tried to upsample the whole thing (after the osc~) and now change~ 
 does nothing anymore… it just spits out the same square wave i feed 
 in…clues?
 
 
 On 27 Apr 2014, at 13:05, Simon Iten itensi...@gmail.com wrote:
 
 crosspost! sorry about the noise. thanks for the inputs i will try to to 
 this. not sure if i can. otherwise i will ask back if that’s ok!
 On 27 Apr 2014, at 13:03, Simon Iten itensi...@gmail.com wrote:
 
 so if i would measure at the peak of the sawtooth and would upsample 
 inside the pd patch, i would get higher resolution, right?
 
 any ideas how i can measure at the peak? (using the rpole output on 
 both samphold inputs does not work and delaying one of them is also not 
 working)
 
 which 
 
 i would highly recommend you try this method with your gk-3 equipped 
 guitar (one for each string) since you only have to cover a two octave 
 range per string the error is tolerable. (you can add an offset to make 
 it fit)
 On 27 Apr 2014, at 12:56, Miller Puckette m...@ucsd.edu wrote:
 
 That is an excellent, witty way to measure pulse withs using
 only tilde obects - my hat's off to you.
 
 The methond only has limited accuracy since its measurement is in
 samples.   For instance, a 1/2 cycle of a 440-hz. tone at 44.1 kHz is
 only 50 samples, so there's only 2% accuracy.  That's about 1/3 of a
 half tone (30-ish cents) which would sound horribly out of tune.
 
 There's an alternative sine-to-sawtooth recipe described here:
 
 http://msp.ucsd.edu/Publications/icmc10.pdf
 
 This is the basis of my guitar processing patch, smeck, but should be 
 more
 broadly useful.  But it has its own limitations: the sawtooth you get 
 out
 is wiggly if the input sn't a pure sinusoid.
 
 There's also the possibility of simply pitch tracking with sigmund~.  
 Use
 a maximum frequency around 6000 and a maximum of 6 partals (default 
 50!)
 for best results.
 
 cheers
 M
 
 On Sun, Apr 27, 2014 at 11:27:33AM +0200, Simon Iten wrote:
 dear list,
 
 i have a strange problem with my “sinetosawtooth” patch.
 
 it is basically a version of the pitch to voltage conversion used in 
 the old gr300 guitar synths from roland.
 
 i cut out all the clutter to make it easier to look at and 
 understand. (cut out the adaptive filtering at the input since i use 
 a sine wave for this example and not a guitar string)
 
 here is how it works (or should):
 
 -an input signal gets amplified by a large factor and clipped. this 
 squares the input.
 
 -the square wave is converted to pulses. 
 
 -the pulses from the rising of the square wave are used to set and 
 reset an accumulating filter (rpole~)
 
 this results in a sawtooth wave that varies in amplitude depending on 
 the frequency of the input.
 
 -a sample and hold samples the peak of the sawtooth and holds it 
 until the next peak occurs. this, after a conversion gives us the 
 input frequency. yeah!
 
   in the example patch i used the falling edges of the square 
 wave to trigger the sample and hold. this samples the sawtooth 
 amplitude after half the rising. (this is also why i have  22050 in 
 fexpr~ and not 44100) i could not figure out how to sample the peak 
 of the sawtooth, so suggestions here are very welcome.
 
 now to the problem:
 
 the extracted frequency does not exactly correspond to the input 
 frequency. it is pretty close at low frequencies but gets worse at 
 higher frequencies. the factor is not constant. at even higher 
 frequencies (around 5000 hertz) the reported frequency gets totally 
 out of control.
 
 i first thought this is because the samphold~ object is inaccurate. 
 but i then saw that the sawtooth wave from the rpole~ object has no 
 constant amplitude even with the input frequency not changing. so it 
 seems that either rpole~ or change~ is not accurate.
 
 or the problem is that i sample in the middle of the rising and not 
 at the top ( as described earlier)
 
 attached the sinetosawtooth