Hah, so I accidentally clicked on the Publish button before I finished writing the article Fast and Efficient Pitch Detection: Bliss! And so a notification was immediately sent to all of you subscribed to my blog. Then, after I reset the status to Draft, clicking on the link in that notification gives you that “This is somewhat embarrassing” message. Ooops! Pardon me. Anyway, I decided to add this post in order to generate another notification that the article is now available for viewing.
In my previous post, I introduced my invention, Bitstream Autocorrelation: an accurate, extremely fast and efficient, time-domain pitch detection scheme. I argued that it can be as accurate as standard Autocorrelation based pitch detection schemes, especially, or at least, for very specific source inputs, such as the guitar.
As far as I can tell, this is a new invention and has not been done like this before. And so, the past few weeks, I investigated deeper and studied its performance and characteristics on real world guitar samples. For analysis, I recorded single-note samples for all strings (6 strings for now) at various fret positions. Additionally, I also recorded various guitar audio samples incorporating techniques such as hammer-ons and pull-offs and fast right hand arpeggios. I am impressed!
Here are my findings and some direction changes and updates along the way…
So, since last year, I’ve been mulling over a unique, and extremely fast(!) Autocorrelation scheme for monophonic pitch detection. Last weekend, I finally got myself to write the proof of concept. It’s not like any autocorrelation scheme I’ve seen before. I am still wondering why no one has thought about doing it this way. As far as I can tell, this is my invention, but please tell me if there’s something I am missing and if I’m not the first to actually do it this way. I dubbed the technique Bitstream Autocorrelation.
Unlike standard Autocorrelation, my scheme works on single bit binary data streams instead of floating point (or fixed point) real numbers. Compared to standard Autocorrelation, Bitstream Autocorrelation is wicked fast. As I’ve been working on multiple channels of audio on small Microcontrollers, I’ve consistently shied away from Autocorrelation schemes for pitch detection (see my original article: Fast and Efficient Pitch Detection). Popular time-domain Autocorrelation (ACF) based pitch detection, including variants such as AMDF (Average Magnitude Difference Function), ASDF (Average Squared Difference Function), YIN, and MPM, are quite expensive in terms of CPU cycles required (ACF is basically an N² operation for N samples).
Almost immediately after I announced our Roadmap for 2018, the XRs and the current Nu modules went out of stock as people hurriedly grabbed what’s remaining in our inventory. I am very sorry that I had to turn down orders after the stocks were depleted.
Dan Rhodes sent me these nice pictures of his electric with Cycfi XR dual pickups, Cycfi Resonant Filter, Warmoth body and neck with a Decoboom pick guard, Fender locking tuners, roller bearing nut and Wilkinson tremolo.
“Looks and sounds amazing Joel! I spent some time with it last night and the tonal range of these pickups is amazing. The openness with the tone and Q maxed out is a sound I’ve never had before.”
Thank you very much for such nice appreciation. I am missing the XRs already!
But watch out. We are still actively pursuing the Modula, a new breed of pickups and the next evolutionary step for the XR. It didn’t die, it simply evolved! 🙂
Simplify! I think that will be my mantra for 2018.
Looking back, the current product line that we have including the XR Pickups and all its support electronics, the Nu pickups and all its support electronics including the Nexus, and in addition to all projects, planned and in the pipeline, including Infinity −hardware and software, is just too ambitious and unmanageable given the resources we have. I want to achieve so much, but there is simply no time to do it all in a reasonable amount of time. Those of you who know me know that I am also a full-time C++ consultant and Cycfi Research is a much loved baby that blossomed out of pure passion (or is that obsession?) and love for the guitar, electronics, and music in general, that goes back decades since the 80s.
When we started, it was just the Neo pickups, nothing more. It started to get crazy when we developed and eventually released the XR pickups. When the XR happened, we started losing focus and precious time for doing research and development was slowly consumed by manufacturing and support. We’re getting ahead of ourselves. We have to walk before we can run.
So, in 2018, something has to give way. We will have to focus on only one product: The Nu Capsule. Less is more. Focus on one item, do it really well. I know there’s an untapped market for the Nu capsules, a general purpose, miniature magnetic pickup. And it goes beyond the guitar. A number of Nu users are actually non-guitar players.
So many things to do. So little time! I think Karl Steinberg was right in remarking that I have too many projects happening all at the same time. Oh well, these Modula prototypes are good to go. We worked so hard for this. These are custom made pickups. We do not have injection molded enclosures yet, so these are hand crafted, painted and buffed to perfection. This is already the third version, but it was all worth it! The next, and the most stressful step: Production!
This D string was driving my pitch detector nuts. It’s jumping from fundamental to octave and back all over the place. Can’t make up its mind! The effect is like a wacko version of Satch with a whammy pedal gone haywire.
What the hell am I talking about? Last month, I wrote about a fast and efficient software multichannel pitch detection scheme using dual peak-detectors. I needed it to be as efficient as possible, so I can run multiple detectors simultaneously using a small 32 bit microcontroller (MCU). Most of the time, it works really well, except in some cases, like that troublesome D string.
I find it amusing when people talk about the “sound” of the magnet in pickups :-). The magnet has no sound! If you don’t believe me, perhaps you might reconsider if it’s coming from Bill Lawrence. Here’s what he has to say on the matter:
When I read that ceramic magnets sound harsh and alnico magnets sound sweet, I ask myself, ” Who the hell preaches such nonsense?” There are harsh-sounding pickups with alnico magnets and sweet-sounding pickups with ceramic magnets and vice-versa! A magnet by itself has no sound, and as a part of a pickup, the magnet is simply the source to provide the magnetic field for the strings. The important factor is the design of a magnetic circuit which establishes what magnet to use.
It does not really matter which magnet you use as long as the magnetic circuit is properly designed within sensible parameters. One design consideration is the total magnetic pull the magnets exert on the strings. Too strong, and you’ll get “stratitis” (No, it’s not some kind of ailment amongst guitar players ;-). Another important factor is magnetic flux variance versus distance, following the inverse square law. Simply put, magnetic pull decreases as the square of the distance from the magnet. Hence, the choice of magnet may influence the string displacement as it vibrates over the magnetic field.
A two-operator FM synth offers nice, easy to use, harmonic control over the driven waveform.