implement faster dB-based VUMeters and a tricolor main VUMeter #429
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Dear Pascal,
Please apply my current pull request. It implements faster dB-based solid-color VU meters for FM-operators and a tricolor stripe for the VU meter of the main output.
In addition, further improvements have been introduced:
The 0th element of this array shows all LEDs in dark color, the 1st element shows the leftmost LED in bright color, the 2nd element shows the two leftmost LEDs in bright color, and so on, until the last element, which contains all LEDs in bright.
VuMeter::paint()
method, there were previously two calls to thedrawImage()
method: the first one redrew the entire LED stripe in dark, and the second one redrew the leftmost LEDs in bright color. Now, there is a single call to thedrawImageAt()
method, which refers to the proper element of the array of images mentioned above, indexed by the dB-based scaling. (And, it is also hoped, the methoddrawImageAt()
is faster on its own than thedrawImage()
).log()
function.(Note, that I have tested the Standalone and VST3 plugin versions in MS Windows 10 OS (Intel i5-4460 CPU; MS Visual Studio 2022 Community) and the Standalone version in Raspbian OS bookworm 64-bit Linux (Broadcom BCM2711 CPU, Rasberry Pi4B), i.e. in Little Endian systems only.)