audiovisualizer
audiovisualizer copied to clipboard
Unexpected VU levels - discrete VU bar does not display levels equal to 0db or greater
Hey there!
Thanks for this awesome repository. Been enjoying working with it and excited by the results.
One issue I'm running into is getting audio peaking to work correctly with the discrete VU bar. Without any modification, I'm unable to get it to display levels equal to or greater then 0.
I have a test audio file that has it's gain turned up so that it is consistently peaking. This is how it's levels are displayed by various pro audio software:
However, this is how it's levels appear when brought into the sample application from the Microsoft store:
Through experimentation, it seems that there is some kind of cut off that is preventing the meter from displaying levels greater then or equal to 0. This results in being unable to show that an audio source is peaking.
Is there something I'm missing? Basically hoping to create a bar that displays all values greater then or equal to 0db as Red so that a user may know that the audio file is peaking.
These are the levels I have assigned to my discrete VU bar:
MeterBarLevel[] newLevels = new MeterBarLevel[]
{
new MeterBarLevel() { Level = -60, Color = Colors.Lime },
new MeterBarLevel() { Level = -57, Color = Colors.Lime },
new MeterBarLevel() { Level = -54, Color = Colors.Lime },
new MeterBarLevel() { Level = -51, Color = Colors.Lime },
new MeterBarLevel() { Level = -48, Color = Colors.Lime },
new MeterBarLevel() { Level = -45, Color = Colors.Lime },
new MeterBarLevel() { Level = -42, Color = Colors.Lime },
new MeterBarLevel() { Level = -39, Color = Colors.Lime },
new MeterBarLevel() { Level = -36, Color = Colors.Lime },
new MeterBarLevel() { Level = -33, Color = Colors.Lime },
new MeterBarLevel() { Level = -30, Color = Colors.Lime },
new MeterBarLevel() { Level = -27, Color = Colors.Lime },
new MeterBarLevel() { Level = -24, Color = Colors.Lime },
new MeterBarLevel() { Level = -21, Color = Colors.Lime },
new MeterBarLevel() { Level = -18, Color = Colors.Lime },
new MeterBarLevel() { Level = -15, Color = Colors.Lime },
new MeterBarLevel() { Level = -12, Color = Colors.Lime },
new MeterBarLevel() { Level = -9, Color = Colors.Lime },
new MeterBarLevel() { Level = -6, Color = Colors.Yellow },
new MeterBarLevel() { Level = -3, Color = Colors.Yellow },
new MeterBarLevel() { Level = -0, Color = Colors.Red },
new MeterBarLevel() { Level = 3, Color = Colors.Red },
new MeterBarLevel() { Level = 6, Color = Colors.Red },
};
Yet this is how my VU bar looks with my constantly peaking audio file as the source:
As you can see, no value, equal to 0 or greater, is being displayed.
Thanks for any help you can provide!