41
3rd Party Plugins - (fb2k) / Re: foo_vis_milk2
Last post by oops -Issue 1:There is no code for Shpeck. And Oscilloscope (at least Holger's) does not appear to support Columns UI. So, let's not use those as examples.
This component suffers from the same issue (even worse) as the non-wrapped version of foo_vis_vumeter.
It doesn't listen/comply to the coordinates it has been told.
In the case of foo_vis_vumeter that only happens after returning from fullscreen.
1) Milkdrop opens up (before fullscreen) not using the correct height (xyw are correct).
2) After fullscreen x=0, y=0, h=full height ... all of those are wrong, w is correct but shifted because of wrong x. Only after resize/track change the situation under 1 (with wrong height) is restored.
Shpeck and Oscilloscope use the same unwrapped construction both use correct coordinates after returning from fullscreen.
Please fix the issue.
I believe I've fixed #2 in foo_vis_vumeter. #1 I haven't seen yet and don't even know how it would happen. The window creation is trivial, there is no style or owner/parent change. Are you sure it is an incorrect height or you're just running it at the minimum limit in that squished aspect ratio that is giving you the funky results? The "Scanning presets..." message looks correctly positioned and not distorted.
Issue 2:Unfortunately, this is very unlikely to happen. I started the attempt but decided not to proceed. A cursory glance of the original vis_milk2 library code will give a hint of how fundamental of a change is required to support multiple instances. Look at how g_plugin is used. This is just one of those Winamp legacy things. As to why it "works" in Schpeck, wild guess is that it launches one new full instance/process of Winamp.exe for each UI element.
I want to be able to define milkdrop in more than one place (actually I want 3 spots). And preferable be able to run those instances at the same time.
Is this on your todo list?
Also, if you want 3, you must have a really good machine and GPU because the library is not very optimized and eats more RAM and GPU cycles than I care to admit.
I consider this component feature-complete. There are 3 nagging issues that I would try to address time-permitting:
- Some memory that is not fully released on exit.
- The square that renders sometimes instead of the text.
- The right and bottom strobing effect on some presets.