HydrogenAudio

Hosted Forums => foobar2000 => 3rd Party Plugins - (fb2k) => Topic started by: Crossover on 2023-04-09 18:32:04

Title: foo_loudness_peakmeter
Post by: Crossover on 2023-04-09 18:32:04
I have created a new component for default and columns UI to measure and visualise loudness and sample peak.
The component also displays true peak. I need the component to monitor my self-mixed songs.

Download: https://hydrogenaud.io/index.php/topic,123953.0.html (https://hydrogenaud.io/index.php/topic,123953.0.html)

(https://i.imgur.com/b8R3fVo.png)
(https://i.imgur.com/l6rIJIp.png)

Title: Re: foo_loudness_peakmeter
Post by: Cannonaire on 2023-04-09 19:47:53
Oh heck yeah! This is really nice!

Does it calculate based on the raw file, or after the DSP chain?
Title: Re: foo_loudness_peakmeter
Post by: sveakul on 2023-04-09 19:56:10
Nice work!  Any chance of a 64-bit version of this so it can be used in the 64-bit v2 Foobar, which is desperately in need of spectrum-type metering plugins?

Also, any possibility of adding an option for a single spectrum display as opposed to only separate L/R ?
Title: Re: foo_loudness_peakmeter
Post by: wagner reatto on 2023-04-09 20:08:02
very good!
Title: Re: foo_loudness_peakmeter
Post by: Porcus on 2023-04-09 20:17:14
Given the discussions about foo_dynamic_range, e.g. here: https://hydrogenaud.io/index.php/topic,123905.0.html
... is it possible to implement that functionality and finally get that old component obsoleted?

Writing as log or even to tags <DYNAMIC RANGE> and <ALBUM DYNAMIC RANGE>, with some kind of grouping to get "album". I'm sure you will get enough suggestions if you even indicate a "maybe", but the safest might be to use the same grouping as fb2k uses to calculate RG album gain / peak.
Title: Re: foo_loudness_peakmeter
Post by: NetRanger on 2023-04-09 22:34:18
Would be great is you could make a v2 x64 version of the component also.
Title: Re: foo_loudness_peakmeter
Post by: Crossover on 2023-04-10 11:13:09
Oh heck yeah! This is really nice!

Does it calculate based on the raw file, or after the DSP chain?
Thanks, the component uses the visualisation manager stream. So calculation starts after the DSP chain.
Title: Re: foo_loudness_peakmeter
Post by: Crossover on 2023-04-10 11:22:56
Nice work!  Any chance of a 64-bit version of this so it can be used in the 64-bit v2 Foobar, which is desperately in need of spectrum-type metering plugins?
Thanks, i have build an x64 variant, but unfortunately I can't get it to work. I even can't get foobar2000 v2.0 beta 31 to work on my Windows  PC. Playing songs doesn't work- independently from the choosen device. So I have to wait for a new beta version.

Also, any possibility of adding an option for a single spectrum display as opposed to only separate L/R ?
Yes, I will realize a "single spectrum view". The advantage is the higher resolution.  
Title: Re: foo_loudness_peakmeter
Post by: Crossover on 2023-04-10 11:31:45
Given the discussions about foo_dynamic_range, e.g. here: https://hydrogenaud.io/index.php/topic,123905.0.html
... is it possible to implement that functionality and finally get that old component obsoleted?

Writing as log or even to tags <DYNAMIC RANGE> and <ALBUM DYNAMIC RANGE>, with some kind of grouping to get "album". I'm sure you will get enough suggestions if you even indicate a "maybe", but the safest might be to use the same grouping as fb2k uses to calculate RG album gain / peak.
Sorry, but something like that is not planned. It's only a visualisation component. Writing of logs or creation of tags should be done by other components.
Title: Re: foo_loudness_peakmeter
Post by: sveakul on 2023-04-10 20:37:26
Thanks, i have build an x64 variant, but unfortunately I can't get it to work. I even can't get foobar2000 v2.0 beta 31 to work on my Windows  PC. Playing songs doesn't work- independently from the choosen device. So I have to wait for a new beta version.

Yes, I will realize a "single spectrum view". The advantage is the higher resolution.
Thanks for your reply--glad to see you will be doing a single spectrum view!

Sorry about the problems with the 64-bit version.  If you care to upload what you have, I have a problem-free  Beta 31, 64-bit Foobar v2 I would love to test it on.  If it ends up working, at least you would know the problems aren't related to the plugin but to your Beta 31 Foobar environment.

Good luck with it and thanks for sharing your work on the forum.
Title: Re: foo_loudness_peakmeter
Post by: sveakul on 2023-04-10 20:57:06
New version 0.1.2.0 released.

Change Log
========================
- improved channel handling
- new: single spectrum view
Gorgeous, thank you!
Title: Re: foo_loudness_peakmeter
Post by: yeyo on 2023-04-11 07:05:36
Very good component, but “UI Theme Integration” not effective,The color configuration cannot be displayed correctly according to the UI interface color,Always display the colors in the option settings
Title: Re: foo_loudness_peakmeter
Post by: Crossover on 2023-04-11 15:04:46
Thanks, i have build an x64 variant, but unfortunately I can't get it to work. I even can't get foobar2000 v2.0 beta 31 to work on my Windows  PC. Playing songs doesn't work- independently from the choosen device. So I have to wait for a new beta version.

Yes, I will realize a "single spectrum view". The advantage is the higher resolution.
Thanks for your reply--glad to see you will be doing a single spectrum view!

Sorry about the problems with the 64-bit version.  If you care to upload what you have, I have a problem-free  Beta 31, 64-bit Foobar v2 I would love to test it on.  If it ends up working, at least you would know the problems aren't related to the plugin but to your Beta 31 Foobar environment.

Good luck with it and thanks for sharing your work on the forum.
Thanks! I could get it to work, Peter helped me. So I was able to test my X64-Builds. First X64-Version 0.2.0.0 is available for download :-)
Title: Re: foo_loudness_peakmeter
Post by: Crossover on 2023-04-11 15:08:07
Very good component, but “UI Theme Integration” not effective,The color configuration cannot be displayed correctly according to the UI interface color,Always display the colors in the option settings
Thanks for the hint. UI Theme Integration is now part of the new released version 0.2.0.0 (x86 (https://hydrogenaud.io/index.php?action=dlattach;topic=123953.0;attach=25220) +x64 (https://hydrogenaud.io/index.php?action=dlattach;topic=123953.0;attach=25221)). 
Title: Re: foo_loudness_peakmeter
Post by: sveakul on 2023-04-11 23:32:33
Thanks for the x64 version!  I noticed that both the x64 and x86 0.2 versions don't seem to handle smaller window resizing as well as .12 did;  they have the tendency to cut off the tops of both the left edge Integrated number and the right edge 3db number that are properly handled by .12.  I am using a 125% display Windows 10 desktop.  Not sure if this is an expected result of the processing correction for large peaks.
Title: Re: foo_loudness_peakmeter
Post by: yeyo on 2023-04-12 01:52:56
Very good component, but “UI Theme Integration” not effective,The color configuration cannot be displayed correctly according to the UI interface color,Always display the colors in the option settings
Thanks for the hint. UI Theme Integration is now part of the new released version 0.2.0.0 (x86 (https://hydrogenaud.io/index.php?action=dlattach;topic=123953.0;attach=25220) +x64 (https://hydrogenaud.io/index.php?action=dlattach;topic=123953.0;attach=25221)).
Thank you very much for your improvement, but it seems that only the background color and some font colors have been changed. If in lake light color mode, the display effect is not ideal. Of course, only four colors are available for the theme color. Can you consider using blendColors, which will show amazing results. Like foo_enhanced_spectrum_analyzer component integrates display effects using UI themes. Suggestion only, thank you!
Title: Re: foo_loudness_peakmeter
Post by: darkflame23 on 2023-04-12 12:37:56
This is fantastic, thank you!
Title: Re: foo_loudness_peakmeter
Post by: Crossover on 2023-04-12 12:46:21
Thanks for the x64 version!  I noticed that both the x64 and x86 0.2 versions don't seem to handle smaller window resizing as well as .12 did;  they have the tendency to cut off the tops of both the left edge Integrated number and the right edge 3db number that are properly handled by .12.  I am using a 125% display Windows 10 desktop.  Not sure if this is an expected result of the processing correction for large peaks.
Thanks for testing. Yes, you are right. The new released version 0.2.1.0 should now work as expected.
Title: Re: foo_loudness_peakmeter
Post by: Crossover on 2023-04-12 12:52:39
Thank you very much for your improvement, but it seems that only the background color and some font colors have been changed. If in lake light color mode, the display effect is not ideal. Of course, only four colors are available for the theme color. Can you consider using blendColors, which will show amazing results. Like foo_enhanced_spectrum_analyzer component integrates display effects using UI themes. Suggestion only, thank you!
OK, I enhanced the integration of the Default UI colors in component version 0.2.1.0 (X86 + X64). This was not so easy because there are only 4 colours, but I think the result looks better now.
Title: Re: foo_loudness_peakmeter
Post by: Air KEN on 2023-04-12 13:29:51
Hi :)
Please re-upload v0.2.1.0 (X86 + X64).
Still v0.2.0.0.

(https://i.imgur.com/5yA92te.png)

Thanks.
Title: Re: foo_loudness_peakmeter
Post by: yeyo on 2023-04-12 13:39:53
Thank you very much for your improvement, but it seems that only the background color and some font colors have been changed. If in lake light color mode, the display effect is not ideal. Of course, only four colors are available for the theme color. Can you consider using blendColors, which will show amazing results. Like foo_enhanced_spectrum_analyzer component integrates display effects using UI themes. Suggestion only, thank you!
OK, I enhanced the integration of the Default UI colors in component version 0.2.1.0 (X86 + X64). This was not so easy because there are only 4 colours, but I think the result looks better now.
Can you add a switch to the gradient color? Or the gradient color should be lighter, otherwise the labels font cannot be seen clearly.

Monitoring Fields Area and Loudness Peakmeter Area is color of the separation line is also not match.

Just for a better presentation ;D , thank you!
Title: Re: foo_loudness_peakmeter
Post by: Crossover on 2023-04-12 15:15:40
Hi :)
Please re-upload v0.2.1.0 (X86 + X64).
Still v0.2.0.0.
Thanks.
It's version 0.2.1.0 You could see it by looking in the dll properties. I only forgot updating the internal foobar component version.
Title: Re: foo_loudness_peakmeter
Post by: Air KEN on 2023-04-12 15:23:26
> It's version 0.2.1.0 You could see it by looking in the dll properties
yes i know.

> I only forgot updating the internal foobar component version.
yes please fix this.

Please fix it in the next version.
Thanks.
Title: Re: foo_loudness_peakmeter
Post by: grimes on 2023-04-13 10:09:39
Wanna say thank you.
Title: Re: foo_loudness_peakmeter
Post by: Crossover on 2023-04-13 10:30:24
Can you add a switch to the gradient color? Or the gradient color should be lighter, otherwise the labels font cannot be seen clearly.

Monitoring Fields Area and Loudness Peakmeter Area is color of the separation line is also not match.

Just for a better presentation ;D , thank you!
In the released version 0.3.0.0 the right shade is deactivated by default now. When the Default UI color assignment appears, the transparency of the left shade is set to the very low value 32 for a better separation of the areas. You can adjust the shades now in the configuration dialog. I didn't change the color of the separation line, cause it's not so easy and it's always gray. May be in one of the next versions. The color of the labels is now also adjustable and changed by Default UI color assignment automatically.
Title: Re: foo_loudness_peakmeter
Post by: Crossover on 2023-04-13 10:33:48
This is fantastic, thank you!

Wanna say thank you.

Thanks :D!
Title: Re: foo_loudness_peakmeter
Post by: Crossover on 2023-04-13 10:35:04
> It's version 0.2.1.0 You could see it by looking in the dll properties
yes i know.

> I only forgot updating the internal foobar component version.
yes please fix this.

Please fix it in the next version.
Thanks.
OK, thanks.  It's fixed in 0.3.0.0 (https://hydrogenaud.io/index.php/topic,123953.0.html (https://hydrogenaud.io/index.php/topic,123953.0.html)).
Title: Re: foo_loudness_peakmeter
Post by: grimes on 2023-04-13 10:54:09
Please pack both 32/64 dlls in a (one) .fb2k-component file: https://wiki.hydrogenaud.io/index.php?title=Foobar2000:Development:Overview
Title: Re: foo_loudness_peakmeter
Post by: Crossover on 2023-04-13 11:29:05
Please pack both 32/64 dlls in a (one) .fb2k-component file: https://wiki.hydrogenaud.io/index.php?title=Foobar2000:Development:Overview
OK, thanks. Done.
Title: Re: foo_loudness_peakmeter
Post by: grimes on 2023-04-13 11:40:11
Doesn't work. Please remove foo_loudness_peakmeter_x.x.x.x.fb2k-component subfolder in foo_loudness_peakmeter_0.3.0.0.fb2k-component.

EDIT: Everything fine now. Thanks.
Title: Re: foo_loudness_peakmeter
Post by: yeyo on 2023-04-13 12:20:17
Can you add a switch to the gradient color? Or the gradient color should be lighter, otherwise the labels font cannot be seen clearly.

Monitoring Fields Area and Loudness Peakmeter Area is color of the separation line is also not match.

Just for a better presentation ;D , thank you!
In the released version 0.3.0.0 the right shade is deactivated by default now. When the Default UI color assignment appears, the transparency of the left shade is set to the very low value 32 for a better separation of the areas. You can adjust the shades now in the configuration dialog. I didn't change the color of the separation line, cause it's not so easy and it's always gray. May be in one of the next versions. The color of the labels is now also adjustable and changed by Default UI color assignment automatically.
The transparency treatment method for gradient colors is very good, and the display effect is now very ideal.
Now it will appear in my theme interface for display.
Thank you for the changes you have been making!
Title: Re: foo_loudness_peakmeter
Post by: sveakul on 2023-04-13 20:22:00
After doing a custom color scheme in version .21 (UI Theme Integration un-checked), then updating to .30 on top of the existing files, all the color changes I did were lost as well as other display option changes, and I was reverted back to the default UI Theme Integration display.  This was a little disconcerting, as now I have to spend some time with a color picker and a screenshot from backup to get the colors back to where they were before.

I would suggest that a feature be added to save any optional color configuration into a backup file that can then be re-applied between plugin version changes.  Thanks for considering this.
Title: Re: foo_loudness_peakmeter
Post by: Cannonaire on 2023-04-13 20:26:33
Hey, I just want to say thank you for making this component. It helped me tremendously when I was getting my preamp and gain settings adjusted yesterday.
Title: Re: foo_loudness_peakmeter
Post by: Crossover on 2023-04-14 12:15:47
After doing a custom color scheme in version .21 (UI Theme Integration un-checked), then updating to .30 on top of the existing files, all the color changes I did were lost as well as other display option changes, and I was reverted back to the default UI Theme Integration display.  This was a little disconcerting, as now I have to spend some time with a color picker and a screenshot from backup to get the colors back to where they were before.

I would suggest that a feature be added to save any optional color configuration into a backup file that can then be re-applied between plugin version changes.  Thanks for considering this.
I am sorry about that. This only happens with versions that have new user options. To be honest, I haven't integrated version control as this can be a big hassle with quick changes and can also be dangerous if not implemented carefully. But I will put this on the todo list.
Title: Re: foo_loudness_peakmeter
Post by: Crossover on 2023-04-14 12:16:39
Hey, I just want to say thank you for making this component. It helped me tremendously when I was getting my preamp and gain settings adjusted yesterday.
Thanks! Glad to hear that.
Title: Re: foo_loudness_peakmeter
Post by: grimes on 2023-04-14 12:33:11
Options: X Axis is ms, Y Axis is dB?
Title: Re: foo_loudness_peakmeter
Post by: yeyo on 2023-04-14 14:03:04
Options: X Axis is ms, Y Axis is dB?
That's right, the correct unit
Title: Re: foo_loudness_peakmeter
Post by: grimes on 2023-04-14 14:38:23
Current options: X Axis is dB, Y Axis is ms, IMHO X Axis is from left to right, so it should be X Axis is ms, Y Axis is dB. It is mixed up in the options.
Title: Re: foo_loudness_peakmeter
Post by: yeyo on 2023-04-14 15:26:20
Current options: X Axis is dB, Y Axis is ms, IMHO X Axis is from left to right, so it should be X Axis is ms, Y Axis is dB. It is mixed up in the options.
Take a closer look, your feedback is correct,I take back the reply above.
Title: Re: foo_loudness_peakmeter
Post by: grimes on 2023-04-14 15:30:23
Your reply was correct, my first post was not understandable. Sorry.
Title: Re: foo_loudness_peakmeter
Post by: Crossover on 2023-04-14 17:45:24
Your reply was correct, my first post was not understandable. Sorry.
Thank's for finding this! It's on the todo list now.
Title: Re: foo_loudness_peakmeter
Post by: fooball on 2023-04-15 00:36:21
You could call it the T axis instead of X axis...
Title: Re: foo_loudness_peakmeter
Post by: grimes on 2023-04-16 11:51:00
For classical music, I recommend a Decibel resolution of -60dB. (Slider in options to the extreme left)
Title: Re: foo_loudness_peakmeter
Post by: Dfaure on 2023-04-24 14:08:31
Instead of a simple left to right periodical stationary refreshing, couldn't you also provide a scrolling one (like the spectrogram)?
Title: Re: foo_loudness_peakmeter
Post by: Cannonaire on 2023-04-25 00:57:02
Please pardon my inexperience. What do the red shaded areas in the middle of the graph mean? Not the peaks; I mean the red under the blue peaks. I think they're loudness peaks? I'm nowhere near clipping, but I'm seeing a lot of red and I'm wondering if that is bad.
Title: Re: foo_loudness_peakmeter
Post by: Crossover on 2023-05-01 12:03:54
You could call it the T axis instead of X axis...
Yes, thanks, that's also an option, But I don't have an usable idea for the Y axis, So I will still use the labelling X and Y axis.
Title: Re: foo_loudness_peakmeter
Post by: Crossover on 2023-05-01 12:07:51
Instead of a simple left to right periodical stationary refreshing, couldn't you also provide a scrolling one (like the spectrogram)?
OK, I will take a look into it.
Title: Re: foo_loudness_peakmeter
Post by: grimes on 2023-05-01 12:16:29
You could call it the T axis instead of X axis...
Yes, thanks, that's also an option, But I don't have an usable idea for the Y axis, So I will still use the labelling X and Y axis.
Never heard of T axis (Time axis?). Should be X axis. In physics, time is always on the X axis.
Title: Re: foo_loudness_peakmeter
Post by: Crossover on 2023-05-01 12:17:56
Please pardon my inexperience. What do the red shaded areas in the middle of the graph mean? Not the peaks; I mean the red under the blue peaks. I think they're loudness peaks? I'm nowhere near clipping, but I'm seeing a lot of red and I'm wondering if that is bad.
First of all: It's not bad :-) The red marked area in the shaded loudness area is the difference between the momentary loudness (orange line) and the integrated loudness (red line in the loudness meter area). This means that you can identify parts of the song that increase loudness.
Title: Re: foo_loudness_peakmeter
Post by: Cannonaire on 2023-05-01 12:23:37
Please pardon my inexperience. What do the red shaded areas in the middle of the graph mean? Not the peaks; I mean the red under the blue peaks. I think they're loudness peaks? I'm nowhere near clipping, but I'm seeing a lot of red and I'm wondering if that is bad.
First of all: It's not bad :-) The red marked area in the shaded loudness area is the difference between the momentary loudness (orange line) and the integrated loudness (red line in the loudness meter area). This means that you can identify parts of the song that increase loudness.
Thank you! That makes sense.
Title: Re: foo_loudness_peakmeter
Post by: Crossover on 2023-05-01 12:27:35
Never heard of T axis (Time axis?). Should be X axis. In physics, time is always on the X axis.
Yes, I would have used "time axis" instead of "X axis" if I had had a good idea for labelling the Y axis.  However, I think X-axis and Y-axis are more common.
Title: Re: foo_loudness_peakmeter
Post by: fooball on 2023-05-01 17:11:48
Never heard of T axis (Time axis?). Should be X axis. In physics, time is always on the X axis.
So?  This isn't physics, this is audio where the time axis is usually spread horizontally.  Whether horizontal or vertical, it's still the time axis.  Just because physicists happen to lazily refer to the horizontal axis as "x"...

As for the vertical axis: amplitude, power, dB, whatever.
Title: Re: foo_loudness_peakmeter
Post by: sl23 on 2023-05-06 15:56:27
Thanks for your work on this. Would it be possible to have just the left hand Peak meter visible though? I would like to use this in conjunction with your other spectrum analyser plugin.
Title: Re: foo_loudness_peakmeter
Post by: Crossover on 2023-05-07 12:25:17
Thanks for your work on this. Would it be possible to have just the left hand Peak meter visible though? I would like to use this in conjunction with your other spectrum analyser plugin.
Do you mean something like this:
X
This is already possible now by decreasing the loudness peakmeter. But I see your point. I will put it on the list.
Title: Re: foo_loudness_peakmeter
Post by: sl23 on 2023-05-07 15:11:58
Yeah that's it, how'd you do that? Did I miss another update? lol

EDIT: Oh, I see what you did! Would be better to have a standalone version too maybe? ;)
Title: Re: foo_loudness_peakmeter
Post by: Crossover on 2023-05-07 15:35:49
Yeah that's it, how'd you do that? Did I miss another update? lol

EDIT: Oh, I see what you did! Would be better to have a standalone version too maybe? ;)
I will not build an additional component. I will check whether it is possible and makes sense to display the peak meter alone. The problem is the dimensioning. The left peak meter alone must fill the entire component space. That might look a little strange. But I'll give it a try.
Title: Re: foo_loudness_peakmeter
Post by: sl23 on 2023-05-07 16:22:35
Would it not be easier to create a second component by duplicating the original and removing all non-essential code for the Peak meter?

Out of curiosity, how do you create plugins? What language is it and what else is required?
Title: Re: foo_loudness_peakmeter
Post by: Crossover on 2023-05-07 20:40:39
Would it not be easier to create a second component by duplicating the original and removing all non-essential code for the Peak meter?

Out of curiosity, how do you create plugins? What language is it and what else is required?
A second component must also be managed. So this could lead to duplication of work if the code is not shared. I think it is better to keep the algorithms in one component. That is easier to maintain.

I use C++. You can use Visual C++ as an IDE. It is free of charge. Then you need the foobar2000 SDK. A little programming experience is required. Also basics of audio signal processing and the corresponding algorithms.  But this is part of the developer forum. You can get more info here: https://hydrogenaud.io/index.php/board,34.0.html.
Title: Re: foo_loudness_peakmeter
Post by: sl23 on 2023-05-07 22:14:10
Ah ok. I thought it may be easier to have two separate components, but I see the issue.

Thanks for the info, not sure I'm up to it, but I'll certainly take a look! :)
Title: Re: foo_loudness_peakmeter
Post by: Cannonaire on 2023-05-10 21:17:48
Bug:
All foobar2000 visualizations slow to a crawl when foo_loudness_peakmeter is active while playing tracks with more than two channels. It only seems to happen when the final result after DSPs has more than two channels - if a file is, say, 5.1, and it is downmixed to stereo before output, the bug will not occur.
Title: Re: foo_loudness_peakmeter
Post by: Crossover on 2023-05-10 21:50:31
Bug:
All foobar2000 visualizations slow to a crawl when foo_loudness_peakmeter is active while playing tracks with more than two channels. It only seems to happen when the final result after DSPs has more than two channels - if a file is, say, 5.1, and it is downmixed to stereo before output, the bug will not occur.
I cannot reproduce the behaviour. Which foo_loudness_peakmeter version and foobar2000 version (32 or 64 bit) are you using? Does this happen also in single spectrum mode?
Title: Re: foo_loudness_peakmeter
Post by: Cannonaire on 2023-05-10 22:30:53
Bug:
All foobar2000 visualizations slow to a crawl when foo_loudness_peakmeter is active while playing tracks with more than two channels. It only seems to happen when the final result after DSPs has more than two channels - if a file is, say, 5.1, and it is downmixed to stereo before output, the bug will not occur.
I cannot reproduce the behaviour. Which foo_loudness_peakmeter version and foobar2000 version (32 or 64 bit) are you using? Does this happen also in single spectrum mode?
Did a bit more testing. Looks like it's not all visualizations, but the Spectrum Analyzer, waveform minibar, and loudness peakmeter all stutter and update exceedingly slowly the moment I play >2 channel audio, including if I play a stereo file and add "Upmix to 5.1" to my DSP chain. Everything goes back to normal when I close the loudness peakmeter.

The full spectrum visualizer doesn't exhibit any slowness in this situation, oddly enough. Even when update is set to 5ms.
Title: Re: foo_loudness_peakmeter
Post by: Crossover on 2023-05-12 21:01:18
Did a bit more testing. Looks like it's not all visualizations, but the Spectrum Analyzer, waveform minibar, and loudness peakmeter all stutter and update exceedingly slowly the moment I play >2 channel audio, including if I play a stereo file and add "Upmix to 5.1" to my DSP chain. Everything goes back to normal when I close the loudness peakmeter.

The full spectrum visualizer doesn't exhibit any slowness in this situation, oddly enough. Even when update is set to 5ms.
X
I can't reproduce it. You'll find attached my test scenario. Are you using the newest version of foo_loudness_peakmeter 0.3.0.0 or an earlier version? Are you running the component in 64 or 32 bit environment? Can you post a screenshot of your test scenario?
Title: Re: foo_loudness_peakmeter
Post by: Cannonaire on 2023-05-12 21:47:00
Sorry for my slow replies. I will provide a more thorough response when I am able. I was out for most of yesterday for health reasons.

For now, I can tell you it's not a matter of how many visualizations are open. I only needed waveform minibar (mod), the built-in spectrum analyzer in the toolbar, and the loudness peakmeter to cause a massive slowdown. I will test more and reply when I am able to sit up.
Title: Re: foo_loudness_peakmeter
Post by: Crossover on 2023-05-14 20:45:24
Sorry for my slow replies. I will provide a more thorough response when I am able. I was out for most of yesterday for health reasons.

For now, I can tell you it's not a matter of how many visualizations are open. I only needed waveform minibar (mod), the built-in spectrum analyzer in the toolbar, and the loudness peakmeter to cause a massive slowdown. I will test more and reply when I am able to sit up.
OK, I think I have found the reason. It is not a bug, but a performance problem in the loudness library. I don't know if I can fix it because it happens during the squaring to calculate the gating blocks. But I'll take a closer look. Thanks!
Title: Re: foo_loudness_peakmeter
Post by: Cannonaire on 2023-05-14 21:28:02
Okay, I have some more information. It only triggers for me when I am using several DSPs in a chain. There are no problems unless both Loudness Peakmeter is open and a multichannel (more than stereo) track is playing (or upmix to 5.1+ is added to the chain). I'm including a screenshot of a real-world chain that triggers the poor performance in conjunction with the other steps. Interestingly, once the slow performance starts, even removing the DSPs won't make it fast again - only closing Loudness Peakmeter will make things fast again.

Additionally, any visualization using Hardware Acceleration is unaffected, but with Hardware Acceleration off even the regular spectrum is choppy.

My system has an i9-9900K, 32gb RAM, and an RTX 3090, which should explain why Hardware Accelerated visualizations are unaffected. I am using foobar2000 v2.0 x86.

Thank you! I can provide more specific information if asked.
Title: Re: foo_loudness_peakmeter
Post by: Crossover on 2023-05-19 17:27:17
Okay, I have some more information. It only triggers for me when I am using several DSPs in a chain. There are no problems unless both Loudness Peakmeter is open and a multichannel (more than stereo) track is playing (or upmix to 5.1+ is added to the chain). I'm including a screenshot of a real-world chain that triggers the poor performance in conjunction with the other steps. Interestingly, once the slow performance starts, even removing the DSPs won't make it fast again - only closing Loudness Peakmeter will make things fast again.

Additionally, any visualization using Hardware Acceleration is unaffected, but with Hardware Acceleration off even the regular spectrum is choppy.

My system has an i9-9900K, 32gb RAM, and an RTX 3090, which should explain why Hardware Accelerated visualizations are unaffected. I am using foobar2000 v2.0 x86.

Thank you! I can provide more specific information if asked.
Now I had a little bit of time to look into it more intense. The reason was the squaring to calculate the gating blocks. But this happens only very intense when short time loudness was calculated for more then 4 channels. So I could find a solution for this. And I found also the bug that is the reason for the component don't getting faster again after playing a stream with less than 4 channels. I will provide a new version soon. Thanks for pointing this out.
Title: Re: foo_loudness_peakmeter
Post by: Crossover on 2023-05-21 11:38:07
I released  version 1.0,0.0
=========================
- FIX: Reset of Internal channel count detection sometimes fails
- FIX: changed the labelling of the X and Y axis in the config dialog
- IMPROVEMENT: Better performance when processing 5.1 and 7.1 audio streams
- IMPROVEMENT: Export and Import settings by file  
- IMPROVEMENT: Default settings have been changed for a better integration. 
- IMPROVEMENT: better scaling of loudnessmeter for small sizes
- IMPROVEMENT: Mono/stereo only selection for the loudness measurement

You can get it here: https://hydrogenaud.io/index.php/topic,123953.msg1027603.html#msg1027603 (https://hydrogenaud.io/index.php/topic,123953.msg1027603.html#msg1027603)
Title: Re: foo_loudness_peakmeter
Post by: Cannonaire on 2023-05-21 11:50:57
Thank you! Your component has been invaluable for adjusting preamp and other gain settings.
Title: Re: foo_loudness_peakmeter
Post by: grimes on 2023-05-21 16:31:26
Thanks! A plea: As your components reaching mature status, please consider adding them to www.foobar2000.org/components. Just e-mail Peter (https://wiki.hydrogenaud.io/index.php?title=Foobar2000:Development:Overview).
Title: Re: foo_loudness_peakmeter
Post by: sveakul on 2023-05-21 22:21:39
Thanks Crossover for the new version!  Just have one non-100% positive observation, which is that the tendecy of the LRA label on the meter to get "mashed" into the Peak value display on some material has seemed to have reappeared (see images)--I mentioned this on an earlier version and you then fixed it, so perhaps it's a regression?
Title: Re: foo_loudness_peakmeter
Post by: Crossover on 2023-05-22 16:39:11
Thanks! A plea: As your components reaching mature status, please consider adding them to www.foobar2000.org/components. Just e-mail Peter (https://wiki.hydrogenaud.io/index.php?title=Foobar2000:Development:Overview).
Thanks for the hint!
Title: Re: foo_loudness_peakmeter
Post by: Crossover on 2023-05-22 16:52:34
Thanks Crossover for the new version!  Just have one non-100% positive observation, which is that the tendecy of the LRA label on the meter to get "mashed" into the Peak value display on some material has seemed to have reappeared (see images)--I mentioned this on an earlier version and you then fixed it, so perhaps it's a regression?
Ok, I see your point. Fortunatlely It's not a regression to the old problem. Peak and volume are extremely and unnaturally high and so the normal behaviour of the component leads to the result you documented in the pictures. I played a little with some Dsp's and could reproduce this behaviour.
X
I think and hope that the display of a combination of such extreme values is normally not necessary.
Title: Re: foo_loudness_peakmeter
Post by: sveakul on 2023-05-22 17:58:56
Roger that, and that's cool on all staying as-is.  I am one of the old school types that uses both the Foobar volume control and speakers separate volume control to balance the room, as opposed to the bit-perfect folks who max out the former and rely on system volume. I also use a modest(?) amount of compression/limiting, so that obviously jazzes up a peak display  :-[

Anyway my own DSP chain is below just so you know it's not something crazy like the "to reproduce" example  :))

(https://i.imgur.com/BLmNvbS.png)
Title: Re: foo_loudness_peakmeter
Post by: sftf on 2023-05-30 10:04:39
Could you add option/feature/new plugin to analyze selected tracks or whole media library offline (not only while track is playing) to see final integrated values like loudness/peaks/LRA/dynamic range and even whole graph for each selected track?
Ideally it could be a database with information about each analyzed track (like seekbar plugin) with ability to view it as a list and sort it by different columns or even query it.
Title: Re: foo_loudness_peakmeter
Post by: sftf on 2023-05-30 10:09:11
Is LRA integrated over whole track or short term?
Title: Re: foo_loudness_peakmeter
Post by: Crossover on 2023-06-04 16:09:28
Could you add option/feature/new plugin to analyze selected tracks or whole media library offline (not only while track is playing) to see final integrated values like loudness/peaks/LRA/dynamic range and even whole graph for each selected track?
Ideally it could be a database with information about each analyzed track (like seekbar plugin) with ability to view it as a list and sort it by different columns or even query it.
porcus asked the same question a few weeks ago. Something like that is not planned. 
Title: Re: foo_loudness_peakmeter
Post by: Crossover on 2023-06-04 16:12:51
Is LRA integrated over whole track or short term?
Sorry for the late reply. It is calculated by analyzing short term blocks of 3 seconds (EBU TECH 3342 (https://tech.ebu.ch/docs/tech/tech3342.pdf)).
Title: Re: foo_loudness_peakmeter
Post by: TF3RDL on 2023-06-05 13:10:18
Hi Crossover, what about Mid/Side mode (where Mid is (L+R)/2 and Side is (L-R)/2 and same applies for each pair of surround channels, not just stereo)?
Title: Re: foo_loudness_peakmeter
Post by: mexx on 2023-06-09 11:25:32
I would like to display Peakmeter Spectrum as in the attachment. Unfortunately I do not get the settings accordingly. Can someone help me with this?

Thanks in advance.
Title: Re: foo_loudness_peakmeter
Post by: TF3RDL on 2023-06-10 07:23:16
I would like to display Peakmeter Spectrum as in the attachment. Unfortunately I do not get the settings accordingly. Can someone help me with this?

Thanks in advance.
Of course, you need two components (this and foo_enhanced_spectrum_analyzer) for this type of visualization
Title: Re: foo_loudness_peakmeter
Post by: mexx on 2023-06-10 11:49:39
Of course, you need two components (this and foo_enhanced_spectrum_analyzer) for this type of visualization

Correct. Both are also installed.
Title: Re: foo_loudness_peakmeter
Post by: Crossover on 2023-06-17 15:13:43
I would like to display Peakmeter Spectrum as in the attachment. Unfortunately I do not get the settings accordingly. Can someone help me with this?

Thanks in advance.
Sorry mexx, the peakmeter spectrum component is obsolete and no longer supported. Loudness peakmeter cant't be configured to look like the old peakmeter spectrum component.
Title: Re: foo_loudness_peakmeter
Post by: darkflame23 on 2023-12-06 10:49:15
Love this component, but there's one thing that's a bit annoying. When it's scrolling and it gets to the right end of the screen, it goes back to the other side again, but instead of starting at the far left of the screen, it starts about a third of the way along. Would it be possible to have it start again at the far left instead?

An option for an actual scrolling display, instead of stationary, would also be great.
Title: Re: foo_loudness_peakmeter
Post by: Cannonaire on 2023-12-07 00:46:01
Love this component, but there's one thing that's a bit annoying. When it's scrolling and it gets to the right end of the screen, it goes back to the other side again, but instead of starting at the far left of the screen, it starts about a third of the way along. Would it be possible to have it start again at the far left instead?

An option for an actual scrolling display, instead of stationary, would also be great.
100% agree. Yes please.
Title: Re: foo_loudness_peakmeter
Post by: TF3RDL on 2023-12-23 13:34:47
Love this component, but there's one thing that's a bit annoying. When it's scrolling and it gets to the right end of the screen, it goes back to the other side again, but instead of starting at the far left of the screen, it starts about a third of the way along. Would it be possible to have it start again at the far left instead?

An option for an actual scrolling display, instead of stationary, would also be great.
100% agree. Yes please.
Same with me, to be consistent with foobar2000's built-in spectrogram visualization.

Hi Crossover, what about Mid/Side mode (where Mid is (L+R)/2 and Side is (L-R)/2 and same applies for each pair of surround channels, not just stereo)?
Last time I've checked the foobar2000 SDK (especially the audio channels in audio chunk definitions, which is essential for developers like @Crossover to implement Mid/Side representation for foobar2000 visualizations), and there are 18 defined channels (which foobar2000 can support up to 17.1 surround sound I think, which is rare anyways), which is:
0 = FL: Front left
1 = FR: Front right
2 = FC: Front center
3 = LFE: Low frequency effects
4 = BL: Back left
5 = BR: Back right
6 = FCL: Front center left
7 = FCR: Front center right
8 = BC: Back center
9 = SL: Side left
10 = SR: Side right
11 = TC: Top center
12 = TFL: Top front left
13 = TFC: Top front center
14 = TFR: Top front right
15 = TBL: Top back left
16 = TBC: Top back center
17 = TBR: Top back right

So by following the M = (L+R)/2 and S = (L-R)/2 formula for each channel pairs (barring from centers and LFEs, and the first pair is Mid and the second pair is Side after M/S conversion), the following M/S conversions (note that there are no M/S version of channel no. 2, 3, 8, 11, 13, and 16 here because these wouldn't make sense to convert to M/S representation, therefore 12 channels in Mid/Side representation) would be like:
0 = FM: Front mid
1 = FS: Front side
4 = BM: Back mid
5 = BS: Back side
6 = FCM: Front center mid
7 = FCS: Front center side
9 = SM: Side mid
10 = SS: Side side
12 = TFM: Top front mid
14 = TFS: Top front side
15 = TBM: Top back mid
17 = TBS: Top back side
Title: Re: foo_loudness_peakmeter
Post by: Just_Addict on 2024-01-05 05:02:40
An option for an actual scrolling display, instead of stationary, would also be great.
+1 from me, as someone already said, like the Spectrogram display
Title: Re: foo_loudness_peakmeter
Post by: grimes on 2024-01-09 16:35:40
The Export Setting File is *.enhpm. The file extension is confusing, should be *.loudpm.
Title: Re: foo_loudness_peakmeter
Post by: Just_Addict on 2024-01-09 17:46:02
The Export Setting File is *.enhpm. The file extension is confusing, should be *.loudpm.
actually, I disagree, if anything it's missing the l from loudness...
.loudpm doesn't cover what it does.
my suggestion would be to just change it to .enhlpm
This reflects what it does...

@Crossover You might also want to change the name that's visible in the Visualizations submenu and caption if not embedded.
Shouldn't it read "Enhanced Loudness Peakmeter" since you did put the "enh" in the extension of the exported settings?
X
Title: Re: foo_loudness_peakmeter
Post by: Crossover on 2024-02-28 20:12:37
Love this component, but there's one thing that's a bit annoying. When it's scrolling and it gets to the right end of the screen, it goes back to the other side again, but instead of starting at the far left of the screen, it starts about a third of the way along. Would it be possible to have it start again at the far left instead?

An option for an actual scrolling display, instead of stationary, would also be great.
OK, convinced. It's on the list.
Title: Re: foo_loudness_peakmeter
Post by: Crossover on 2024-02-28 20:20:15
The Export Setting File is *.enhpm. The file extension is confusing, should be *.loudpm.
actually, I disagree, if anything it's missing the l from loudness...
.loudpm doesn't cover what it does.
my suggestion would be to just change it to .enhlpm
This reflects what it does...

@Crossover You might also want to change the name that's visible in the Visualizations submenu and caption if not embedded.
Shouldn't it read "Enhanced Loudness Peakmeter" since you did put the "enh" in the extension of the exported settings?
[attach type=image]28497[/attach]

The component was initially called Enhanced Peakmeter. After I added the loudness functionality, I renamed it to Loudness Peakmeter without changing the file extension of the settings files. So I think .loudpm would be correct. It's also on the list now.
Title: Re: foo_loudness_peakmeter
Post by: darkflame23 on 2024-02-29 06:28:17
Love this component, but there's one thing that's a bit annoying. When it's scrolling and it gets to the right end of the screen, it goes back to the other side again, but instead of starting at the far left of the screen, it starts about a third of the way along. Would it be possible to have it start again at the far left instead?

An option for an actual scrolling display, instead of stationary, would also be great.
OK, convinced. It's on the list.

Brilliant, thank you for considering it! The 'starting at the far left' thing would make it perfect for me.
Title: Re: foo_loudness_peakmeter
Post by: Kraeved on 2024-03-02 04:32:13
@Crossover, how is it possible that your component reports a higher true peak value than calculated in advance using the built-in Replaygain scanner with the True Peak option set to SoX Upsample x4?
Title: Re: foo_loudness_peakmeter
Post by: TF3RDL on 2024-03-06 16:18:38
When not using "single spectrum" mode, I noticed that the top graph didn't react to right channel (when using the Stereo Balance effect that comes with Utility DSP Array component) but the bottom graph reacts to both channels as opposed to only reacting to right channel but not left channel

Also, the line (which is the momentary LUFS display over time) reacts to both channels on two graphs as opposed to have LUFS lines react to each channel on each graph (which is a FR to add an option to make LUFS line graph react differently to different channels on each graph as opposed to all channels when not using "single spectrum" mode)
Title: Re: foo_loudness_peakmeter
Post by: misio on 2024-03-14 13:56:07
I have created a new component...

Is it possible to add the old, good RMS meter (according to IEC 61606:1997 / AES17-1998 standard - so called RMS+3) on the upper bar next to Peak and TruePeak readout?
It would be great to have an option to display ONLY the upper bar and hide all the graphs.
Title: Re: foo_loudness_peakmeter
Post by: Avith on 2024-04-05 07:33:28
This is very nice, thank you for the plugin!
Is it possible to attach the visualizer as another Tab along with the rest of the visualizers?
(https://i.imgur.com/agpLQFw.png)
Title: Re: foo_loudness_peakmeter
Post by: sveakul on 2024-04-05 10:26:42
Yes of course it is, the same way you did the other tabs using Layout Editing Mode:

(https://i.imgur.com/bcVMjle.png)
Title: Re: foo_loudness_peakmeter
Post by: Avith on 2024-04-06 13:15:53
Yes of course it is, the same way you did the other tabs using Layout Editing Mode:

(https://i.imgur.com/bcVMjle.png)
I totally forgot about that, thanks!
Title: Re: foo_loudness_peakmeter
Post by: TF3RDL on 2024-04-16 18:31:58
I have created a new component...

Is it possible to add the old, good RMS meter (according to IEC 61606:1997 / AES17-1998 standard - so called RMS+3) on the upper bar next to Peak and TruePeak readout?
It would be great to have an option to display ONLY the upper bar and hide all the graphs.
Yeah, but I would like to see Peak/RMS bars as in foo_vis_spectrum_analyzer (https://hydrogenaud.io/index.php/topic,125031.msg1043038.html#new) new peakmeter mode that display all channel levels, expand the already existing bar visualization to show all momentary, short-term, and integrated LUFS bars and also add the Mid/Side representations (which I think it could be useful to let me know there are phase issues that make these mixes not mono compatible)

Of course, displaying graphs should be optional as you said and new bars visualization should able to co-exist with the amplitude vs. time graph like the old Peakmeter Spectrum component