noteout – pitch varies from machine to machine
Created a little tuner application that will play a reference pitch, then wait for the user audio to match the pitch and graph it.
The user audio input is fine… But, it seems NOTEOUT does not produce the same pitch frequencies from machine to machine.
Discovered this today when moving from my dying XP home system to a new XP Pro machine.
Appears the XP home system plays about 5-10 cents sharp, while the XP Pro computer plays notes 20-30 cents flat – a difference of nearly 50 cents.
Any ideas on what’s going on?
How to detect and fix on the fly? (eg, play a note, capture the first frequency, subtract the difference, then add that difference to the outgoing frequency sort of thing)
Thank you for your input.
Perhaps if you could post your patch, or at least the relevant portion of it, it would be easier to give some feedback.
It’s pretty simple and here’s a stripped down version:
----------begin_max5_patcher---------- 608.3ocyVlsiaBCEF9ZFo4c.4qSi7BfI8t9bLppxAbx3FvDgcTyLi57rWuDV xRSfHpRugiywa+9ii+Ce77SAfkU64JP3WCeILH3CSl.WNalflDAfR19rBlxM PPIWoXq4fYG5Ty2qccnzrZcaZ4tRgrfqcSB2jcUkTqDuysIQ34vditZmtY3n lzaY5rWEx0+nlmo8xDmfLSKLIw9jDYehRmCC+dyb7qi9ssb+D.ft9raujU55 A7sZAqnUuhbWxpk+7KHHvk72O+jMZByFLcj7eYVhygy1Zg7u.Gz3fC7JvgPW XABlj1QGLrOcFFARue.rpnxn2I4jhu8IEQcUCwvyOomUGXTFy7JHDrjIWO5h B5zWSrRjmWv+zn6nzPjIDRlDtEeMtg8b6P.QFM3LwBgx861NbIF80Lbx8yT9 6r7rOuAtFQ4TjiGTGNhhad1cj1VyUboloEUxi1iynkRrVZOvss5VjiN7TvkV 69NcDeU8Bzoh5to1FUgHmW2tyutg+VVUQUseGgyWDECWjNy1BQn3XaqHHMMh XJV5yiKauObfib92daJji812.WoHzYe5Ccip1TP5FPL7RLNY5uyJqzbi1tbg GY5bxQo9qoNK7Xz8ZjS9GXaUx1vsXvnNZHBBgSBLtZwB0UrP8VVzwXY4aLZr s3Tr4WAiQm7ruWxIXaGm.SU0t5rFAc36JL2m5zRNWoExVKkW54LzeXuZ9aBt 7nBlRQ91JyUgCR4ZNBCWcICRcvGh3nCQaoOFtgsfCeKw8fdohoCqlK4gHOy8 rAnNB8wINzfDG5+zaqmx26Pb1DlveHCCgXM -----------end_max5_patcher-----------
If I run this on my XP home machine and click C, I get numbers very close to 60.0 (60.0-60.1 roughly).
When the same is run on XP Pro, the numbers are 59.6-59.7
.30-.40 difference between the two computers.
I get the exact same readouts from fiddle~ on both machines… ie, 1 machine plays, both print values…
And, of course there’s a clear audible difference.
Is there a reason that you want to rely on the operating system’s built-in synthesizer?
Why not just use something like cycle~ instead?
Thank you for your reply.
Suppose this question/problem more illustrates my lack of understanding of how all the pieces fit together.
The only reason I can think of to use the system synth, is to have a sound that is more piano like. Cycle~ would be a perfect technical solution, though the tone might not work well in my app.
Perhaps there’s a way I can "pianofy" cycle~?
[noteout] is obviously dependent on the MIDI implementation provided by the synth attached to your MIDI channel. And your basic OS-supported MIDI synths are not always high quality. To put it mildly.
If you want to use a piano sample, read it into a buffer~ and play it from there. But, if you’re a beginner, there will be a number of things to trip up on here, starting with finding decent piano samples that are only 512 samples long, and handling transposition.
Work your way through the tutorials and read the documentation and it’s doable, paying particular attention to cycle~ and buffer~. Just guessing how things maybe might work is not the steps to Parnassus.
BTW, even with cycle~ I’ve found very small hardware-dependent discrepancies. I once had a workshop where I went through a basic test tone patch at 440Hz, and we had wonderful beats (< 1Hz) between the PCs and Macs in the room.