Skip to main content

Topic: Peakmeter Spectrum component (Read 153876 times) previous topic - next topic

0 Members and 1 Guest are viewing this topic.
  • Jose Hidalgo
  • [*][*][*][*]
  • Banned
Peakmeter Spectrum component
Reply #25

Hey, it could even be... automatic ?  The component would choose itself the best calculation method according to the number of bands... 
The idea is nice  , but there are additional dependencies like the fft size for example. Furthermore the window function causes additional cpu usage. So I think this parameter must be adjusted manually.

Well, maybe manual, but with an optional "automatic" button that would handle everything if the user decides to and has enough CPU power ? 

  • foo_pm
  • [*][*][*]
Peakmeter Spectrum component
Reply #26
I'd like to be able to choose at least one of these window functions: Nuttall, Blackman-Harris or Blackman-Nuttall. It would also be nice to be able to set the displayed dynamic range. Limited to 96 dB there would be no to very little visible leakage with the mentioned functions. Then we would have a function for every important type:
  • Type A: very narrow but high leakage (Hann)
  • Type B: less narrow with medium leakage (Blackman)
  • Type C: even less narrow but little leakage (Nuttall, Blackman-Harris, Blackman-Nuttal)
OK, will be implemented soon in the next release.
Edit: What puzzles me a bit is that the Blackman function in your plugin causes the leakage to grow compared to no window function applied. Is that a bug? I tested three frequencies: 100, 1000 and 10000 Hz. While the Hann window decreased the leakage for 1000 and 10000 Hz and increased it a bit for 100 Hz, the Blackman window increased the leakage for every three frequencies.
Thank's for testing! Yes you are right. You can get the fix (0.1.0.1) here: http://www.hydrogenaudio.org/forums/index....st&p=546448




Hey, it could even be... automatic ?  The component would choose itself the best calculation method according to the number of bands... 
The idea is nice  , but there are additional dependencies like the fft size for example. Furthermore the window function causes additional cpu usage. So I think this parameter must be adjusted manually.

Well, maybe manual, but with an optional "automatic" button that would handle everything if the user decides to and has enough CPU power ? 
OK.... i will give it some more thoughts.

  • bertox
  • [*][*]
  • Banned
Peakmeter Spectrum component
Reply #27
Quote
QUOTE(Hancoque @ Feb 19 2008, 18:12) *

Edit: What puzzles me a bit is that the Blackman function in your plugin causes the leakage to grow compared to no window function applied. Is that a bug? I tested three frequencies: 100, 1000 and 10000 Hz. While the Hann window decreased the leakage for 1000 and 10000 Hz and increased it a bit for 100 Hz, the Blackman window increased the leakage for every three frequencies.


What is "leakage"??

  • Bob Brines
  • [*][*]
Peakmeter Spectrum component
Reply #28
The spectrum analyzer is great. I am not complaining. It's just that I have a somewhat eccentric, "Monk'ish" outlook on life.

I have the bar widths reduces and the spaces eliminated so that the panel is fairly narrow. This means that I have to reduce the number of labels on the bars significantly. My "complaint/request/bazaar desire" is with the intervals chosen. I am sure that you had some reason for choosing them, but.... I would like to use the octave points for the labels: 32, 64, 128, etc. (OK, that's A=430, not A=440, but it looks soooo nice) Also, while there is a lot of noise at the very bottom, hall infrasonics and mathmatical artifacts, a lot of organ music does use the bottom octave, so a marker at 16 would be nice.

Any chance?

Bob

  • foo_pm
  • [*][*][*]
Peakmeter Spectrum component
Reply #29
What is "leakage"??
You can find a good explanation here: http://zone.ni.com/devzone/cda/tut/p/id/4844#toc2. The meaningful main statement: "When the number of periods in the acquisition is not an integer, the endpoints are discontinuous. The result is the high side lobes seen in the un-windowed spectrum plot. This phenomena is called Spectral Leakage." Hope that helps.

  • foo_pm
  • [*][*][*]
Peakmeter Spectrum component
Reply #30
The spectrum analyzer is great. I am not complaining. It's just that I have a somewhat eccentric, "Monk'ish" outlook on life.

I have the bar widths reduces and the spaces eliminated so that the panel is fairly narrow. This means that I have to reduce the number of labels on the bars significantly. My "complaint/request/bazaar desire" is with the intervals chosen. I am sure that you had some reason for choosing them, but.... I would like to use the octave points for the labels: 32, 64, 128, etc. (OK, that's A=430, not A=440, but it looks soooo nice) Also, while there is a lot of noise at the very bottom, hall infrasonics and mathmatical artifacts, a lot of organ music does use the bottom octave, so a marker at 16 would be nice.
Thank you!  I don't know if this makes sense cause of the low resolution in this frequency range. But i understand you and will keep this in mind.

  • livedead13
  • [*]
Peakmeter Spectrum component
Reply #31
admittedly i don't understand a lot of what is being said in here, so forgive me if this has been brought up, but this component is not working smoothly for me. all of the bars seem to be getting stuck quite often. anyone else having this issue?

  • bertox
  • [*][*]
  • Banned
Peakmeter Spectrum component
Reply #32
Quote
You can find a good explanation here: http://zone.ni.com/devzone/cda/tut/p/id/4844#toc2. The meaningful main statement: "When the number of periods in the acquisition is not an integer, the endpoints are discontinuous. The result is the high side lobes seen in the un-windowed spectrum plot. This phenomena is called Spectral Leakage." Hope that helps.


Ok, thanks...., but  i can't understand all this 'language'...

Leakage means 'artifacts' maybe? How you discover these?

Thanks.

  • Somebody
  • [*][*][*]
Peakmeter Spectrum component
Reply #33
Thanks for this great plugin!

  • Scrith
  • [*][*]
Peakmeter Spectrum component
Reply #34
Great stuff!  Some comments/requests:

1.  CPU usage seems quite high when Foobar2000 is visible (and goes up depending on the size of the bars).  I'm not sure you can do anything about this, but it is <1% when Foobar2000 is hidden, and >8% when Foobar2000 is visible (and I have an overclocked Penryn...).

2.  I'd like to experiment with having peak fall down values of less than 1 second, but I can't enter something like 0.5 for the value (it doesn't like the "." character).

3.  I know this might be a 2.0 feature, but it would be nice to separate the channels (e.g. show L peakmeter, L spectrum, R peakmeter, R spectrum).

4.  It would be nice to have a master "show labels" (and show markers?) control so I don't have to turn them all off individually (and then try to remember which ones were on in case I change my mind and want to show them again).

5.  Another 2.0 feature...animated falling peak values (rather than them snapping to the current level, with another spectrum analyzer I've tried it was interesting to see them gradually fall down to current levels at some tunable rate).

  • foo_pm
  • [*][*][*]
Peakmeter Spectrum component
Reply #35
admittedly i don't understand a lot of what is being said in here, so forgive me if this has been brought up, but this component is not working smoothly for me. all of the bars seem to be getting stuck quite often. anyone else having this issue?
I think this was caused by other components, by Album Art Panel on track change for example. Do you notice the same behaviour with the standard spectrum analyser?

  • foo_pm
  • [*][*][*]
Peakmeter Spectrum component
Reply #36
Ok, thanks...., but  i can't understand all this 'language'...

Leakage means 'artifacts' maybe? How you discover these?

Thanks.
I'll try to explain it with a picture:
[a href="http://img256.imageshack.us/my.php?image=windowfunctionleakagevd0.jpg" target="_blank"]

  • foo_pm
  • [*][*][*]
Peakmeter Spectrum component
Reply #37
Great stuff!
 

1.  CPU usage seems quite high when Foobar2000 is visible (and goes up depending on the size of the bars).  I'm not sure you can do anything about this, but it is <1% when Foobar2000 is hidden, and >8% when Foobar2000 is visible (and I have an overclocked Penryn...).
I can't reproduce that! The cpu usage is less than 1% on my 2,6 GHz "poor people" dual core. On a 1,7 GHz Celeron (single core)  the cpu usage is less than 2-3%. Please disable the equalizer and other visual components and dsp's one by one to determine the causing component.

2.  I'd like to experiment with having peak fall down values of less than 1 second, but I can't enter something like 0.5 for the value (it doesn't like the "." character).
Yes, only integer values can be used. I will change this.

3.  I know this might be a 2.0 feature, but it would be nice to separate the channels (e.g. show L peakmeter, L spectrum, R peakmeter, R spectrum).
I remember your post. But until now no decision has been made.

4.  It would be nice to have a master "show labels" (and show markers?) control so I don't have to turn them all off individually (and then try to remember which ones were on in case I change my mind and want to show them again).
Nice idea! It' on the todo list now!

5.  Another 2.0 feature...animated falling peak values (rather than them snapping to the current level, with another spectrum analyzer I've tried it was interesting to see them gradually fall down to current levels at some tunable rate).
That's already on the list. 

  • CJ Flash
  • [*]
Peakmeter Spectrum component
Reply #38
Hi, foo_pm! Thank you for another great visualization plugin!

And now just one feature request to your to-do list.  It's a... separated 'orientation' setting for each of peakmeter and spectrum analyzer.
The past  was yesterday...

  • livedead13
  • [*]
Peakmeter Spectrum component
Reply #39

admittedly i don't understand a lot of what is being said in here, so forgive me if this has been brought up, but this component is not working smoothly for me. all of the bars seem to be getting stuck quite often. anyone else having this issue?
I think this was caused by other components, by Album Art Panel on track change for example. Do you notice the same behaviour with the standard spectrum analyser?

i don't use the default interface much, but i switched over to it and had a look at the standard spectrum analyzer, and it is indeed very choppy as well. i cut out the album art element, but it didn't help.

in columns ui, i took out the album art panel, and that helped tremendously. well, so far at least.

i'll report back later.

  • DrLlama
  • [*]
Peakmeter Spectrum component
Reply #40
Looks much better than the default one, but I have one issue with it, I can not seem to be able to remove the black border at the top and bottom.

I want it to fill the entire panel I am running it in.



Hopefully there is a way around it or it can be fixed.

Thanks for you excellent work anyway

Neil
  • Last Edit: 23 February, 2008, 03:13:45 AM by DrLlama

  • foo_pm
  • [*][*][*]
Peakmeter Spectrum component
Reply #41
Hi, foo_pm! Thank you for another great visualization plugin!

And now just one feature request to your to-do list.  It's a... separated 'orientation' setting for each of peakmeter and spectrum analyzer.
Thanks for the suggestion!    But i don't want to implement something like this cause it's unfortunately too time-consuming.

Looks much better than the default one, but I have one issue with it, I can not seem to be able to remove the black border at the top and bottom.

I want it to fill the entire panel I am running it in.

It's fixed. You can get the new version here: http://www.hydrogenaudio.org/forums/index....st&p=546448. Additionall, new window functions are implemented.

  • Jose Hidalgo
  • [*][*][*][*]
  • Banned
Peakmeter Spectrum component
Reply #42

Well, maybe manual, but with an optional "automatic" button that would handle everything if the user decides to and has enough CPU power ? 
OK.... i will give it some more thoughts.

Thank you. 


3.  I know this might be a 2.0 feature, but it would be nice to separate the channels (e.g. show L peakmeter, L spectrum, R peakmeter, R spectrum).
I remember your post. But until now no decision has been made.

Well, if it can help the decision, I'd like that too. 


And now just one feature request to your to-do list.  It's a... separated 'orientation' setting for each of peakmeter and spectrum analyzer.
Thanks for the suggestion!    But i don't want to implement something like this cause it's unfortunately too time-consuming.

Damn ! I was really hoping for that one.  More precisely, what I was hoping for was not an orientation setting, but this :
(1) A symmetric layout for L spectrum / R spectrum :
=> Example :[L spectrum 20.000 --- 20 Hz] [20 Hz --- 20.000 Spectrum R] in the same row, not one over the other of course
(2) The possibility to add the peakmeter wherever we want (or at least between the two L and R spectrums) :
=> Example : [L Spectrum 20.000 --- 20 Hz] [L / R PEAKMETER HERE] [20 Hz --- 20.000 Spectrum R]
Can you imagine this totally symmetrical layout ? It would be REALLY beautiful !     
(yeah, I like symmetrical things  )
Pleeeeeeeeeeeaaaaaaaaaaaaaaaaase !!!!!!!!!!!!! 
  • Last Edit: 23 February, 2008, 12:57:16 PM by Jose Hidalgo

  • Squeller
  • [*][*][*][*][*]
Peakmeter Spectrum component
Reply #43
Don't know what this "window function" accuracy setting does and have no time to find this out, but thanks! 

  • zerox
  • [*]
Peakmeter Spectrum component
Reply #44
kudos, very well done! looks great!

I'd also like the ability to auto-fill panel, including the potential to automatically adjust number of bands/fft size/spacing to achieve the auto-fill.

edit: Did you write the DSP math (fft, window function, etc) yourself?

any chance at releasing source code? pretty please? Might get some people to implement features and submit back to you (hopefully you've got some version control going, even if local) 
  • Last Edit: 23 February, 2008, 05:08:33 PM by zerox

  • DrLlama
  • [*]
Peakmeter Spectrum component
Reply #45
Thanks for your super quick fix - was not expecting it so quick.

I go to bed after the post, and get up to find it fixed, you can't ask for better service.

Neil 

  • BHitman
  • [*]
Peakmeter Spectrum component
Reply #46
Very nice plugin. But what I'm missing, is the possibility of transparent background.

You see my problem in the picture  :


My 2nd problem is, that the plugin doesn't rezise, when I change the width of my foobar window...
  • Last Edit: 27 February, 2008, 07:16:47 AM by BHitman

  • Mastermnd
  • [*]
Peakmeter Spectrum component
Reply #47
Thank you foo_pm! Your plugins rock.

This is my simple yet useful layout on white background



Moderation: Please do not inline images larger than roughly 800x600 and 80KB. Please use thumbnails and/or links for large pictures instead.
  • Last Edit: 11 March, 2008, 06:37:55 AM by foosion

  • Xezzy
  • [*][*][*]
Peakmeter Spectrum component
Reply #48
Any chance for classic UI version? ;(

  • 4nt1
  • [*][*][*][*]
Peakmeter Spectrum component
Reply #49
foo_pm has it on his list of things to do but an SDK for the default ui needs to be released first