#173 frequency band measure inaccurate?


The problem arises when measuring the width of a frequency band, e.g. using the Measure tool on a spectrogram layer to box a vibrato cycle. The readout in semitones and cents is much smaller for higher frequencies than for lower. A real example, using a sound file of a singer: in the spectrogram layer use the measure tool to draw boxes around one vibrato cycle for each harmonic. For a fundamental at ca. 500Hz the width of the first harmonic's box is 345 cents, that of the 6th harmonic 218. (And increasing the vertical zoom increases the value displayed when you mouse over the box.) Naturally, drawing boxes around a spectrogram display can't be minutely accurate, but this seems a very large discrepancy. This is such a useful tool for musicologists discussing vibrato styles that it's a serious problem if it's not roughly accurate.


  • Chris Cannam

    Chris Cannam - 2013-03-05
    • priority: 5 --> 9
    • status: open --> open-accepted
  • Chris Cannam

    Chris Cannam - 2013-03-05

    I can reproduce this. I've checked the sums and I believe they are correct; I think this is a consequence of what it means to draw a box at a limited (pixel) resolution on a limited (frequency bin) resolution spectrogram and measure it.

    The measure tool is a graphical tool rather than an analytical one -- it calculates the frequency that each pixel represents on the screen as it currently appears, and takes the difference, rather than fixing the box into the "frequency space" when drawn.

    This is why the results vary a small amount with zoom level -- when you change the zoom level, the mapping from pixel to frequency varies because the available zoom levels are not simply a set of power-of-two magnifications. This variation is intrinsic to the way the tool works -- it doesn't know about the "meaning" of the audio, only the graphical representation found in the spectrogram plot. But variation by zoom should always be small, limited to the frequency-mapped "size" of one pixel. Variation in frequency of harmonics is a trickier question.

    I'm going to go carefully through an example of the sort you describe and annotate how the numbers are calculated, so that we can find out how much concern to attach to this. Watch this space.

  • Chris Cannam

    Chris Cannam - 2013-03-05

    (By the way, if you have an example that looks particularly serious it might be worth attaching a screenshot or two of it.)

  • danlw

    danlw - 2013-03-06

    Thanks, Chris. This detailed advice at https://code.soundsoftware.ac.uk/projects/sonic-visualiser/wiki/MeasureTool is really helpful and I'm now getting much more similar results at different harmonics. What we really need, though, is a new tool that derives the data from the audio. That would be useful for many devoted SV fans in the musicological community. :)


Get latest updates about Open Source Projects, Conferences and News.

Sign up for the SourceForge newsletter:

No, thanks