Pitch detection and tracking module

Description of feature (short and simple):

My whish is a pitch detection and tracking module which is not in the ssp yet. This would fit very good to the ENV-follower!
This would allow me as a tromboneplayer to controll some parameters with my playing. In fact this feature is a core argument for me to buy an ssp or not. So i’m a little trapped, because the feature is actually not implemented. Are there other poeple looking for this possibility? If we are many Bert perhaps will implement it!?

4 Likes

welcome to the forum! what you are asking for is pretty complicated, as pitch-analyzing and tracking acoustic instruments is a complicated research problem, and often products focus on just doing that and nothing else (e.g. guitar synthesizers). of course very simple pitch detection is doable but what you’re asking for is also tracking, not just static pitch detection. so it’s an interesting / good idea for a module, but not sure when I’d be able to look into it as there are other requests from other users as well in the forum for other features / modules which I have to give priority.

2 Likes

This feature will be a game changer for live performance tasks, tracking different instruments & re-synthesizing in a modular world is something that is still not tackled by any other developers. The Percussa seems like the only candidate that could handle the task.

Researching this challenge I’ve stumbled on this:

Seems like is having already an account via github and some documentation is available, too bad that I do not know programming/coding :frowning_face:

Maybe somebody around will find this helpful or at least a place to start.

It’s my first contact with the Percussa today and this feature was on the interest list, 8hours on the forum and still going :slight_smile: Tomorrow is patching day! Thanks!

2 Likes

An user via the Cycfi Discord channel suggest that this is possible, maybe somebody like Technobear or Bert could find some time to take a look at the code… now I’m really pissed that I do not know coding/programming!!! :angry:

I tried cycfi for another project (on Bela) and had very disappointing results… not tracking very well, and taking quite a while (musically speaking) to lock on to the pitch - and that was testing with pure sine waves! ( * )

I also tried a couple of other open source projects, and also had disappointing results.

(I cannot remember if it was cycfi, but one of them was also very unstable and would crash)

this should always be remembered, just because there are projects out there that seem to offer what we want, sometimes the ‘details’ mean they don’t really live up to our expectations
also, many of these projects are focused on desktop level platforms, so may be too cpu intensive even for the percussa.

of course, I keep an eye on these projects, and re-test occasionally (though that is effort itself!) , I also look for other projects.

I think generally, accurate pitch detection (and tracking even more so ) is pretty hard and cpu intensive. which is why many technologies for pitch shifting (like granular) avoid detection, and just shift pitch more directly.


( * ) I did have a chat with the developer at the time (last year?) , and iirc, the basic outcome was these algo are defined for quite particular use-cases, and outside of these you will get ‘mixed’ results :wink:

btw: thanks for pointing this out @Tumba

I do keep an eye out for interesting projects and technologies, and consider how I might apply these to the various projects I work on (like the SSP) … and whilst this one I knew about (and had tried), there are lots that im sure I miss, so always useful.

just as I say, if you’re not a developer just important to manage expectations a bit,
you really need to try and test a technology before it can be determined if its applicable, let alone a ‘game changer’ :wink:

I guess this is another developer… as a developer, we are an optimistic bunch, ‘possible’ generally means - it should compile and run, but we all know that is only step 1, there is a lot past that to determine if its actually useful and usable, esp. on non-desktop systems.


EDIT:

ouch just noticed this…

this means we could not use this project for pitch detection - this was not the case when I was testing it last year :frowning:

I guess, you can fork it from March 21… but it means any bug fixes/improvements would not available, so not something you would want to do on an ‘active’ project

Hello @thetechnobear,
Thanks for the time in answering and pointing out the details regarding this feature.

There is only one module that does this task (how good or bad I do not know) , on my buy list in the next weeks:

https://www.analoguesystems.co.uk/index.php/as-modules/rs35n

As I’ve mentioned is my first interaction with the Ssp and this forum, just yesterday I put my hands on the module and all the infos available on the forum are helpful, no mention about your involvement in development of modules , for sure I owe you a ko-fi or more in the next days.

The “ game changer “ was maybe to much :hugs:, but still there aren’t any other options available (that I know of) at least in the digital domain desktop or app.

This feature can open up a different approach of interaction between acoustic & electronic environments, live tracking-resyntesizing are as you say CPU intensive, I have put my hands on some Kyma patches but that’s something else and maybe different approaches end to different results, for better or worse.

Anyway , thank you for your time and ko-fi is on me!

1 Like

ah, thats natural to be optimistic… im sure I was when i stumbled on qlib (which is actually a nice dsp library)

for completeness, I also found dywapitchtrack

but, didnt really perform well enough for what I was trying.

there are also some other implementations that can be found for pure data that could be adapted
e.g. https://www.katjaas.nl/helmholtz/helmholtz.html

but these looked more processor intensive.


at some point, I should give it another go - perhaps in the context of an SSP module, even with limitations it might prove useful in some musical contexts.

as you say, hard to know how good/bad something like the rs35n,
what ive noticed with tuners is, they tend to work better on some signal than others e.g. Ive tried using tuners on signals from synths (saws and such like) and the results are good, yet when I tried on Mutable Rings and Elements, the results were extremely poor…
my assumption is where its poor, is because there are so many harmonics that are shifting, and it just has a hard time ‘locking on’…

but I remember reading, some other algos can work well on these types of signals, but perform badly on others
so it feels like, there is not ‘one’ algo that does them all well, rather they need to be adapter to different material.

I will research this topic forward and if there is something that I might find useful I will drop it on this thread.

If/when I get my hands on the Rs-35 I will come back with some insights regarding tracking different sources- guitars / bass / synths / piano / voice…

1 Like

i hear good things about these too : https://sonicsmith.com/products/convertor-e1/

if you just need audio to audio consider the Rossum Panharmonium : http://www.rossum-electro.com/products/panharmonium/

1 Like

looks interesting, still seems to be pre-order

their faq is interesting, specifically since it talks about the issues using PLL which is a common approach.

of course, we will need more reports to show the FLL is really better than PLL, and if it has any disadvantages.

they say, that the patent is due in June (so thats past, so must be close) and which time they wil be able to talk more about the FLL circuit which’ll be interesting.

1 Like