< Back to IRCAM Forum

Optimizing pipo params for upright bass

Hi Mubu folks,

This is kind of a broader DSP question, but I was wondering if anyone with an intuitive knowledge of frequency analysis could recommend pipo~ parameters for detecting upright bass.

I’m using pipo.iracmdescriptors~ for two use cases in my patch:
MFCC, SpectralCentroid, PerceptualSpectralVariation
to train a GMM of different timbres/articulations (bowing, plucking, harmonics, tapping)

and also taking the above plus Chroma and Fundamental from ircamdescriptors for KNN matching from a corpus.

My questions are

  1. can anyone can recommend parameters for these analysis modes to best capture the range of an upright bass (through a DI)? Particularly SpectralCentroid, PerceptualSpectralVariation parameters, is there any heuristic for how to optimize this analysis?

2 . are there any tips for making the GMM less brittle? Number of MFCC bands? weighting of certain bands?

Currently the Fundamental frequency is basically always wrong, or just doesn’t register a value (even if I try different min frequencies between 40 - 240Hz)

the GMM works pretty well, but it is extremely sensitive to the exact signal chain (upright bass pickup > preamp pedal > audio interface), so if I have mildly different EQ or gain settings the detection is way off.

I suspect the answer is mostly a lot of trial and error but I would appreciate any guidance.