It is currently October 14th, 2024, 8:59 pm

AudioLevel

Share and get help with Plugins and Addons
rxtd
Posts: 100
Joined: April 30th, 2017, 11:51 am

Re: AudioLevel

Post by rxtd »

What "Attack" and "Decay" options actually mean?
I created skin that shows peak, rms and fft (for one band at certain frequency) values in a Line meter.
I tested it with tone generator, using sin wave. Here is the picture that I got:
2018-11-20_08-59-40+.png
Cyan line is fft, yellow is rms, and green is peak.
All attack/decay options are set to 500, peak and rms gains are adjusted so that rms and peak match fft after all three are stabilized.
Skin updates every 17 ms, so 500 ms should roughly match 30 pixels of image. Red lines show two intervals of 30 pixels.

Since the sound produced by my computer can be described as "silence, sine wave, silence", all three studied values should be "zero, maximum, zero" (without filtering). If I set all attack/decay options to 1, I see exactly that.
What I expected to get:
• Lines for all values roughly match.
• Transition from zero to max and back is either linear or forms exponential growth.
• All transitions take 500 ms.
What I actually got (shown in the picture above):
• Lines have quite different values during the transition.
• Rms and peak grow exponentially (with different constants though), but fft is exponential in the attack time and is linear in the decay time.
• Attack time is roughly 500 ms, but decay time is not only longer than 500 ms, but also is different for rms, peak and fft.

Soooo. Is it normal? And if it is, then how do I interpret attack and decay time for this plugin?
I have already looked into source code of the plugin in the Rainmeter github, and I don't understand why there is a difference. Well, rms is filtered in square form, and then rooted, this can explain the difference between rms and peak. But why are peak and fft values differ? Why attack and decay times differ? Why is fft linear in the decay time?!

Code of my test skin:

Code: Select all

[Metadata]
Author=rxtd
Name=test
License=Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International

[Rainmeter]
AccurateText=1
Update=17

[Measure001_Parent]
Measure=Plugin
RMSAttack=500
RMSDecay=500
PeakAttack=500
PeakDecay=500
FFTAttack=500
FFTDecay=500
RMSGain=6.1
PeakGain=6.8
Bands=1
FreqMin=990
FreqMax=1010
FFTSize=4096
Plugin=AudioLevel

[Measure002_rms]
Measure=Plugin
Parent=Measure001_Parent
Channel=FL
Type=RMS
Plugin=AudioLevel

[Measure003_peak]
Measure=Plugin
Parent=Measure001_Parent
Channel=FL
Type=Peak
Plugin=AudioLevel

[Measure004_band]
Measure=Plugin
Parent=Measure001_Parent
Channel=FL
Type=Band
Plugin=AudioLevel

[Meter001_background]
Meter=Shape
UpdateDivider=-1
Shape=Rectangle 0.0,0.0,600.0,100.0,|Fill Color 100,100,100,255|StrokeWidth 0
Shape2=Rectangle 0.0,0.0,600.0,100.0,|Fill Color 255,255,255,180|StrokeWidth 0
Shape3=Combine Shape|Exclude Shape2
Shape4=Combine Shape2

[Meter000]
Meter=Line
AntiAlias=1
MeasureName=Measure002_rms
LineColor=255,255,0,255
LineCount=3
MeasureName2=Measure003_peak
LineColor2=0,255,0,255
MeasureName3=Measure004_band
LineColor3=0,255,255,255
SolidColor=0,0,0,255
X=0
Y=0
W=600
H=100

You do not have the required permissions to view the files attached to this post.
kidwao
Posts: 1
Joined: July 27th, 2019, 2:00 pm

Re: AudioLevel

Post by kidwao »

Hello!

I use VisBubble plugin with BarExtrude output which I like a lot but I am affraid to put it on the big screen (OLED TV) as I am affraid of burn in. The problem is not with the dynamically moving visulaisation bars, but the dots that are always there when the plugin is active. I tried to readjust the settings file with no avail.

If I set the HideWhenNotPlaying=0 value to 1 the whole visualisation dissapears even if the music is playing. This must be a glitch.
I am using Winamp.

Thanks for any advice on how to remove those dots when no music is playing
User avatar
balala
Rainmeter Sage
Posts: 16658
Joined: October 11th, 2010, 6:27 pm
Location: Gheorgheni, Romania

Re: AudioLevel

Post by balala »

kidwao wrote: July 27th, 2019, 2:08 pm I am affraid to put it on the big screen (OLED TV) as I am affraid of burn in. The problem is not with the dynamically moving visulaisation bars, but the dots that are always there when the plugin is active. I tried to readjust the settings file with no avail.
VisBubble is not a plugin, but a skin. You (probably) are talking about this one, right? Especially that this package indeed has a BarExtrude.ini skin.
If so (but even if not), don't be afraid, you can use it on a such TV, it doesn't burn in its screen. This doesn't threatening this modern devices.
But I'm not sure what dots are you talking about. I don't have such dots on my screen, nor when music is playing, nor when it's not. Could you post a screenshot, please?
kidwao wrote: July 27th, 2019, 2:08 pm If I set the HideWhenNotPlaying=0 value to 1 the whole visualisation dissapears even if the music is playing. This must be a glitch.
I am using Winamp.
Doesn't matter which player are you using, the visualizer skins work with any sound source.
And yes, I agree, if you set the HideWhenNotPlaying variable to 1, the skin is hidden even if the sound is playing, even if it's not. Not sure why, but will try to look through the code, to see what's going on.
User avatar
Axinoe
Posts: 14
Joined: April 27th, 2018, 10:52 pm

Re: AudioLevel

Post by Axinoe »

I think the actual issue here might be NowPlaying and Winamp. If I set NowPlaying to Winamp, it returns the state, title, artist, etc. but it never updates any of the information again, unless you refresh the skin. The skin might not be reappearing because NowPlaying isn't updating with new information.
User avatar
balala
Rainmeter Sage
Posts: 16658
Joined: October 11th, 2010, 6:27 pm
Location: Gheorgheni, Romania

Re: AudioLevel

Post by balala »

Axinoe wrote: July 29th, 2019, 6:56 pm I think the actual issue here might be NowPlaying and Winamp. If I set NowPlaying to Winamp, it returns the state, title, artist, etc. but it never updates any of the information again, unless you refresh the skin. The skin might not be reappearing because NowPlaying isn't updating with new information.
I doubt this. Winamp is a fully supported player and as such, it perfectly works with NowPlaying measures. Could you post the (complete) code of your not-updating skin, please?
User avatar
Axinoe
Posts: 14
Joined: April 27th, 2018, 10:52 pm

Re: AudioLevel

Post by Axinoe »

I tested it again just to be sure, and it's working just fine now...
If I have more than one media player open at once, does it mess with NowPlaying?
User avatar
balala
Rainmeter Sage
Posts: 16658
Joined: October 11th, 2010, 6:27 pm
Location: Gheorgheni, Romania

Re: AudioLevel

Post by balala »

Axinoe wrote: July 29th, 2019, 7:21 pm If I have more than one media player open at once, does it mess with NowPlaying?
I don't know, never tried. But I suppose it does.
User avatar
eclectic-tech
Rainmeter Sage
Posts: 5540
Joined: April 12th, 2012, 9:40 pm
Location: Cedar Point, Ohio, USA

Re: AudioLevel

Post by eclectic-tech »

balala wrote: July 29th, 2019, 7:38 pm I don't know, never tried. But I suppose it does.
Yes, it does mess things up if you try to run 2 NowPlaying skins at the same time. :D
User avatar
Mor3bane
Posts: 943
Joined: May 7th, 2016, 7:32 am

Re: AudioLevel

Post by Mor3bane »

Hi @dgrace
I am not sure if this has been suggested before - 33 pages is a lot to go through.
I was wondering if the idea to have the functionality to switch between speaker configs was ever going to be added to AudioLevel.

Now that it is a standard PlugIn for rainmeter, I was hoping to not have to reinvent the wheel so to speak. AudioLevel can see the config, but just to be able to choose between what is there and activate that config would be so awesome. Sort of how switching between devices has already been done.

It is holiday season so my timing may be off a bit, but thanks for reading if this reaches you
My DevArt Gallery

There are many ways to be different - there is only one way to be yourself - be amazing at it

The law of averages says what it means; even if you get everything right, you will get something wrong. Therefore; self managing error trapping initiates another set of averages - amongst the errors, some of them will not be errors, instead those instances will appear to be "luck". One cannot complain of the 'appearance' of 'infinite regress of causation', even if it does not have a predictable pattern, only that it requires luck to achieve.