An apology. I am an advocate of Open Source. But after having shared open-source projects for over 20 years now, starting with my contributions to the Boost libraries, it pains me to say that I am closing some source code for pragmatic concerns. The source code of technologies that are in very active research and development will be closed — that would be pitch detection and onset detection. If you are using the pitch detection source code now, I suggest forking the latest version with the current MIT license. I will close the pitch detection source code by mid-April.
I previously posted an introduction to onset detection and offered to present the code if there’s interest. And of course, there’s interest. I received several messages from those who want to know more. Real-time onset detection is difficult, to say the least, and no wonder, is still an active research area. And so, I’m sorry I am no longer able to freely share the code.
The first pragmatic reason is that although the underlying technology is general purpose (e.g. Bitstream Autocorrelation), the library code (and reference implementation) is not. My code is heavily tuned for a very specific purpose: the multichannel guitar, and I no longer have time to provide support for other use-cases. The second pragmatic reason is that I am increasingly getting more consulting projects, and it only makes sense to leverage these technologies for sustainability. The bottom line is that if you want to use these technologies, I am very open to licensing and consultation. This arrangement is the only way for me to be able to sustain this passion for research and development.
That does not mean I will be shutting down completely on open-source. I am still an advocate of open source, and I will still continue working on current open-source projects such as the Elements C++ GUI library and indeed the Q DSP C++ library (minus pitch detection). I’ll just have to cut down a bit on what I share publicly.
Wow! you contributed to Boost!?
Anyway, I certainly appreciate your “elements” GUI library.
I appreciate your articles here.
I respect your open-source contributions.
I can also understand why you would put your specialized DSP code to be private, as you basically are adapting/using it for your specific product, and your knowledge and interaction (time/money) is required to apply it to the application (multichannel guitar)
and given how the audio dev industry already is largely closed-source, it is comprehensible.