Piano Tuning Patch assistance please

    May 11 2011 | 5:32 pm
    I'm having some trouble creating a Piano tuner in Max MSP using the "ftom" and "ftom~" objects. the problem is the values these objects are returning (which should be a midi value) keep on changing as if it is including harmonics or something. does anyone know how to get past this problem?

    • May 11 2011 | 6:43 pm
      yes thats right, it simply takes a value in Herz and translates this to midi note. To my understanding these objects are not thought for fundamental or pitch detection. I think there should be at least two on maxobjects.com good luck!
    • May 11 2011 | 6:52 pm
      Yes, [pitch~] would be a good place to start.
    • May 11 2011 | 9:35 pm
      If you get this done, please post it. It would be very interesting.
      Do you think you can make it accurate. Tuning pianos isn't exactly easy.
    • Sep 19 2011 | 8:05 pm
      It would be interresting to hear how it worked out.
    • Sep 19 2011 | 9:35 pm
      Piano tuning is a very complicated challenge. It deals with psychoacoustics besides "well tempered scaling" ;-)! I mean that your ear connected to your brain doesn't perceives the objective pitch but reelaborates it in function of the context (chords,upper or lower register,...). Furthermore what would be your definition of a pitch ? As notes played on a piano are never strictly harmonic the 'basic' definition of pitch cannot be relyied on ...
      Good work anyway ...
    • Sep 20 2011 | 2:56 pm
      My first thought was, "Wow. This *must* be some kind of project assignment. No one who really tunes pianos seriously would be likely to consider some kind of automation (a la guitar tuners) for doing the work.... :-)
    • Sep 20 2011 | 2:57 pm
      Now, a Max patch that you could use to do the temperament bit? That would um... be interesting!
    • Nov 08 2011 | 2:35 pm
      All of the FFT-based frequency estimators [fiddle~], [pitch~], [sigmund~] won't be accurate enough for tuning (a piano) - especially in the low register.
      I'd rather use a time-domain algorithm. For example [gbr.yin] from the FTM lib or [mbc.pitch~] from Mark Cartwright's LPC Toolkit - both use the Yin algorithm based on autocorrelation.
      Or maybe max6's new wavelet pitch detector - haven't tried that one yet...
    • Nov 08 2011 | 2:44 pm
      An interesting paper about piano tuning :
    • Nov 08 2011 | 3:34 pm
      fzero~ has fine resolution in the low frequencies, but it might not be great at piano. This would be especially true if some of the strings are detuned.
      The Yin algorithm is probably the best bet.
    • Nov 08 2011 | 4:09 pm
      Anyone care to take a bet on how long it will take for the bot formerly known as ndrewoods to spam this thread ;) ? Cheers Roger
    • Nov 08 2011 | 7:51 pm
      110 minutes.