Author Topic: VUMeter Plugin  (Read 50510 times)

BoringName

  • Sr. Member
  • ****
  • Posts: 916
New Version - VUMeter2.3.zip

Changes
- Fixed a bug that caused an error when selecting "Use Skin Defaults" when no skin was loaded.
- Fixed an issue where saved skin settings would not be effective until restarting Musicbee.
- Added a skinFolder field to the XML file. It will default to <skinFolder /> change this to something like <skinFolder>C:\Example\VUSkins</skinFolder>. Musicbee needs to be closed when editing this file. If the field is blank or references a non existent directory, it will default to the usual folder locations.

I don't really want to add a directory picker to the UI. Outside of skin creators, how many people actually use multiple players regularly?

sveakul

  • Hero Member
  • *****
  • Posts: 3262
A big THANKS for adding the ability to edit a skin folder location with the .xml file.  That's all I hoped for, NOT a GUI "directory picker"--actually I prefer doing a manual text edit for things like that.  I can now use one shared folder for  3 players' VU skins.

sveakul

  • Hero Member
  • *****
  • Posts: 3262
After some hours in use, I have to congratulate both BoringName and hiccup on version 2.2.2 of the plugin;  never saw such smooth and accurate meter movement both across the range of traditional AIMP skins using the stock settings and hiccup's new BIN+ini design with its customized settings.  Just superb;  your concepts and design brought this work to fruition in this version.

phred

  • Global Moderator
  • Hero Member
  • *****
  • Posts: 10266
Just superb;  your concepts and design brought this work to fruition in this version.
What he said!!!

The earliest mentions of VU Meters in the forum is from 2014. Ten years later - this past September - BoringName issued his first release. Hiccup and his technical skills jumped into action and today we have truly great plugin.

Thanks to BoringName and Hiccup for the time and effort. And to sveakul for additional testing and suggestions.
Download the latest MusicBee v3.6 patch from here.
Unzip into your MusicBee directory and overwrite existing files.

----------
The FAQ
The Wiki
Custom Forum Search
Posting screenshots is here

sveakul

  • Hero Member
  • *****
  • Posts: 3262
The KD85 BIN meter is designed to look like the below according to the PNG in its download:



While this meter works fine with VUMeter 2.3, the best layout I can get is:



Is there any way to accomodate the original orientation?  Foobar does so using "Left + Right (H)"

BoringName

  • Sr. Member
  • ****
  • Posts: 916
Is there any way to accomodate the original orientation?  Foobar does so using "Left + Right (H)"

New Version - VUMeter2.3.1.zip

Changes
- Fix for uncompressed Foobar skins stored in separate files to display the right meter.

You need to make sure with skins like this that you copy both bin files to the skin folder, in this example KD851 and KD852. KD851 is the left meter and KD852 is the right meter. Currently VUmeter checks if the filename ends in a "1" and if it does it looks for the same file ending with a "2" and loads them both. There was an issue where this check didn't occur when the skin was not compressed.

I think that may be the first foobar skin I've come across in the wild that was not compressed. When I was doing initial testing I had to export some samples from VUEditor.exe so I had some uncompressed meters to play with.

sveakul

  • Hero Member
  • *****
  • Posts: 3262
Thanks BoringName, didn't realize I had found a "red herring,"  just liked the meter's dual LED/needle display!  Thanks for the quick fix.

SoundMix

  • Newbie
  • *
  • Posts: 6
Just a huge thank you for this plugin! :-*

karbock

  • Sr. Member
  • ****
  • Posts: 549
Kudos to all the team involved in the development of the plugin and its skins!
That's an impressive work!

BoringName

  • Sr. Member
  • ****
  • Posts: 916
This one's a beauty, hiccup.
In layman's terms, what is the difference between this and your others that results in the long loading time? During which MB is non-responsive.
Thanks phred.
For as far as I understand the cause of the longer loading time, it is because this VU meter skin is using some rather complicated layers that contain a lot of transparency.
(I could be wrong about that being the cause, but I think I'm not)

Seems more appropriate to discuss the problem in this thread. The reason this skin takes a long time to load is it's huge. Most Bin files uncompressed are about 6mb-8mb. This one is 165mb. I thought it may have been due to the needle being quite large as it takes up a large part of the screen but the blink skin doesn't have the issue and that nearly replaces the entire window every frame.

I assume it must be due to the way you have implemented the needle changing colour as it moves? Did you need to use multiple needle images for that?

In any case, I should be able to fix the problem of the Musicbee UI locking up while it's loading a skin.

hiccup

  • Hero Member
  • *****
  • Posts: 9107
I assume it must be due to the way you have implemented the needle changing colour as it moves? Did you need to use multiple needle images for that?
Nope, it's not that.
In a way, there is no spoon needle.
Some mysteries probably should never be revealed, but you most certainly deserve a look behind the magic ;-)
I'll PM you some source images that I use for this VU meter skin. I'm sure they will clarify things.
Last Edit: November 17, 2024, 10:12:11 PM by hiccup

BoringName

  • Sr. Member
  • ****
  • Posts: 916
New version - VUMeter2.4.zip

Changes
- Removed the duplicate error message when an error occurs loading a skin.
- Loading foobar skins is now done in a separate thread so the Musicbee UI doesn't freeze if loading takes a while.
- Added text to the window to indicate when no skins are loaded or a foobar skin is in the process of loading.
- Foobar skins now use a separate shader which allowed me to optimise some of the foobar draw code. The alpha channel is set to zero for the bin file images and I was having to do stupid workarounds with the main shader I was using.

I should probably load all the different skin types in the separate thread but as they pretty much load instantly I'll save that for a later version.

phred

  • Global Moderator
  • Hero Member
  • *****
  • Posts: 10266
- Loading foobar skins is now done in a separate thread so the Musicbee UI doesn't freeze if loading takes a while.
- Added text to the window to indicate when no skins are loaded or a foobar skin is in the process of loading.
Well, it's nice that there's now a message stating that the skin is loading. But now the skin doesn't load at all. Testing with hiccup's DejaVU Compact LED - Fischer's Lovebird on 2.3, it loads in about seven seconds. With 2.4 I gave up after waiting thirty seconds. At that point trying to change to another skin doesn't work. They won't load. MB is still responsive, but the meter skins don't load.
Download the latest MusicBee v3.6 patch from here.
Unzip into your MusicBee directory and overwrite existing files.

----------
The FAQ
The Wiki
Custom Forum Search
Posting screenshots is here

BoringName

  • Sr. Member
  • ****
  • Posts: 916
Well, it's nice that there's now a message stating that the skin is loading. But now the skin doesn't load at all. Testing with hiccup's DejaVU Compact LED - Fischer's Lovebird on 2.3, it loads in about seven seconds. With 2.4 I gave up after waiting thirty seconds. At that point trying to change to another skin doesn't work. They won't load. MB is still responsive, but the meter skins don't load.

It has the same load times for me. But I did notice strange behaviour if you try and load another foobar skin while one is in the middle of loading. I'll sort that out.

Could it be your computer being strange again? Maybe it needs a restart.

Was Musicbee playing anything at the time? just to rule out any possible conflicts with other Musicbee functions, what happens if you select the lovebird skin then close musicbee and open it again.

sveakul

  • Hero Member
  • *****
  • Posts: 3262
Thanks for 2.4 and the Foobar meter draw optimizations!

The first time I tried to load DejaVu Lovebird LED (abbreviating!) after going to 2.4, which was the first load I attempted, it would not load.  After exiting MusicBee during the loading attempt and opening it, the meter came up normally on its own after its usual about 6 sec. load time.  After that, subsequent loading of the Lovebird skins after each other or changing to AIMP skins went normally with no freezing.